changeset 174:384b3a0c9cd7

Add OpenGL/Derelict support to Linux DWT
author John Reimer<terminal.node@gmail.com>
date Sat, 01 Mar 2008 11:53:07 -0800
parents dc54a7de268d
children a481ab32da3d
files dwt/dwthelper/Loader.d dwt/internal/c/gl.d dwt/internal/c/glx.d dwt/internal/gtk/runtime/Loader.d dwt/internal/opengl/glx/GLX.d dwt/opengl/GLCanvas.d dwt/opengl/GLData.d
diffstat 7 files changed, 1242 insertions(+), 4951 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dwt/dwthelper/Loader.d	Sat Mar 01 11:53:07 2008 -0800
@@ -0,0 +1,324 @@
+/*****************************************************************************
+
+    license:
+
+    version:
+
+             Dynamic loader for gtk symbol names
+
+    History: 2004-12-11 initial version by John Reimer
+             2005-02-21 class and symbol names change; versioning modification
+             2005-05-05 linux fixes
+             2007-12-23 source cleanup
+             2007-12-30 merge Paths.d into Loader.d
+             2008-01-05 Tango only version using tango.sys.SharedLib
+
+    Note:   Design inspired by Kris Bell's ICU.d, the dynamic loader from
+            an early version of mango
+
+******************************************************************************/
+
+module dwt.dwthelper.Loader;
+
+private import  tango.io.Stdout,
+                tango.sys.SharedLib;
+                
+/*****************************************************************************
+
+*****************************************************************************/
+
+enum LIBRARY
+{
+    ATK,
+    CAIRO,
+    GDK,
+    GDKPIXBUF,
+    GLIB,
+    GMODULE,
+    GOBJECT,
+    GTHREAD,
+    GTK,
+    PANGO,
+    GLGDK,
+    GLGTK,
+    GL,
+    GLU,
+    GLEXT,
+    GDA,
+    GLADE,
+    GSV,
+    GSTREAMER,
+    GSTINTERFACES
+}
+
+/*****************************************************************************
+
+*****************************************************************************/
+
+version (Windows)
+{
+    const char[][LIBRARY.max+1] importLibs = [
+        LIBRARY.ATK:            "libatk-1.0-0.dll",
+        LIBRARY.CAIRO:          "libcairo-2.dll",
+        LIBRARY.GDK:            "libgdk-win32-2.0-0.dll",
+        LIBRARY.GDKPIXBUF:      "libgdk_pixbuf-2.0-0.dll",
+        LIBRARY.GLIB:           "libglib-2.0-0.dll",
+        LIBRARY.GMODULE:        "libgmodule-2.0-0.dll",
+        LIBRARY.GOBJECT:        "libgobject-2.0-0.dll",
+        LIBRARY.GTHREAD:        "libgthread-2.0-0.dll",
+        LIBRARY.GTK:            "libgtk-win32-2.0-0.dll",
+        LIBRARY.PANGO:          "libpango-1.0-0.dll",
+        LIBRARY.GLGDK:          "libgdkglext-win32-1.0-0.dll",
+        LIBRARY.GLGTK:          "libgtkglext-win32-1.0-0.dll",
+        LIBRARY.GL:             "opengl32.dll",
+        LIBRARY.GLU:            "glu32.dll",
+        LIBRARY.GDA:            "libgda-2.dll",
+        LIBRARY.GLADE:          "libglade-2.0.dll",
+        LIBRARY.GSV:            "libgtksourceview-1.0-0.dll",
+        LIBRARY.GSTREAMER:      "libgstreamer-0.10.dll",
+        LIBRARY.GSTINTERFACES:  "libgstinterfaces-0.10.dll"
+    ];
+}
+
+/*****************************************************************************
+
+*****************************************************************************/
+
+version(linux)
+{
+    const char[][LIBRARY.max+1] importLibs = [
+        LIBRARY.ATK:            "libatk-1.0.so",
+        LIBRARY.CAIRO:          "libcairo.so.2",
+        LIBRARY.GDK:            "libgdk-x11-2.0.so",
+        LIBRARY.GDKPIXBUF:      "libgdk_pixbuf-2.0.so",
+        LIBRARY.GLIB:           "libglib-2.0.so",
+        LIBRARY.GMODULE:        "libgmodule-2.0.so",
+        LIBRARY.GOBJECT:        "libgobject-2.0.so",
+        LIBRARY.GTHREAD:        "libgthread-2.0.so",
+        LIBRARY.GTK:            "libgtk-x11-2.0.so",
+        LIBRARY.PANGO:          "libpango-1.0.so",
+        LIBRARY.GLGDK:          "libgdkglext-x11-1.0.so",
+        LIBRARY.GLGTK:          "libgtkglext-x11-1.0.so",
+        LIBRARY.GL:             "libGL.so",
+        LIBRARY.GLU:            "libGLU.so",
+        LIBRARY.GLEXT:          "libGL.so",
+        LIBRARY.GDA:            "libgda-2.so.3",
+        LIBRARY.GLADE:          "libglade-2.0.so",
+        LIBRARY.GSV:            "libgtksourceview-1.0.so",
+        LIBRARY.GSTREAMER:      "libgstreamer-0.10.so",
+        LIBRARY.GSTINTERFACES:  "libgstinterfaces-0.10.so"
+    ];
+}
+
+/*****************************************************************************
+
+    getLibraryPath -- place holder for future expansion
+
+******************************************************************************/
+
+
+version(Windows)
+{
+    char[] getLibraryPath()
+    {
+            return "\\Program Files\\GTK2-Runtime\\lib\\";
+    }
+}
+
+/*****************************************************************************
+
+    getLibraryPath is empty for linux because default path is known by ld
+
+******************************************************************************/
+
+version(linux)
+{
+    char[] getLibraryPath() { return ""; }
+}
+
+/*****************************************************************************
+
+    ProcLink is used to record the library, function, and function name
+    that will be loaded by the dynamic loader.
+
+******************************************************************************/
+
+public struct Symbol
+{
+    char[]  name;
+    void**  pointer;
+}
+
+/*****************************************************************************
+
+    The Linker class: handles loading of the library and exported functions
+
+******************************************************************************/
+
+public class Linker
+{
+    static char[][][char[]] loadFailures;
+
+    /*************************************************************************
+
+        Gets all the failed loads for a specific library.  This is filled in
+        only if the default onFailure method is used during load.
+
+        returns: an array of the names that failed to load for a specific
+        library or null if none was found.
+
+    **************************************************************************/
+
+    public static char[][] getLoadFailures(char[] libName)
+    {
+        if ( libName in loadFailures )
+        {
+            return loadFailures[libName];
+        }
+        else
+        {
+            return null;
+        }
+    }
+
+    /*************************************************************************
+
+        Loads all libraries. This is filled in only if the default onFailure
+        method is used during load.
+
+        returns: an array of the library names.
+
+    **************************************************************************/
+
+    public static char[][] getLoadLibraries()
+    {
+        return loadFailures.keys;
+    }
+
+    /*************************************************************************
+
+        isPerfectLoad -- Checks if any symbol failed to load.
+        Returns: true if ALL symbols loaded.
+
+    **************************************************************************/
+
+    public static bool isPerfectLoad()
+    {
+        return loadFailures.keys.length == 0;
+    }
+
+    /*************************************************************************
+
+    **************************************************************************/
+
+    public static void dumpFailedLoads()
+    {
+        foreach ( char[] lib ; Linker.getLoadLibraries() )
+        {
+            foreach ( char[] symbol ; Linker.getLoadFailures(lib) )
+            {
+                version(Tango)
+                    Stdout.formatln("failed ({}) {}", lib, symbol).newline;
+            }
+        }
+    }
+
+    /*************************************************************************
+
+    **************************************************************************/
+
+    private SharedLib primaryLib;
+    private SharedLib alternateLib;
+
+    private char[]  libraryName;
+    private char[]  alternateLibraryName;
+
+    alias void function( char[] libraryName, char[] symbolName, char[] message=null) FailureCallback;
+
+    private FailureCallback onLoadFailure;
+
+    /*************************************************************************
+
+    **************************************************************************/
+
+    this( char[] libraryName, char[] alternateLibraryName=null )
+    {
+        this(libraryName, alternateLibraryName, &(Linker.defaultFail));
+    }
+
+    /*************************************************************************
+
+    **************************************************************************/
+
+    this (char[] libraryName, char[] alternateLibraryName, FailureCallback fn )
+    {
+        this.libraryName = libraryName;
+        this.alternateLibraryName = alternateLibraryName;
+        onLoadFailure = fn;
+
+        SharedLib.throwExceptions = false;
+
+        primaryLib = SharedLib.load( this.libraryName );
+        
+        version(linux)
+        {
+            if (this.primaryLib is null)
+                primaryLib = SharedLib.load( this.libraryName ~ ".0\0" );
+        }
+            
+        if ( alternateLibraryName !is null )
+        {
+            alternateLib = SharedLib.load( this.alternateLibraryName );
+        }
+        
+        if (primaryLib is null)
+        {
+            throw new Exception("Library load failed: " ~ libraryName);
+        }
+    }
+
+    /*************************************************************************
+
+        Default load failure callback. Logs the symbols that failed to load.
+
+    **************************************************************************/
+
+    static void defaultFail( char[] libraryName, char[] symbolName, char[] message=null )
+    {
+        if ( !(libraryName in loadFailures) )
+        {
+            char[][] cc;
+            loadFailures[libraryName] = cc;
+        }
+
+        loadFailures[libraryName] ~= symbolName.dup;
+    }
+
+    /*************************************************************************
+
+        Loads all the symbols for this library.
+
+    **************************************************************************/
+
+    void link( inout Symbol[] symbols )
+    {
+        foreach( Symbol link; symbols )
+        {
+            *link.pointer = primaryLib.getSymbol ( (link.name~"\0").ptr);
+
+            if (*link.pointer is null)
+            {
+                if ( alternateLib !is null )
+                {
+                    *link.pointer = alternateLib.getSymbol( (link.name~"\0").ptr);
+                    Stdout("Loader.Linker.link trying alternate lib: ", link.name).newline;
+                }
+                if (*link.pointer is null)
+                {
+                    onLoadFailure( libraryName, link.name );
+                }
+            }
+        }
+    }
+
+}
--- a/dwt/internal/c/gl.d	Sat Feb 23 18:40:21 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4428 +0,0 @@
-/******************************************************************************
-    Based on the generated files from the BCD tool
-    modified by: Frank Benoit <keinfarbton@googlemail.com>
-******************************************************************************/
-module dwt.internal.c.gl;
-
-extern(C):
-align(4):
-
-
-const double GL_422_AVERAGE_EXT = 0x80CE;
-const double GL_ACTIVE_TEXTURE = 0x84E0;
-const double GL_ACTIVE_TEXTURE_ARB = 0x84E0;
-const double GL_ALIASED_LINE_WIDTH_RANGE = 0x846E;
-const double GL_ALPHA16 = 0x803E;
-const double GL_ALPHA16_EXT = 0x803E;
-const double GL_ASYNC_READ_PIXELS_SGIX = 0x835E;
-const double GL_BGR = 0x80E0;
-const double GL_BGRA = 0x80E1;
-const double GL_BGRA_EXT = 0x80E1;
-const double GL_BGR_EXT = 0x80E0;
-const double GL_BIASED_RGB5_A1_MTX = 0x89BE;
-const double GL_BLEND = 0x0BE2;
-const double GL_BLEND_DST = 0x0BE0;
-const double GL_BLEND_SRC = 0x0BE1;
-const double GL_CLIENT_ACTIVE_TEXTURE = 0x84E1;
-const double GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1;
-const double GL_COLOR_INDEX12_EXT = 0x80E6;
-const double GL_COLOR_INDEX16_EXT = 0x80E7;
-const double GL_COLOR_INDEX1_EXT = 0x80E2;
-const double GL_COLOR_INDEX2_EXT = 0x80E3;
-const double GL_COLOR_INDEX4_EXT = 0x80E4;
-const double GL_COLOR_INDEX8_EXT = 0x80E5;
-const double GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE;
-const double GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80DE;
-const double GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE;
-const double GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E;
-const double GL_COMPRESSED_ALPHA = 0x84E9;
-const double GL_COMPRESSED_ALPHA_ARB = 0x84E9;
-const double GL_COMPRESSED_INTENSITY = 0x84EC;
-const double GL_COMPRESSED_INTENSITY_ARB = 0x84EC;
-const double GL_COMPRESSED_LUMINANCE = 0x84EA;
-const double GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB;
-const double GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB;
-const double GL_COMPRESSED_LUMINANCE_ARB = 0x84EA;
-const double GL_COMPRESSED_RGB = 0x84ED;
-const double GL_COMPRESSED_RGBA = 0x84EE;
-const double GL_COMPRESSED_RGBA_ARB = 0x84EE;
-const double GL_COMPRESSED_RGB_ARB = 0x84ED;
-const double GL_CURRENT_VERTEX_EXT = 0x87E2;
-const double GL_DECR = 0x1E03;
-const double GL_DEPTH_SCALE = 0x0D1E;
-const double GL_DOT3_RGB = 0x86ae;
-const double GL_DOT3_RGB_ARB = 0x86AE;
-const double GL_EMBOSS_CONSTANT_NV = 0x855E;
-const double GL_FRAGMENT_LIGHT2_SGIX = 0x840E;
-const double GL_FULL_RANGE_EXT = 0x87E1;
-const double GL_INCR = 0x1E02;
-const double GL_INVARIANT_DATATYPE_EXT = 0x87EB;
-const double GL_INVARIANT_VALUE_EXT = 0x87EA;
-const double GL_IUI_V3F_EXT = 0x81AE;
-const double GL_KEEP = 0x1E00;
-const double GL_LIGHT14 = 0x400E;
-const double GL_LIGHT30 = 0x401E;
-const double GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE;
-const double GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED;
-const double GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC;
-const double GL_MATRIX14_ARB = 0x88CE;
-const double GL_MATRIX30_ARB = 0x88DE;
-const double GL_MAX_ELEMENTS_INDICES = 0x80E9;
-const double GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9;
-const double GL_MAX_ELEMENTS_VERTICES = 0x80E8;
-const double GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8;
-const double GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE;
-const double GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E;
-const double GL_MAX_TEXTURE_UNITS = 0x84E2;
-const double GL_MAX_TEXTURE_UNITS_ARB = 0x84E2;
-const double GL_MINMAX = 0x802E;
-const double GL_MINMAX_EXT = 0x802E;
-const double GL_MODELVIEW14_ARB = 0x872E;
-const double GL_MODELVIEW30_ARB = 0x873E;
-const double GL_MVP_MATRIX_EXT = 0x87E3;
-const double GL_NAND = 0x150E;
-const double GL_NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E;
-const double GL_NORMAL_ARRAY_TYPE = 0x807E;
-const double GL_NORMAL_ARRAY_TYPE_EXT = 0x807E;
-const double GL_NORMALIZED_RANGE_EXT = 0x87E0;
-const double GL_NUM_GENERAL_COMBINERS_NV = 0x854e;
-const double GL_ONE_EXT = 0x87DE;
-const double GL_OP_CLAMP_EXT = 0x878E;
-const double GL_OPERAND6_ALPHA_ARB = 0x859E;
-const double GL_OPERAND6_ALPHA_EXT = 0x859E;
-const double GL_OP_TEX_NOP_MTX = 0x8A8E;
-const double GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE;
-const double GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E;
-const double GL_PACK_CMYK_HINT_EXT = 0x800E;
-const double GL_PERTURB_EXT = 0x85AE;
-const double GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E;
-const double GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E;
-const double GL_POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E;
-const double GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE;
-const double GL_QUAD_ALPHA4_SGIS = 0x811E;
-const double GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E;
-const double GL_REPLACE = 0x1E01;
-const double GL_RESAMPLE_REPLICATE_SGIX = 0x842E;
-const double GL_RGB2_EXT = 0x804E;
-const double GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E;
-const double GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E;
-const double GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E;
-const double GL_SCALAR_EXT = 0x87BE;
-const double GL_SCALE_BY_TWO_NV = 0x853e;
-const double GL_SCALE_X8_MTX = 0x8ACE;
-const double GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E;
-const double GL_SHADOW_ATTENUATION_EXT = 0x834E;
-const double GL_SIGNED_UV_UNSIGNED_Q_MTX = 0x89AE;
-const double GL_SOURCE6_ALPHA_ARB = 0x858E;
-const double GL_SOURCE6_ALPHA_EXT = 0x858E;
-const double GL_SPARE0_NV = 0x852e;
-const double GL_SPRITE_EYE_ALIGNED_SGIX = 0x814E;
-const double GL_SUBTRACT = 0x84E7;
-const double GL_SUBTRACT_ARB = 0x84E7;
-const double GL_TANGENT_ARRAY_TYPE_EXT = 0x843E;
-const double GL_TEXBEM_MATRIX_MTX = 0x8A9E;
-const double GL_TEXTURE0_SGIS = 0x835E;
-const double GL_TEXTURE14 = 0x84CE;
-const double GL_TEXTURE14_ARB = 0x84CE;
-const double GL_TEXTURE_1D = 0x0DE0;
-const double GL_TEXTURE_2D = 0x0DE1;
-const double GL_TEXTURE30 = 0x84DE;
-const double GL_TEXTURE30_ARB = 0x84DE;
-const double GL_TEXTURE_BLUE_SIZE = 0x805E;
-const double GL_TEXTURE_BLUE_SIZE_EXT = 0x805E;
-const double GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF;
-const double GL_TEXTURE_COMPRESSION_HINT = 0x84EF;
-const double GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF;
-const double GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE;
-const double GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED;
-const double GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E;
-const double GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
-const double GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E;
-const double GL_TRANSPOSE_COLOR_MATRIX = 0x84E6;
-const double GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6;
-const double GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3;
-const double GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3;
-const double GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4;
-const double GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4;
-const double GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5;
-const double GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5;
-const double GL_UNPACK_IMAGE_HEIGHT = 0x806E;
-const double GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E;
-const double GL_VARIANT_ARRAY_EXT = 0x87E8;
-const double GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9;
-const double GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6;
-const double GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7;
-const double GL_VARIANT_DATATYPE_EXT = 0x87E5;
-const double GL_VARIANT_VALUE_EXT = 0x87E4;
-const double GL_VERTEX_ARRAY_POINTER = 0x808E;
-const double GL_VERTEX_ARRAY_POINTER_EXT = 0x808E;
-const double GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E;
-const double GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF;
-const double GL_VERTEX_PRECLIP_SGIX = 0x83EE;
-const double GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E;
-const int GL_1PASS_EXT = 0x80A1;
-const int GL_1PASS_SGIS = 0x80A1;
-const int GL_2_BYTES = 0x1407;
-const int GL_2D = 0x0600;
-const int GL_2PASS_0_EXT = 0x80A2;
-const int GL_2PASS_0_SGIS = 0x80A2;
-const int GL_2PASS_1_EXT = 0x80A3;
-const int GL_2PASS_1_SGIS = 0x80A3;
-const int GL_3_BYTES = 0x1408;
-const int GL_3D = 0x0601;
-const int GL_3D_COLOR = 0x0602;
-const int GL_3D_COLOR_TEXTURE = 0x0603;
-const int GL_422_EXT = 0x80CC;
-const int GL_422_REV_AVERAGE_EXT = 0x80CF;
-const int GL_422_REV_EXT = 0x80CD;
-const int GL_4_BYTES = 0x1409;
-const int GL_4D_COLOR_TEXTURE = 0x0604;
-const int GL_4PASS_0_EXT = 0x80A4;
-const int GL_4PASS_0_SGIS = 0x80A4;
-const int GL_4PASS_1_EXT = 0x80A5;
-const int GL_4PASS_1_SGIS = 0x80A5;
-const int GL_4PASS_2_EXT = 0x80A6;
-const int GL_4PASS_2_SGIS = 0x80A6;
-const int GL_4PASS_3_EXT = 0x80A7;
-const int GL_4PASS_3_SGIS = 0x80A7;
-const int GL_ABGR_EXT = 0x8000;
-const int GL_ACCUM = 0x0100;
-const int GL_ACCUM_ALPHA_BITS = 0x0D5B;
-const int GL_ACCUM_BLUE_BITS = 0x0D5A;
-const int GL_ACCUM_BUFFER_BIT = 0x00000200;
-const int GL_ACCUM_CLEAR_VALUE = 0x0B80;
-const int GL_ACCUM_GREEN_BITS = 0x0D59;
-const int GL_ACCUM_RED_BITS = 0x0D58;
-const int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5;
-const int GL_ADD = 0x0104;
-const int GL_ADD_SIGNED = 0x8574;
-const int GL_ADD_SIGNED_ARB = 0x8574;
-const int GL_ADD_SIGNED_EXT = 0x8574;
-const int GL_ALIASED_POINT_SIZE_RANGE = 0x846D;
-const int GL_ALL_ATTRIB_BITS = 0x000fffff;
-const int GL_ALL_CLIENT_ATTRIB_BITS = 0xFFFFFFFF;
-const int GL_ALPHA = 0x1906;
-const int GL_ALPHA12 = 0x803D;
-const int GL_ALPHA12_EXT = 0x803D;
-const int GL_ALPHA4 = 0x803B;
-const int GL_ALPHA4_EXT = 0x803B;
-const int GL_ALPHA8 = 0x803C;
-const int GL_ALPHA8_EXT = 0x803C;
-const int GL_ALPHA_BIAS = 0x0D1D;
-const int GL_ALPHA_BITS = 0x0D55;
-const int GL_ALPHA_MAX_SGIX = 0x8321;
-const int GL_ALPHA_MIN_SGIX = 0x8320;
-const int GL_ALPHA_MTX = 0x8ABD;
-const int GL_ALPHA_SCALE = 0x0D1C;
-const int GL_ALPHA_TEST = 0x0BC0;
-const int GL_ALPHA_TEST_FUNC = 0x0BC1;
-const int GL_ALPHA_TEST_REF = 0x0BC2;
-const int GL_ALWAYS = 0x0207;
-const int GL_AMBIENT = 0x1200;
-const int GL_AMBIENT_AND_DIFFUSE = 0x1602;
-const int GL_AND = 0x1501;
-const int GL_AND_INVERTED = 0x1504;
-const int GL_AND_REVERSE = 0x1502;
-const int GL_ARG_BIAS_MTX = 0x8AB6;
-const int GL_ARG_BIAS_NEGATE_MTX = 0x8AB7;
-const int GL_ARG_INVERT_MTX = 0x8AB4;
-const int GL_ARG_NEGATE_MTX = 0x8AB5;
-const int GL_ARG_SIGNED_MTX = 0x8AB8;
-const int GL_ARG_SIGNED_NEGATE_MTX = 0x8AB9;
-const int GL_ARGUMENT0_MTX = 0x8AC4;
-const int GL_ARGUMENT1_MTX = 0x8AC5;
-const int GL_ARGUMENT2_MTX = 0x8AC6;
-const int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9;
-const int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8;
-const int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766;
-const int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767;
-const int GL_ASYNC_DRAW_PIXELS_SGIX = 0x835D;
-const int GL_ASYNC_HISTOGRAM_SGIX = 0x832C;
-const int GL_ASYNC_MARKER_SGIX = 0x8329;
-const int GL_ASYNC_TEX_IMAGE_SGIX = 0x835C;
-const int GL_ATTENUATION_EXT = 0x834D;
-const int GL_ATTRIB_STACK_DEPTH = 0x0BB0;
-const int GL_AUTO_NORMAL = 0x0D80;
-const int GL_AUX0 = 0x0409;
-const int GL_AUX1 = 0x040A;
-const int GL_AUX2 = 0x040B;
-const int GL_AUX3 = 0x040C;
-const int GL_AUX_BUFFERS = 0x0C00;
-const int GL_AVERAGE_EXT = 0x8335;
-const int GL_BACK = 0x0405;
-const int GL_BACK_LEFT = 0x0402;
-const int GL_BACK_RIGHT = 0x0403;
-const int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541;
-const int GL_BIASED_ALPHA8_MTX = 0x89C2;
-const int GL_BIASED_ALPHA_MTX = 0x89B5;
-const int GL_BIASED_BYTE_MTX = 0x89A8;
-const int GL_BIASED_LUMINANCE8_ALPHA8_MTX = 0x89C1;
-const int GL_BIASED_LUMINANCE8_MTX = 0x89C0;
-const int GL_BIASED_LUMINANCE_ALPHA_MTX = 0x89B6;
-const int GL_BIASED_LUMINANCE_MTX = 0x89B4;
-const int GL_BIASED_RGB10_A2_MTX = 0x89BB;
-const int GL_BIASED_RGB5_MTX = 0x89BA;
-const int GL_BIASED_RGB8_MTX = 0x89B9;
-const int GL_BIASED_RGBA4_MTX = 0x89BF;
-const int GL_BIASED_RGBA8_MTX = 0x89B8;
-const int GL_BIASED_RGBA_MTX = 0x89B2;
-const int GL_BIASED_RGB_MTX = 0x89B3;
-const int GL_BIASED_SHORT_MTX = 0x89A9;
-const int GL_BIASED_UV16_MTX = 0x89BD;
-const int GL_BIASED_UV8_MTX = 0x89BC;
-const int GL_BIASED_UV_MTX = 0x89B7;
-const int GL_BINORMAL_ARRAY_EXT = 0x843A;
-const int GL_BINORMAL_ARRAY_POINTER_EXT = 0x8443;
-const int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441;
-const int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440;
-const int GL_BITMAP = 0x1A00;
-const int GL_BITMAP_TOKEN = 0x0704;
-const int GL_BLEND_COLOR = 0x8005;
-const int GL_BLEND_COLOR_EXT = 0x8005;
-const int GL_BLEND_DST_ALPHA = 0x80CA;
-const int GL_BLEND_DST_ALPHA_EXT = 0x80CA;
-const int GL_BLEND_DST_RGB = 0x80C8;
-const int GL_BLEND_DST_RGB_EXT = 0x80C8;
-const int GL_BLEND_EQUATION = 0x8009;
-const int GL_BLEND_EQUATION_EXT = 0x8009;
-const int GL_BLEND_SRC_ALPHA = 0x80CB;
-const int GL_BLEND_SRC_ALPHA_EXT = 0x80CB;
-const int GL_BLEND_SRC_RGB = 0x80C9;
-const int GL_BLEND_SRC_RGB_EXT = 0x80C9;
-const int GL_BLUE = 0x1905;
-const int GL_BLUE_BIAS = 0x0D1B;
-const int GL_BLUE_BITS = 0x0D54;
-const int GL_BLUE_MTX = 0x8ABC;
-const int GL_BLUE_SCALE = 0x0D1A;
-const int GL_BYTE = 0x1400;
-const int GL_C3F_V3F = 0x2A24;
-const int GL_C4F_N3F_V3F = 0x2A26;
-const int GL_C4UB_V2F = 0x2A22;
-const int GL_C4UB_V3F = 0x2A23;
-const int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183;
-const int GL_CCW = 0x0901;
-const int GL_CLAMP = 0x2900;
-const int GL_CLAMP_TO_BORDER = 0x812D;
-const int GL_CLAMP_TO_BORDER_ARB = 0x812D;
-const int GL_CLAMP_TO_EDGE = 0x812F;
-const int GL_CLAMP_TO_EDGE_SGIS = 0x812F;
-const int GL_CLEAR = 0x1500;
-const int GL_CLIENT_ALL_ATTRIB_BITS = 0xFFFFFFFF;
-const int GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1;
-const int GL_CLIENT_PIXEL_STORE_BIT = 0x00000001;
-const int GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002;
-const int GL_CLIP_PLANE0 = 0x3000;
-const int GL_CLIP_PLANE10 = 0x300A;
-const int GL_CLIP_PLANE1 = 0x3001;
-const int GL_CLIP_PLANE11 = 0x300B;
-const int GL_CLIP_PLANE2 = 0x3002;
-const int GL_CLIP_PLANE3 = 0x3003;
-const int GL_CLIP_PLANE4 = 0x3004;
-const int GL_CLIP_PLANE5 = 0x3005;
-const int GL_CLIP_PLANE6 = 0x3006;
-const int GL_CLIP_PLANE7 = 0x3007;
-const int GL_CLIP_PLANE8 = 0x3008;
-const int GL_CLIP_PLANE9 = 0x3009;
-const int GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0;
-const int GL_CMYKA_EXT = 0x800D;
-const int GL_CMYK_EXT = 0x800C;
-const int GL_COEFF = 0x0A00;
-const int GL_COLOR0_MTX = 0x0B00;
-const int GL_COLOR = 0x1800;
-const int GL_COLOR1_MTX = 0x8459;
-const int GL_COLOR_ARRAY = 0x8076;
-const int GL_COLOR_ARRAY_COUNT_EXT = 0x8084;
-const int GL_COLOR_ARRAY_EXT = 0x8076;
-const int GL_COLOR_ARRAY_POINTER = 0x8090;
-const int GL_COLOR_ARRAY_POINTER_EXT = 0x8090;
-const int GL_COLOR_ARRAY_SIZE = 0x8081;
-const int GL_COLOR_ARRAY_SIZE_EXT = 0x8081;
-const int GL_COLOR_ARRAY_STRIDE = 0x8083;
-const int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083;
-const int GL_COLOR_ARRAY_TYPE = 0x8082;
-const int GL_COLOR_ARRAY_TYPE_EXT = 0x8082;
-const int GL_COLOR_BUFFER_BIT = 0x00004000;
-const int GL_COLOR_CLEAR_VALUE = 0x0C22;
-const int GL_COLOR_INDEX = 0x1900;
-const int GL_COLOR_INDEXES = 0x1603;
-const int GL_COLOR_LOGIC_OP = 0x0BF2;
-const int GL_COLOR_MATERIAL = 0x0B57;
-const int GL_COLOR_MATERIAL_FACE = 0x0B55;
-const int GL_COLOR_MATERIAL_PARAMETER = 0x0B56;
-const int GL_COLOR_MATRIX = 0x80B1;
-const int GL_COLOR_MATRIX_SGI = 0x80B1;
-const int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2;
-const int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2;
-const int GL_COLOR_SUM_ARB = 0x8458;
-const int GL_COLOR_SUM_CLAMP_NV = 0x854f;
-const int GL_COLOR_SUM_EXT = 0x8458;
-const int GL_COLOR_TABLE = 0x80D0;
-const int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD;
-const int GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80DD;
-const int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD;
-const int GL_COLOR_TABLE_BIAS = 0x80D7;
-const int GL_COLOR_TABLE_BIAS_SGI = 0x80D7;
-const int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC;
-const int GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80DC;
-const int GL_COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC;
-const int GL_COLOR_TABLE_FORMAT = 0x80D8;
-const int GL_COLOR_TABLE_FORMAT_EXT = 0x80D8;
-const int GL_COLOR_TABLE_FORMAT_SGI = 0x80D8;
-const int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB;
-const int GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80DB;
-const int GL_COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB;
-const int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF;
-const int GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80DF;
-const int GL_COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF;
-const int GL_COLOR_TABLE_RED_SIZE = 0x80DA;
-const int GL_COLOR_TABLE_RED_SIZE_EXT = 0x80DA;
-const int GL_COLOR_TABLE_RED_SIZE_SGI = 0x80DA;
-const int GL_COLOR_TABLE_SCALE = 0x80D6;
-const int GL_COLOR_TABLE_SCALE_SGI = 0x80D6;
-const int GL_COLOR_TABLE_SGI = 0x80D0;
-const int GL_COLOR_TABLE_WIDTH = 0x80D9;
-const int GL_COLOR_TABLE_WIDTH_EXT = 0x80D9;
-const int GL_COLOR_TABLE_WIDTH_SGI = 0x80D9;
-const int GL_COLOR_WRITEMASK = 0x0C23;
-const int GL_COMBINE = 0x8570;
-const int GL_COMBINE4_NV = 0x8503;
-const int GL_COMBINE_ALPHA = 0x8572;
-const int GL_COMBINE_ALPHA_ARB = 0x8572;
-const int GL_COMBINE_ALPHA_EXT = 0x8572;
-const int GL_COMBINE_ARB = 0x8570;
-const int GL_COMBINE_EXT = 0x8570;
-const int GL_COMBINER0_NV = 0x8550;
-const int GL_COMBINER1_NV = 0x8551;
-const int GL_COMBINER2_NV = 0x8552;
-const int GL_COMBINER3_NV = 0x8553;
-const int GL_COMBINER4_NV = 0x8554;
-const int GL_COMBINER5_NV = 0x8555;
-const int GL_COMBINER6_NV = 0x8556;
-const int GL_COMBINER7_NV = 0x8557;
-const int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545;
-const int GL_COMBINER_AB_OUTPUT_NV = 0x854a;
-const int GL_COMBINER_BIAS_NV = 0x8549;
-const int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546;
-const int GL_COMBINER_CD_OUTPUT_NV = 0x854b;
-const int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544;
-const int GL_COMBINE_RGB = 0x8571;
-const int GL_COMBINE_RGB_ARB = 0x8571;
-const int GL_COMBINE_RGB_EXT = 0x8571;
-const int GL_COMBINER_INPUT_NV = 0x8542;
-const int GL_COMBINER_MAPPING_NV = 0x8543;
-const int GL_COMBINER_MUX_SUM_NV = 0x8547;
-const int GL_COMBINER_SCALE_NV = 0x8548;
-const int GL_COMBINER_SUM_OUTPUT_NV = 0x854c;
-const int GL_COMPILE = 0x1300;
-const int GL_COMPILE_AND_EXECUTE = 0x1301;
-const int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1;
-const int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2;
-const int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3;
-const int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0;
-const int GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3;
-const int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3;
-const int GL_CONSTANT = 0x8576;
-const int GL_CONSTANT_ALPHA = 0x8003;
-const int GL_CONSTANT_ALPHA_EXT = 0x8003;
-const int GL_CONSTANT_ARB = 0x8576;
-const int GL_CONSTANT_ATTENUATION = 0x1207;
-const int GL_CONSTANT_BORDER = 0x8151;
-const int GL_CONSTANT_COLOR0_NV = 0x852a;
-const int GL_CONSTANT_COLOR = 0x8001;
-const int GL_CONSTANT_COLOR1_NV = 0x852b;
-const int GL_CONSTANT_COLOR_EXT = 0x8001;
-const int GL_CONSTANT_EXT = 0x8576;
-const int GL_CONVERT_MTX = 0x8ACA;
-const int GL_CONVOLUTION_1D = 0x8010;
-const int GL_CONVOLUTION_1D_EXT = 0x8010;
-const int GL_CONVOLUTION_2D = 0x8011;
-const int GL_CONVOLUTION_2D_EXT = 0x8011;
-const int GL_CONVOLUTION_BORDER_COLOR = 0x8154;
-const int GL_CONVOLUTION_BORDER_MODE = 0x8013;
-const int GL_CONVOLUTION_BORDER_MODE_EXT = 0x8013;
-const int GL_CONVOLUTION_FILTER_BIAS = 0x8015;
-const int GL_CONVOLUTION_FILTER_BIAS_EXT = 0x8015;
-const int GL_CONVOLUTION_FILTER_SCALE = 0x8014;
-const int GL_CONVOLUTION_FILTER_SCALE_EXT = 0x8014;
-const int GL_CONVOLUTION_FORMAT = 0x8017;
-const int GL_CONVOLUTION_FORMAT_EXT = 0x8017;
-const int GL_CONVOLUTION_HEIGHT = 0x8019;
-const int GL_CONVOLUTION_HEIGHT_EXT = 0x8019;
-const int GL_CONVOLUTION_HINT_SGIX = 0x8316;
-const int GL_CONVOLUTION_WIDTH = 0x8018;
-const int GL_CONVOLUTION_WIDTH_EXT = 0x8018;
-const int GL_COPY = 0x1503;
-const int GL_COPY_INVERTED = 0x150C;
-const int GL_COPY_PIXEL_TOKEN = 0x0706;
-const int GL_CUBIC_EXT = 0x8334;
-const int GL_CULL_FACE = 0x0B44;
-const int GL_CULL_FACE_MODE = 0x0B45;
-const int GL_CULL_VERTEX_EXT = 0x81AA;
-const int GL_CULL_VERTEX_EYE_POSITION_EXT = 0x81AB;
-const int GL_CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC;
-const int GL_CURRENT_BINORMAL_EXT = 0x843C;
-const int GL_CURRENT_BIT = 0x00000001;
-const int GL_CURRENT_COLOR = 0x0B00;
-const int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453;
-const int GL_CURRENT_INDEX = 0x0B01;
-const int GL_CURRENT_MATRIX_ARB = 0x8641;
-const int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845;
-const int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640;
-const int GL_CURRENT_NORMAL = 0x0B02;
-const int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843;
-const int GL_CURRENT_RASTER_COLOR = 0x0B04;
-const int GL_CURRENT_RASTER_DISTANCE = 0x0B09;
-const int GL_CURRENT_RASTER_INDEX = 0x0B05;
-const int GL_CURRENT_RASTER_NORMAL_SGIX = 0x8406;
-const int GL_CURRENT_RASTER_POSITION = 0x0B07;
-const int GL_CURRENT_RASTER_POSITION_VALID = 0x0B08;
-const int GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06;
-const int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459;
-const int GL_CURRENT_TANGENT_EXT = 0x843B;
-const int GL_CURRENT_TEXTURE_COORDS = 0x0B03;
-const int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626;
-const int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B;
-const int GL_CURRENT_WEIGHT_ARB = 0x86A8;
-const int GL_CW = 0x0900;
-const int GL_DECAL = 0x2101;
-const int GL_DECR_WRAP_EXT = 0x8508;
-const int GL_DEFORMATIONS_MASK_SGIX = 0x8196;
-const int GL_DEPTH = 0x1801;
-const int GL_DEPTH_BIAS = 0x0D1F;
-const int GL_DEPTH_BITS = 0x0D56;
-const int GL_DEPTH_BUFFER_BIT = 0x00000100;
-const int GL_DEPTH_CLEAR_VALUE = 0x0B73;
-const int GL_DEPTH_COMPONENT = 0x1902;
-const int GL_DEPTH_COMPONENT16_ARB = 0x81A5;
-const int GL_DEPTH_COMPONENT16_SGIX = 0x81A5;
-const int GL_DEPTH_COMPONENT24_ARB = 0x81A6;
-const int GL_DEPTH_COMPONENT24_SGIX = 0x81A6;
-const int GL_DEPTH_COMPONENT32_ARB = 0x81A7;
-const int GL_DEPTH_COMPONENT32_SGIX = 0x81A7;
-const int GL_DEPTH_FUNC = 0x0B74;
-const int GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX = 0x8311;
-const int GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX = 0x8312;
-const int GL_DEPTH_PASS_INSTRUMENT_SGIX = 0x8310;
-const int GL_DEPTH_RANGE = 0x0B70;
-const int GL_DEPTH_TEST = 0x0B71;
-const int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B;
-const int GL_DEPTH_WRITEMASK = 0x0B72;
-const int GL_DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096;
-const int GL_DETAIL_TEXTURE_2D_SGIS = 0x8095;
-const int GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = 0x809C;
-const int GL_DETAIL_TEXTURE_LEVEL_SGIS = 0x809A;
-const int GL_DETAIL_TEXTURE_MODE_SGIS = 0x809B;
-const int GL_DIFFUSE = 0x1201;
-const int GL_DISCARD_ATI = 0x8763;
-const int GL_DISCARD_NV = 0x8530;
-const int GL_DISTANCE_ATTENUATION_SGIS = 0x8129;
-const int GL_DITHER = 0x0BD0;
-const int GL_DOMAIN = 0x0A02;
-const int GL_DONT_CARE = 0x1100;
-const int GL_DOT3_RGBA = 0x86af;
-const int GL_DOT3_RGBA_ARB = 0x86AF;
-const int GL_DOT3_RGBA_EXT = 0x8741;
-const int GL_DOT3_RGB_EXT = 0x8740;
-const int GL_DOUBLE = 0x140A;
-const int GL_DOUBLEBUFFER = 0x0C32;
-const int GL_DRAW_BUFFER = 0x0C01;
-const int GL_DRAW_PIXEL_TOKEN = 0x0705;
-const int GL_DST_ALPHA = 0x0304;
-const int GL_DST_COLOR = 0x0306;
-const int GL_DUAL_ALPHA12_SGIS = 0x8112;
-const int GL_DUAL_ALPHA16_SGIS = 0x8113;
-const int GL_DUAL_ALPHA4_SGIS = 0x8110;
-const int GL_DUAL_ALPHA8_SGIS = 0x8111;
-const int GL_DUAL_INTENSITY12_SGIS = 0x811A;
-const int GL_DUAL_INTENSITY16_SGIS = 0x811B;
-const int GL_DUAL_INTENSITY4_SGIS = 0x8118;
-const int GL_DUAL_INTENSITY8_SGIS = 0x8119;
-const int GL_DUAL_LUMINANCE12_SGIS = 0x8116;
-const int GL_DUAL_LUMINANCE16_SGIS = 0x8117;
-const int GL_DUAL_LUMINANCE4_SGIS = 0x8114;
-const int GL_DUAL_LUMINANCE8_SGIS = 0x8115;
-const int GL_DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C;
-const int GL_DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D;
-const int GL_DUAL_TEXTURE_SELECT_SGIS = 0x8124;
-const int GL_DYNAMIC_ATI = 0x8761;
-const int GL_EDGE_FLAG = 0x0B43;
-const int GL_EDGE_FLAG_ARRAY = 0x8079;
-const int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D;
-const int GL_EDGE_FLAG_ARRAY_EXT = 0x8079;
-const int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093;
-const int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093;
-const int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C;
-const int GL_ELEMENT_ARRAY_ATI = 0x8768;
-const int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A;
-const int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769;
-const int GL_EMBOSS_LIGHT_NV = 0x855D;
-const int GL_EMBOSS_MAP_NV = 0x855F;
-const int GL_EMISSION = 0x1600;
-const int GL_ENABLE_BIT = 0x00002000;
-const int GL_EQUAL = 0x0202;
-const int GL_EQUIV = 0x1509;
-const int GL_E_TIMES_F_NV = 0x8531;
-const int GL_EVAL_BIT = 0x00010000;
-const int GL_EXP = 0x0800;
-const int GL_EXP2 = 0x0801;
-const int GL_EXPAND_NEGATE_NV = 0x8539;
-const int GL_EXPAND_NORMAL_NV = 0x8538;
-const int GL_EXT_abgr = 1;
-const int GL_EXT_ARB_imaging = 1;
-const int GL_EXT_bgra = 1;
-const int GL_EXT_compiled_vertex_array = 1;
-const int GL_EXT_cull_vertex = 1;
-const int GL_EXTENSIONS = 0x1F03;
-const int GL_EXT_packed_pixels = 1;
-const int GL_EXT_paletted_texture = 1;
-const int GL_EXT_vertex_array = 1;
-const int GL_EYE_DISTANCE_TO_LINE_SGIS = 0x81F2;
-const int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0;
-const int GL_EYE_LINEAR = 0x2400;
-const int GL_EYE_LINE_SGIS = 0x81F6;
-const int GL_EYE_PLANE = 0x2502;
-const int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C;
-const int GL_EYE_POINT_SGIS = 0x81F4;
-const int GL_EYE_RADIAL_NV = 0x855B;
-const int GL_FALSE = 0x0;
-const int GL_FASTEST = 0x1101;
-const int GL_FEEDBACK = 0x1C01;
-const int GL_FEEDBACK_BUFFER_POINTER = 0x0DF0;
-const int GL_FEEDBACK_BUFFER_SIZE = 0x0DF1;
-const int GL_FEEDBACK_BUFFER_TYPE = 0x0DF2;
-const int GL_FILL = 0x1B02;
-const int GL_FILTER4_SGIS = 0x8146;
-const int GL_FLAT = 0x1D00;
-const int GL_FLOAT = 0x1406;
-const int GL_FOG = 0x0B60;
-const int GL_FOG_BIT = 0x00000080;
-const int GL_FOG_COLOR = 0x0B66;
-const int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457;
-const int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456;
-const int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455;
-const int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454;
-const int GL_FOG_COORDINATE_EXT = 0x8451;
-const int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450;
-const int GL_FOG_DENSITY = 0x0B62;
-const int GL_FOG_DISTANCE_MODE_NV = 0x855A;
-const int GL_FOG_END = 0x0B64;
-const int GL_FOG_FUNC_POINTS_SGIS = 0x812B;
-const int GL_FOG_FUNC_SGIS = 0x812A;
-const int GL_FOG_HINT = 0x0C54;
-const int GL_FOG_INDEX = 0x0B61;
-const int GL_FOG_MODE = 0x0B65;
-const int GL_FOG_OFFSET_SGIX = 0x8198;
-const int GL_FOG_OFFSET_VALUE_SGIX = 0x8199;
-const int GL_FOG_SCALE_SGIX = 0x81FC;
-const int GL_FOG_SCALE_VALUE_SGIX = 0x81FD;
-const int GL_FOG_START = 0x0B63;
-const int GL_FP_COLORS_MTX = 0x8A8D;
-const int GL_FP_OPS_MTX = 0x8A8B;
-const int GL_FP_TEXTURES_MTX = 0x8A8C;
-const int GL_FRAGMENT_COLOR_EXT = 0x834C;
-const int GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = 0x8402;
-const int GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = 0x8403;
-const int GL_FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401;
-const int GL_FRAGMENT_DEPTH_EXT = 0x8452;
-const int GL_FRAGMENT_LIGHT0_SGIX = 0x840C;
-const int GL_FRAGMENT_LIGHT1_SGIX = 0x840D;
-const int GL_FRAGMENT_LIGHT3_SGIX = 0x840F;
-const int GL_FRAGMENT_LIGHT4_SGIX = 0x8410;
-const int GL_FRAGMENT_LIGHT5_SGIX = 0x8411;
-const int GL_FRAGMENT_LIGHT6_SGIX = 0x8412;
-const int GL_FRAGMENT_LIGHT7_SGIX = 0x8413;
-const int GL_FRAGMENT_LIGHTING_SGIX = 0x8400;
-const int GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = 0x840A;
-const int GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = 0x8408;
-const int GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = 0x840B;
-const int GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = 0x8409;
-const int GL_FRAGMENT_MATERIAL_EXT = 0x8349;
-const int GL_FRAGMENT_NORMAL_EXT = 0x834A;
-const int GL_FRAGMENT_SHADER_BINDING_MTX = 0x8A81;
-const int GL_FRAGMENT_SHADER_MTX = 0x8A80;
-const int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C;
-const int GL_FRAMEZOOM_SGIX = 0x818B;
-const int GL_FRONT = 0x0404;
-const int GL_FRONT_AND_BACK = 0x0408;
-const int GL_FRONT_FACE = 0x0B46;
-const int GL_FRONT_LEFT = 0x0400;
-const int GL_FRONT_RIGHT = 0x0401;
-const int GL_FUNC_ADD = 0x8006;
-const int GL_FUNC_ADD_EXT = 0x8006;
-const int GL_FUNC_REVERSE_SUBTRACT = 0x800B;
-const int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B;
-const int GL_FUNC_SUBTRACT = 0x800A;
-const int GL_FUNC_SUBTRACT_EXT = 0x800A;
-const int GL_GENERATE_MIPMAP_HINT_SGIS = 0x8192;
-const int GL_GENERATE_MIPMAP_SGIS = 0x8191;
-const int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002;
-const int GL_GEOMETRY_DEFORMATION_SGIX = 0x8194;
-const int GL_GEQUAL = 0x0206;
-const int GL_GREATER = 0x0204;
-const int GL_GREEN = 0x1904;
-const int GL_GREEN_BIAS = 0x0D19;
-const int GL_GREEN_BITS = 0x0D53;
-const int GL_GREEN_MTX = 0x8ABB;
-const int GL_GREEN_SCALE = 0x0D18;
-const int GL_HALF_BIAS_NEGATE_NV = 0x853b;
-const int GL_HALF_BIAS_NORMAL_NV = 0x853a;
-const int GL_HINT_ANISOTROPIC_MTX = 0x0008;
-const int GL_HINT_BILINEAR_MTX = 0x0002;
-const int GL_HINT_BIT = 0x00008000;
-const int GL_HINT_NEAREST_MTX = 0x0001;
-const int GL_HINT_TEXTURE_1D_MTX = 0x0010;
-const int GL_HINT_TEXTURE_2D_MTX = 0x0020;
-const int GL_HINT_TEXTURE_3D_MTX = 0x0040;
-const int GL_HINT_TEXTURE_BEML_MTX = 0x0100;
-const int GL_HINT_TEXTURE_BEM_MTX = 0x0200;
-const int GL_HINT_TEXTURE_CUBE_MTX = 0x0080;
-const int GL_HINT_TRILINEAR_MTX = 0x0004;
-const int GL_HISTOGRAM = 0x8024;
-const int GL_HISTOGRAM_ALPHA_SIZE = 0x802B;
-const int GL_HISTOGRAM_ALPHA_SIZE_EXT = 0x802B;
-const int GL_HISTOGRAM_BLUE_SIZE = 0x802A;
-const int GL_HISTOGRAM_BLUE_SIZE_EXT = 0x802A;
-const int GL_HISTOGRAM_EXT = 0x8024;
-const int GL_HISTOGRAM_FORMAT = 0x8027;
-const int GL_HISTOGRAM_FORMAT_EXT = 0x8027;
-const int GL_HISTOGRAM_GREEN_SIZE = 0x8029;
-const int GL_HISTOGRAM_GREEN_SIZE_EXT = 0x8029;
-const int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C;
-const int GL_HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C;
-const int GL_HISTOGRAM_RED_SIZE = 0x8028;
-const int GL_HISTOGRAM_RED_SIZE_EXT = 0x8028;
-const int GL_HISTOGRAM_SINK = 0x802D;
-const int GL_HISTOGRAM_SINK_EXT = 0x802D;
-const int GL_HISTOGRAM_WIDTH = 0x8026;
-const int GL_HISTOGRAM_WIDTH_EXT = 0x8026;
-const int GL_IGNORED_MTX = 0x8AB2;
-const int GL_INCR_WRAP_EXT = 0x8507;
-const int GL_INDEX_ARRAY = 0x8077;
-const int GL_INDEX_ARRAY_COUNT_EXT = 0x8087;
-const int GL_INDEX_ARRAY_EXT = 0x8077;
-const int GL_INDEX_ARRAY_POINTER = 0x8091;
-const int GL_INDEX_ARRAY_POINTER_EXT = 0x8091;
-const int GL_INDEX_ARRAY_STRIDE = 0x8086;
-const int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086;
-const int GL_INDEX_ARRAY_TYPE = 0x8085;
-const int GL_INDEX_ARRAY_TYPE_EXT = 0x8085;
-const int GL_INDEX_BITS = 0x0D51;
-const int GL_INDEX_CLEAR_VALUE = 0x0C20;
-const int GL_INDEX_LOGIC_OP = 0x0BF1;
-const int GL_INDEX_MATERIAL_EXT = 0x81B8;
-const int GL_INDEX_MATERIAL_FACE_EXT = 0x81BA;
-const int GL_INDEX_MATERIAL_PARAMETER_EXT = 0x81B9;
-const int GL_INDEX_MODE = 0x0C30;
-const int GL_INDEX_OFFSET = 0x0D13;
-const int GL_INDEX_SHIFT = 0x0D12;
-const int GL_INDEX_TEST_EXT = 0x81B5;
-const int GL_INDEX_TEST_FUNC_EXT = 0x81B6;
-const int GL_INDEX_TEST_REF_EXT = 0x81B7;
-const int GL_INDEX_WRITEMASK = 0x0C21;
-const int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180;
-const int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181;
-const int GL_INT = 0x1404;
-const int GL_INTENSITY = 0x8049;
-const int GL_INTENSITY12 = 0x804C;
-const int GL_INTENSITY12_EXT = 0x804C;
-const int GL_INTENSITY16 = 0x804D;
-const int GL_INTENSITY16_EXT = 0x804D;
-const int GL_INTENSITY4 = 0x804A;
-const int GL_INTENSITY4_EXT = 0x804A;
-const int GL_INTENSITY8 = 0x804B;
-const int GL_INTENSITY8_EXT = 0x804B;
-const int GL_INTENSITY_EXT = 0x8049;
-const int GL_INTERLACE_SGIX = 0x8094;
-const int GL_INTERPOLATE = 0x8575;
-const int GL_INTERPOLATE_ARB = 0x8575;
-const int GL_INTERPOLATE_EXT = 0x8575;
-const int GL_INVALID_ENUM = 0x0500;
-const int GL_INVALID_OPERATION = 0x0502;
-const int GL_INVALID_VALUE = 0x0501;
-const int GL_INVARIANT_EXT = 0x87C2;
-const int GL_INVERT = 0x150A;
-const int GL_INVERTED_SCREEN_W_REND = 0x8491;
-const int GL_IR_INSTRUMENT1_SGIX = 0x817F;
-const int GL_IUI_N3F_V2F_EXT = 0x81AF;
-const int GL_IUI_N3F_V3F_EXT = 0x81B0;
-const int GL_IUI_V2F_EXT = 0x81AD;
-const int GL_KTX_BACK_REGION = 1;
-const int GL_KTX_FRONT_REGION = 0;
-const int GL_KTX_STENCIL_REGION = 3;
-const int GL_KTX_Z_REGION = 2;
-const int GL_LEFT = 0x0406;
-const int GL_LEQUAL = 0x0203;
-const int GL_LESS = 0x0201;
-const int GL_LIGHT0 = 0x4000;
-const int GL_LIGHT10 = 0x400A;
-const int GL_LIGHT1 = 0x4001;
-const int GL_LIGHT11 = 0x400B;
-const int GL_LIGHT12 = 0x400C;
-const int GL_LIGHT13 = 0x400D;
-const int GL_LIGHT15 = 0x400F;
-const int GL_LIGHT16 = 0x4010;
-const int GL_LIGHT17 = 0x4011;
-const int GL_LIGHT18 = 0x4012;
-const int GL_LIGHT19 = 0x4013;
-const int GL_LIGHT20 = 0x4014;
-const int GL_LIGHT2 = 0x4002;
-const int GL_LIGHT21 = 0x4015;
-const int GL_LIGHT22 = 0x4016;
-const int GL_LIGHT23 = 0x4017;
-const int GL_LIGHT24 = 0x4018;
-const int GL_LIGHT25 = 0x4019;
-const int GL_LIGHT26 = 0x401A;
-const int GL_LIGHT27 = 0x401B;
-const int GL_LIGHT28 = 0x401C;
-const int GL_LIGHT29 = 0x401D;
-const int GL_LIGHT3 = 0x4003;
-const int GL_LIGHT31 = 0x401F;
-const int GL_LIGHT4 = 0x4004;
-const int GL_LIGHT5 = 0x4005;
-const int GL_LIGHT6 = 0x4006;
-const int GL_LIGHT7 = 0x4007;
-const int GL_LIGHT8 = 0x4008;
-const int GL_LIGHT9 = 0x4009;
-const int GL_LIGHT_ENV_MODE_SGIX = 0x8407;
-const int GL_LIGHTING = 0x0B50;
-const int GL_LIGHTING_BIT = 0x00000040;
-const int GL_LIGHT_MODEL_AMBIENT = 0x0B53;
-const int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8;
-const int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8;
-const int GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51;
-const int GL_LIGHT_MODEL_TWO_SIDE = 0x0B52;
-const int GL_LINE = 0x1B01;
-const int GL_LINEAR = 0x2601;
-const int GL_LINEAR_ATTENUATION = 0x1208;
-const int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170;
-const int GL_LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F;
-const int GL_LINEAR_DETAIL_ALPHA_SGIS = 0x8098;
-const int GL_LINEAR_DETAIL_COLOR_SGIS = 0x8099;
-const int GL_LINEAR_DETAIL_SGIS = 0x8097;
-const int GL_LINEAR_MIPMAP_LINEAR = 0x2703;
-const int GL_LINEAR_MIPMAP_NEAREST = 0x2701;
-const int GL_LINEAR_SHARPEN_COLOR_SGIS = 0x80AF;
-const int GL_LINEAR_SHARPEN_SGIS = 0x80AD;
-const int GL_LINE_BIT = 0x00000004;
-const int GL_LINE_LOOP = 0x0002;
-const int GL_LINE_RESET_TOKEN = 0x0707;
-const int GL_LINES = 0x0001;
-const int GL_LINE_SMOOTH = 0x0B20;
-const int GL_LINE_SMOOTH_HINT = 0x0C52;
-const int GL_LINE_STIPPLE = 0x0B24;
-const int GL_LINE_STIPPLE_PATTERN = 0x0B25;
-const int GL_LINE_STIPPLE_REPEAT = 0x0B26;
-const int GL_LINE_STRIP = 0x0003;
-const int GL_LINE_TOKEN = 0x0702;
-const int GL_LINE_WIDTH = 0x0B21;
-const int GL_LINE_WIDTH_GRANULARITY = 0x0B23;
-const int GL_LINE_WIDTH_RANGE = 0x0B22;
-const int GL_LIST_BASE = 0x0B32;
-const int GL_LIST_BIT = 0x00020000;
-const int GL_LIST_INDEX = 0x0B33;
-const int GL_LIST_MODE = 0x0B30;
-const int GL_LIST_PRIORITY_SGIX = 0x8182;
-const int GL_LOAD = 0x0101;
-const int GL_LOCAL_CONSTANT_EXT = 0x87C3;
-const int GL_LOCAL_EXT = 0x87C4;
-const int GL_LOGIC_OP_MODE = 0x0BF0;
-const int GL_LUMINANCE = 0x1909;
-const int GL_LUMINANCE12 = 0x8041;
-const int GL_LUMINANCE12_ALPHA12 = 0x8047;
-const int GL_LUMINANCE12_ALPHA12_EXT = 0x8047;
-const int GL_LUMINANCE12_ALPHA4 = 0x8046;
-const int GL_LUMINANCE12_ALPHA4_EXT = 0x8046;
-const int GL_LUMINANCE12_EXT = 0x8041;
-const int GL_LUMINANCE16 = 0x8042;
-const int GL_LUMINANCE16_ALPHA16 = 0x8048;
-const int GL_LUMINANCE16_ALPHA16_EXT = 0x8048;
-const int GL_LUMINANCE16_EXT = 0x8042;
-const int GL_LUMINANCE4 = 0x803F;
-const int GL_LUMINANCE4_ALPHA4 = 0x8043;
-const int GL_LUMINANCE4_ALPHA4_EXT = 0x8043;
-const int GL_LUMINANCE4_EXT = 0x803F;
-const int GL_LUMINANCE6_ALPHA2 = 0x8044;
-const int GL_LUMINANCE6_ALPHA2_EXT = 0x8044;
-const int GL_LUMINANCE8 = 0x8040;
-const int GL_LUMINANCE8_ALPHA8 = 0x8045;
-const int GL_LUMINANCE8_ALPHA8_EXT = 0x8045;
-const int GL_LUMINANCE8_EXT = 0x8040;
-const int GL_LUMINANCE_ALPHA = 0x190A;
-const int GL_MAP1_BINORMAL_EXT = 0x8446;
-const int GL_MAP1_COLOR_4 = 0x0D90;
-const int GL_MAP1_GRID_DOMAIN = 0x0DD0;
-const int GL_MAP1_GRID_SEGMENTS = 0x0DD1;
-const int GL_MAP1_INDEX = 0x0D91;
-const int GL_MAP1_NORMAL = 0x0D92;
-const int GL_MAP1_TANGENT_EXT = 0x8444;
-const int GL_MAP1_TEXTURE_COORD_1 = 0x0D93;
-const int GL_MAP1_TEXTURE_COORD_2 = 0x0D94;
-const int GL_MAP1_TEXTURE_COORD_3 = 0x0D95;
-const int GL_MAP1_TEXTURE_COORD_4 = 0x0D96;
-const int GL_MAP1_VERTEX_3 = 0x0D97;
-const int GL_MAP1_VERTEX_4 = 0x0D98;
-const int GL_MAP2_BINORMAL_EXT = 0x8447;
-const int GL_MAP2_COLOR_4 = 0x0DB0;
-const int GL_MAP2_GRID_DOMAIN = 0x0DD2;
-const int GL_MAP2_GRID_SEGMENTS = 0x0DD3;
-const int GL_MAP2_INDEX = 0x0DB1;
-const int GL_MAP2_NORMAL = 0x0DB2;
-const int GL_MAP2_TANGENT_EXT = 0x8445;
-const int GL_MAP2_TEXTURE_COORD_1 = 0x0DB3;
-const int GL_MAP2_TEXTURE_COORD_2 = 0x0DB4;
-const int GL_MAP2_TEXTURE_COORD_3 = 0x0DB5;
-const int GL_MAP2_TEXTURE_COORD_4 = 0x0DB6;
-const int GL_MAP2_VERTEX_3 = 0x0DB7;
-const int GL_MAP2_VERTEX_4 = 0x0DB8;
-const int GL_MAP_COLOR = 0x0D10;
-const int GL_MAP_STENCIL = 0x0D11;
-const int GL_MATRIX0_ARB = 0x88C0;
-const int GL_MATRIX10_ARB = 0x88CA;
-const int GL_MATRIX11_ARB = 0x88CB;
-const int GL_MATRIX12_ARB = 0x88CC;
-const int GL_MATRIX13_ARB = 0x88CD;
-const int GL_MATRIX15_ARB = 0x88CF;
-const int GL_MATRIX16_ARB = 0x88D0;
-const int GL_MATRIX17_ARB = 0x88D1;
-const int GL_MATRIX18_ARB = 0x88D2;
-const int GL_MATRIX19_ARB = 0x88D3;
-const int GL_MATRIX1_ARB = 0x88C1;
-const int GL_MATRIX20_ARB = 0x88D4;
-const int GL_MATRIX21_ARB = 0x88D5;
-const int GL_MATRIX22_ARB = 0x88D6;
-const int GL_MATRIX23_ARB = 0x88D7;
-const int GL_MATRIX24_ARB = 0x88D8;
-const int GL_MATRIX25_ARB = 0x88D9;
-const int GL_MATRIX26_ARB = 0x88DA;
-const int GL_MATRIX27_ARB = 0x88DB;
-const int GL_MATRIX28_ARB = 0x88DC;
-const int GL_MATRIX29_ARB = 0x88DD;
-const int GL_MATRIX2_ARB = 0x88C2;
-const int GL_MATRIX31_ARB = 0x88DF;
-const int GL_MATRIX3_ARB = 0x88C3;
-const int GL_MATRIX4_ARB = 0x88C4;
-const int GL_MATRIX5_ARB = 0x88C5;
-const int GL_MATRIX6_ARB = 0x88C6;
-const int GL_MATRIX7_ARB = 0x88C7;
-const int GL_MATRIX8_ARB = 0x88C8;
-const int GL_MATRIX9_ARB = 0x88C9;
-const int GL_MATRIX_EXT = 0x87C0;
-const int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844;
-const int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849;
-const int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846;
-const int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848;
-const int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847;
-const int GL_MATRIX_MODE = 0x0BA0;
-const int GL_MATRIX_PALETTE_ARB = 0x8840;
-const int GL_MAX = 0x8008;
-const int GL_MAX_3D_TEXTURE_SIZE = 0x8073;
-const int GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073;
-const int GL_MAX_4D_TEXTURE_SIZE_SGIS = 0x8138;
-const int GL_MAX_ACTIVE_LIGHTS_SGIX = 0x8405;
-const int GL_MAX_ASYNC_DRAW_PIXELS_SGIX = 0x8360;
-const int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D;
-const int GL_MAX_ASYNC_READ_PIXELS_SGIX = 0x8361;
-const int GL_MAX_ASYNC_TEX_IMAGE_SGIX = 0x835F;
-const int GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35;
-const int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B;
-const int GL_MAX_CLIPMAP_DEPTH_SGIX = 0x8177;
-const int GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178;
-const int GL_MAX_CLIP_PLANES = 0x0D32;
-const int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3;
-const int GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3;
-const int GL_MAX_CONVOLUTION_HEIGHT = 0x801B;
-const int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B;
-const int GL_MAX_CONVOLUTION_WIDTH = 0x801A;
-const int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A;
-const int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C;
-const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C;
-const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C;
-const int GL_MAX_DEFORMATION_ORDER_SGIX = 0x8197;
-const int GL_MAX_EVAL_ORDER = 0x0D30;
-const int GL_MAX_EXT = 0x8008;
-const int GL_MAX_FOG_FUNC_POINTS_SGIS = 0x812C;
-const int GL_MAX_FP_COLORS_MTX = 0x8A87;
-const int GL_MAX_FP_OPS_MTX = 0x8A85;
-const int GL_MAX_FP_TEXTURES_MTX = 0x8A86;
-const int GL_MAX_FRAGMENT_LIGHTS_SGIX = 0x8404;
-const int GL_MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D;
-const int GL_MAX_GENERAL_COMBINERS_NV = 0x854d;
-const int GL_MAX_LIGHTS = 0x0D31;
-const int GL_MAX_LIST_NESTING = 0x0B31;
-const int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841;
-const int GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36;
-const int GL_MAX_NAME_STACK_DEPTH = 0x0D37;
-const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA;
-const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD;
-const int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC;
-const int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB;
-const int GL_MAX_PALETTE_MATRICES_ARB = 0x8842;
-const int GL_MAX_PIXEL_MAP_TABLE = 0x0D34;
-const int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337;
-const int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1;
-const int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD;
-const int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5;
-const int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1;
-const int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4;
-const int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F;
-const int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3;
-const int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF;
-const int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3;
-const int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB;
-const int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7;
-const int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9;
-const int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5;
-const int GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38;
-const int GL_MAX_SHININESS_NV = 0x8504;
-const int GL_MAX_SPOT_EXPONENT_NV = 0x8505;
-const int GL_MAX_TA_OPS_MTX = 0x8A82;
-const int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD;
-const int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF;
-const int GL_MAX_TEXTURE_SIZE = 0x0D33;
-const int GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39;
-const int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520;
-const int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869;
-const int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5;
-const int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7;
-const int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8;
-const int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9;
-const int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6;
-const int GL_MAX_VERTEX_UNITS_ARB = 0x86A4;
-const int GL_MAX_VIEWPORT_DIMS = 0x0D3A;
-const int GL_MIN = 0x8007;
-const int GL_MIN_EXT = 0x8007;
-const int GL_MINMAX_FORMAT = 0x802F;
-const int GL_MINMAX_FORMAT_EXT = 0x802F;
-const int GL_MINMAX_SINK = 0x8030;
-const int GL_MINMAX_SINK_EXT = 0x8030;
-const int GL_MIRRORED_REPEAT_ARB = 0x8370;
-const int GL_MODELVIEW0_ARB = 0x1700;
-const int GL_MODELVIEW0_EXT = 0x1700;
-const int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6;
-const int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3;
-const int GL_MODELVIEW = 0x1700;
-const int GL_MODELVIEW10_ARB = 0x872A;
-const int GL_MODELVIEW11_ARB = 0x872B;
-const int GL_MODELVIEW12_ARB = 0x872C;
-const int GL_MODELVIEW13_ARB = 0x872D;
-const int GL_MODELVIEW15_ARB = 0x872F;
-const int GL_MODELVIEW16_ARB = 0x8730;
-const int GL_MODELVIEW17_ARB = 0x8731;
-const int GL_MODELVIEW18_ARB = 0x8732;
-const int GL_MODELVIEW19_ARB = 0x8733;
-const int GL_MODELVIEW1_ARB = 0x850A;
-const int GL_MODELVIEW1_EXT = 0x850A;
-const int GL_MODELVIEW1_MATRIX_EXT = 0x8506;
-const int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502;
-const int GL_MODELVIEW20_ARB = 0x8734;
-const int GL_MODELVIEW21_ARB = 0x8735;
-const int GL_MODELVIEW22_ARB = 0x8736;
-const int GL_MODELVIEW23_ARB = 0x8737;
-const int GL_MODELVIEW24_ARB = 0x8738;
-const int GL_MODELVIEW25_ARB = 0x8739;
-const int GL_MODELVIEW26_ARB = 0x873A;
-const int GL_MODELVIEW27_ARB = 0x873B;
-const int GL_MODELVIEW28_ARB = 0x873C;
-const int GL_MODELVIEW29_ARB = 0x873D;
-const int GL_MODELVIEW2_ARB = 0x8722;
-const int GL_MODELVIEW31_ARB = 0x873F;
-const int GL_MODELVIEW3_ARB = 0x8723;
-const int GL_MODELVIEW4_ARB = 0x8724;
-const int GL_MODELVIEW5_ARB = 0x8725;
-const int GL_MODELVIEW6_ARB = 0x8726;
-const int GL_MODELVIEW7_ARB = 0x8727;
-const int GL_MODELVIEW8_ARB = 0x8728;
-const int GL_MODELVIEW9_ARB = 0x8729;
-const int GL_MODELVIEW_MATRIX = 0x0BA6;
-const int GL_MODELVIEW_STACK_DEPTH = 0x0BA3;
-const int GL_MODULATE = 0x2100;
-const int GL_MULT = 0x0103;
-const int GL_MULTISAMPLE = 0x809D;
-const int GL_MULTISAMPLE_ARB = 0x809D;
-const int GL_MULTISAMPLE_BIT = 0x20000000;
-const int GL_MULTISAMPLE_BIT_ARB = 0x20000000;
-const int GL_MULTISAMPLE_BIT_EXT = 0x20000000;
-const int GL_MULTISAMPLE_SGIS = 0x809D;
-const int GL_N3F_V3F = 0x2A25;
-const int GL_NAME_STACK_DEPTH = 0x0D70;
-const int GL_NEAREST = 0x2600;
-const int GL_NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D;
-const int GL_NEAREST_MIPMAP_LINEAR = 0x2702;
-const int GL_NEAREST_MIPMAP_NEAREST = 0x2700;
-const int GL_NEGATIVE_ONE_EXT = 0x87DF;
-const int GL_NEGATIVE_W_EXT = 0x87DC;
-const int GL_NEGATIVE_X_EXT = 0x87D9;
-const int GL_NEGATIVE_Y_EXT = 0x87DA;
-const int GL_NEGATIVE_Z_EXT = 0x87DB;
-const int GL_NEVER = 0x0200;
-const int GL_NICEST = 0x1102;
-const int GL_NO_ERROR = 0;
-const int GL_NONE = 0;
-const int GL_NONE_MTX = 0x8ACB;
-const int GL_NOOP = 0x1505;
-const int GL_NOR = 0x1508;
-const int GL_NORMAL_ARRAY = 0x8075;
-const int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080;
-const int GL_NORMAL_ARRAY_EXT = 0x8075;
-const int GL_NORMAL_ARRAY_POINTER = 0x808F;
-const int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F;
-const int GL_NORMAL_ARRAY_STRIDE = 0x807F;
-const int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F;
-const int GL_NORMALIZE = 0x0BA1;
-const int GL_NORMAL_MAP = 0x8511;
-const int GL_NORMAL_MAP_ARB = 0x8511;
-const int GL_NORMAL_MAP_EXT = 0x8511;
-const int GL_NORMAL_MAP_NV = 0x8511;
-const int GL_NOTEQUAL = 0x0205;
-const int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2;
-const int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2;
-const int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764;
-const int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765;
-const int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3;
-const int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1;
-const int GL_OBJECT_LINEAR = 0x2401;
-const int GL_OBJECT_LINE_SGIS = 0x81F7;
-const int GL_OBJECT_PLANE = 0x2501;
-const int GL_OBJECT_POINT_SGIS = 0x81F5;
-const int GL_ONE = 1;
-const int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004;
-const int GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004;
-const int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002;
-const int GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002;
-const int GL_ONE_MINUS_DST_ALPHA = 0x0305;
-const int GL_ONE_MINUS_DST_COLOR = 0x0307;
-const int GL_ONE_MINUS_SRC_ALPHA = 0x0303;
-const int GL_ONE_MINUS_SRC_COLOR = 0x0301;
-const int GL_OP_ADD_EXT = 0x8787;
-const int GL_OP_ADD_MTX = 0x8AA1;
-const int GL_OP_CMP_MTX = 0x8AAA;
-const int GL_OP_CMV_MTX = 0x8AA9;
-const int GL_OP_CND_MTX = 0x8AA8;
-const int GL_OP_CROSS_PRODUCT_EXT = 0x8797;
-const int GL_OP_DOT3_EXT = 0x8784;
-const int GL_OP_DOT4_EXT = 0x8785;
-const int GL_OP_DP3_MTX = 0x8AA4;
-const int GL_OP_DP4_MTX = 0x8AA5;
-const int GL_OPERAND0_ALPHA = 0x8598;
-const int GL_OPERAND0_ALPHA_ARB = 0x8598;
-const int GL_OPERAND0_ALPHA_EXT = 0x8598;
-const int GL_OPERAND0_RGB = 0x8590;
-const int GL_OPERAND0_RGB_ARB = 0x8590;
-const int GL_OPERAND0_RGB_EXT = 0x8590;
-const int GL_OPERAND1_ALPHA = 0x8599;
-const int GL_OPERAND1_ALPHA_ARB = 0x8599;
-const int GL_OPERAND1_ALPHA_EXT = 0x8599;
-const int GL_OPERAND1_RGB = 0x8591;
-const int GL_OPERAND1_RGB_ARB = 0x8591;
-const int GL_OPERAND1_RGB_EXT = 0x8591;
-const int GL_OPERAND2_ALPHA = 0x859A;
-const int GL_OPERAND2_ALPHA_ARB = 0x859A;
-const int GL_OPERAND2_ALPHA_EXT = 0x859A;
-const int GL_OPERAND2_RGB = 0x8592;
-const int GL_OPERAND2_RGB_ARB = 0x8592;
-const int GL_OPERAND2_RGB_EXT = 0x8592;
-const int GL_OPERAND3_ALPHA_ARB = 0x859B;
-const int GL_OPERAND3_ALPHA_EXT = 0x859B;
-const int GL_OPERAND3_ALPHA_NV = 0x859B;
-const int GL_OPERAND3_RGB_ARB = 0x8593;
-const int GL_OPERAND3_RGB_EXT = 0x8593;
-const int GL_OPERAND3_RGB_NV = 0x8593;
-const int GL_OPERAND4_ALPHA_ARB = 0x859C;
-const int GL_OPERAND4_ALPHA_EXT = 0x859C;
-const int GL_OPERAND4_RGB_ARB = 0x8594;
-const int GL_OPERAND4_RGB_EXT = 0x8594;
-const int GL_OPERAND5_ALPHA_ARB = 0x859D;
-const int GL_OPERAND5_ALPHA_EXT = 0x859D;
-const int GL_OPERAND5_RGB_ARB = 0x8595;
-const int GL_OPERAND5_RGB_EXT = 0x8595;
-const int GL_OPERAND6_RGB_ARB = 0x8596;
-const int GL_OPERAND6_RGB_EXT = 0x8596;
-const int GL_OPERAND7_ALPHA_ARB = 0x859F;
-const int GL_OPERAND7_ALPHA_EXT = 0x859F;
-const int GL_OPERAND7_RGB_ARB = 0x8597;
-const int GL_OPERAND7_RGB_EXT = 0x8597;
-const int GL_OP_EXP_BASE_2_EXT = 0x8791;
-const int GL_OP_FLOOR_EXT = 0x878F;
-const int GL_OP_FRAC_EXT = 0x8789;
-const int GL_OP_INDEX_EXT = 0x8782;
-const int GL_OP_LOG_BASE_2_EXT = 0x8792;
-const int GL_OP_LRP_MTX = 0x8AA7;
-const int GL_OP_MADD_EXT = 0x8788;
-const int GL_OP_MAD_MTX = 0x8AA6;
-const int GL_OP_MAX_EXT = 0x878A;
-const int GL_OP_MIN_EXT = 0x878B;
-const int GL_OP_MOV_EXT = 0x8799;
-const int GL_OP_MOV_MTX = 0x8AA0;
-const int GL_OP_MUL_EXT = 0x8786;
-const int GL_OP_MUL_MTX = 0x8AA3;
-const int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798;
-const int GL_OP_NEGATE_EXT = 0x8783;
-const int GL_OP_POWER_EXT = 0x8793;
-const int GL_OP_RECIP_EXT = 0x8794;
-const int GL_OP_RECIP_SQRT_EXT = 0x8795;
-const int GL_OP_ROUND_EXT = 0x8790;
-const int GL_OP_SET_GE_EXT = 0x878C;
-const int GL_OP_SET_LT_EXT = 0x878D;
-const int GL_OP_SUB_EXT = 0x8796;
-const int GL_OP_SUB_MTX = 0x8AA2;
-const int GL_OP_TEXBEM_MTX = 0x8A93;
-const int GL_OP_TEX_COORD_MTX = 0x8A90;
-const int GL_OP_TEXDEP_AR_MTX = 0x8A94;
-const int GL_OP_TEXDEP_GB_MTX = 0x8A95;
-const int GL_OP_TEXDEP_RGB_MTX = 0x8A96;
-const int GL_OP_TEXDOT3_COORD_MTX = 0x8A97;
-const int GL_OP_TEXDOT3_MTX = 0x8A98;
-const int GL_OP_TEXKILL_GE_MTX = 0x8A91;
-const int GL_OP_TEXKILL_LT_MTX = 0x8A92;
-const int GL_OP_TEXM3X2_DEPTH_MTX = 0x8A9A;
-const int GL_OP_TEXM3X2_MTX = 0x8A99;
-const int GL_OP_TEXM3X3_COORD_MTX = 0x8A9C;
-const int GL_OP_TEXM3X3_MTX = 0x8A9B;
-const int GL_OP_TEXM3X3_REFLECT_MTX = 0x8A9D;
-const int GL_OP_TEX_MTX = 0x8A8F;
-const int GL_OPT_FP_COLORS_MTX = 0x8A8A;
-const int GL_OPT_FP_OPS_MTX = 0x8A88;
-const int GL_OPT_FP_TEXTURES_MTX = 0x8A89;
-const int GL_OPT_TA_OPS_MTX = 0x8A83;
-const int GL_OR = 0x1507;
-const int GL_ORDER = 0x0A01;
-const int GL_OR_INVERTED = 0x150D;
-const int GL_OR_REVERSE = 0x150B;
-const int GL_OUT_OF_MEMORY = 0x0505;
-const int GL_OUTPUT_COLOR0_EXT = 0x879B;
-const int GL_OUTPUT_COLOR1_EXT = 0x879C;
-const int GL_OUTPUT_COLOR_MTX = 0x8AB3;
-const int GL_OUTPUT_FOG_EXT = 0x87BD;
-const int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D;
-const int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7;
-const int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8;
-const int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9;
-const int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA;
-const int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB;
-const int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC;
-const int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD;
-const int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF;
-const int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0;
-const int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1;
-const int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2;
-const int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3;
-const int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4;
-const int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5;
-const int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6;
-const int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7;
-const int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8;
-const int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9;
-const int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA;
-const int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F;
-const int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB;
-const int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC;
-const int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0;
-const int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1;
-const int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2;
-const int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3;
-const int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4;
-const int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5;
-const int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6;
-const int GL_OUTPUT_VERTEX_EXT = 0x879A;
-const int GL_PACK_ALIGNMENT = 0x0D05;
-const int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131;
-const int GL_PACK_IMAGE_HEIGHT = 0x806C;
-const int GL_PACK_IMAGE_HEIGHT_EXT = 0x806C;
-const int GL_PACK_LSB_FIRST = 0x0D01;
-const int GL_PACK_RESAMPLE_SGIX = 0x842C;
-const int GL_PACK_ROW_LENGTH = 0x0D02;
-const int GL_PACK_SKIP_IMAGES = 0x806B;
-const int GL_PACK_SKIP_IMAGES_EXT = 0x806B;
-const int GL_PACK_SKIP_PIXELS = 0x0D04;
-const int GL_PACK_SKIP_ROWS = 0x0D03;
-const int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130;
-const int GL_PACK_SUBSAMPLE_RATE_SGIX = 0x85A0;
-const int GL_PACK_SWAP_BYTES = 0x0D00;
-const int GL_PASS_THROUGH_TOKEN = 0x0700;
-const int GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50;
-const int GL_PIXEL_CUBIC_WEIGHT_EXT = 0x8333;
-const int GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = 0x8355;
-const int GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354;
-const int GL_PIXEL_GROUP_COLOR_SGIS = 0x8356;
-const int GL_PIXEL_MAG_FILTER_EXT = 0x8331;
-const int GL_PIXEL_MAP_A_TO_A = 0x0C79;
-const int GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9;
-const int GL_PIXEL_MAP_B_TO_B = 0x0C78;
-const int GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8;
-const int GL_PIXEL_MAP_G_TO_G = 0x0C77;
-const int GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7;
-const int GL_PIXEL_MAP_I_TO_A = 0x0C75;
-const int GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5;
-const int GL_PIXEL_MAP_I_TO_B = 0x0C74;
-const int GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4;
-const int GL_PIXEL_MAP_I_TO_G = 0x0C73;
-const int GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3;
-const int GL_PIXEL_MAP_I_TO_I = 0x0C70;
-const int GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0;
-const int GL_PIXEL_MAP_I_TO_R = 0x0C72;
-const int GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2;
-const int GL_PIXEL_MAP_R_TO_R = 0x0C76;
-const int GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6;
-const int GL_PIXEL_MAP_S_TO_S = 0x0C71;
-const int GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1;
-const int GL_PIXEL_MIN_FILTER_EXT = 0x8332;
-const int GL_PIXEL_MODE_BIT = 0x00000020;
-const int GL_PIXEL_SUBSAMPLE_2424_SGIX = 0x85A3;
-const int GL_PIXEL_SUBSAMPLE_4242_SGIX = 0x85A4;
-const int GL_PIXEL_SUBSAMPLE_4444_SGIX = 0x85A2;
-const int GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX = 0x8189;
-const int GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX = 0x818A;
-const int GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX = 0x8188;
-const int GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX = 0x8187;
-const int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B;
-const int GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = 0x8184;
-const int GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = 0x8186;
-const int GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = 0x8185;
-const int GL_PIXEL_TEX_GEN_SGIX = 0x8139;
-const int GL_PIXEL_TEXTURE_SGIS = 0x8353;
-const int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F;
-const int GL_PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145;
-const int GL_PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144;
-const int GL_PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143;
-const int GL_PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142;
-const int GL_PIXEL_TILE_HEIGHT_SGIX = 0x8141;
-const int GL_PIXEL_TILE_WIDTH_SGIX = 0x8140;
-const int GL_PIXEL_TRANSFORM_2D_EXT = 0x8330;
-const int GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338;
-const int GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336;
-const int GL_POINT = 0x1B00;
-const int GL_POINT_BIT = 0x00000002;
-const int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129;
-const int GL_POINT_DISTANCE_ATTENUATION_EXT = 0x8129;
-const int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128;
-const int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128;
-const int GL_POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128;
-const int GL_POINTS = 0x0000;
-const int GL_POINT_SIZE = 0x0B11;
-const int GL_POINT_SIZE_GRANULARITY = 0x0B13;
-const int GL_POINT_SIZE_MAX_ARB = 0x8127;
-const int GL_POINT_SIZE_MAX_EXT = 0x8127;
-const int GL_POINT_SIZE_MAX_SGIS = 0x8127;
-const int GL_POINT_SIZE_MIN_ARB = 0x8126;
-const int GL_POINT_SIZE_MIN_EXT = 0x8126;
-const int GL_POINT_SIZE_MIN_SGIS = 0x8126;
-const int GL_POINT_SIZE_RANGE = 0x0B12;
-const int GL_POINT_SMOOTH = 0x0B10;
-const int GL_POINT_SMOOTH_HINT = 0x0C51;
-const int GL_POINT_TOKEN = 0x0701;
-const int GL_POLYGON = 0x0009;
-const int GL_POLYGON_BIT = 0x00000008;
-const int GL_POLYGON_MODE = 0x0B40;
-const int GL_POLYGON_OFFSET_BIAS_EXT = 0x8039;
-const int GL_POLYGON_OFFSET_FACTOR = 0x8038;
-const int GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038;
-const int GL_POLYGON_OFFSET_FILL = 0x8037;
-const int GL_POLYGON_OFFSET_FILL_EXT = 0x8037;
-const int GL_POLYGON_OFFSET_LINE = 0x2A02;
-const int GL_POLYGON_OFFSET_POINT = 0x2A01;
-const int GL_POLYGON_OFFSET_UNITS = 0x2A00;
-const int GL_POLYGON_SMOOTH = 0x0B41;
-const int GL_POLYGON_SMOOTH_HINT = 0x0C53;
-const int GL_POLYGON_STIPPLE = 0x0B42;
-const int GL_POLYGON_STIPPLE_BIT = 0x00000010;
-const int GL_POLYGON_TOKEN = 0x0703;
-const int GL_POSITION = 0x1203;
-const int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB;
-const int GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB;
-const int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7;
-const int GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7;
-const int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA;
-const int GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA;
-const int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6;
-const int GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6;
-const int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2;
-const int GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2;
-const int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9;
-const int GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9;
-const int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5;
-const int GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5;
-const int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8;
-const int GL_POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8;
-const int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4;
-const int GL_POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4;
-const int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023;
-const int GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023;
-const int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F;
-const int GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F;
-const int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022;
-const int GL_POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022;
-const int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1;
-const int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1;
-const int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021;
-const int GL_POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021;
-const int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D;
-const int GL_POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D;
-const int GL_POST_CONVOLUTION_RED_BIAS = 0x8020;
-const int GL_POST_CONVOLUTION_RED_BIAS_EXT = 0x8020;
-const int GL_POST_CONVOLUTION_RED_SCALE = 0x801C;
-const int GL_POST_CONVOLUTION_RED_SCALE_EXT = 0x801C;
-const int GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B;
-const int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179;
-const int GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C;
-const int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A;
-const int GL_PRESERVE_ATI = 0x8762;
-const int GL_PREVIOUS = 0x8578;
-const int GL_PREVIOUS_ARB = 0x8578;
-const int GL_PREVIOUS_EXT = 0x8578;
-const int GL_PRIMARY_COLOR = 0x8577;
-const int GL_PRIMARY_COLOR_ARB = 0x8577;
-const int GL_PRIMARY_COLOR_EXT = 0x8577;
-const int GL_PRIMARY_COLOR_NV = 0x852c;
-const int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0;
-const int GL_PROGRAM_ATTRIBS_ARB = 0x88AC;
-const int GL_PROGRAM_BINDING_ARB = 0x8677;
-const int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B;
-const int GL_PROGRAM_ERROR_STRING_ARB = 0x8874;
-const int GL_PROGRAM_FORMAT_ARB = 0x8876;
-const int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875;
-const int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0;
-const int GL_PROGRAM_LENGTH_ARB = 0x8627;
-const int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2;
-const int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2;
-const int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA;
-const int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6;
-const int GL_PROGRAM_PARAMETERS_ARB = 0x88A8;
-const int GL_PROGRAM_STRING_ARB = 0x8628;
-const int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4;
-const int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6;
-const int GL_PROJECTION = 0x1701;
-const int GL_PROJECTION_MATRIX = 0x0BA7;
-const int GL_PROJECTION_STACK_DEPTH = 0x0BA4;
-const int GL_PROXY_COLOR_TABLE = 0x80D3;
-const int GL_PROXY_COLOR_TABLE_SGI = 0x80D3;
-const int GL_PROXY_HISTOGRAM = 0x8025;
-const int GL_PROXY_HISTOGRAM_EXT = 0x8025;
-const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5;
-const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5;
-const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4;
-const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4;
-const int GL_PROXY_TEXTURE_1D = 0x8063;
-const int GL_PROXY_TEXTURE_1D_EXT = 0x8063;
-const int GL_PROXY_TEXTURE_2D = 0x8064;
-const int GL_PROXY_TEXTURE_2D_EXT = 0x8064;
-const int GL_PROXY_TEXTURE_3D = 0x8070;
-const int GL_PROXY_TEXTURE_3D_EXT = 0x8070;
-const int GL_PROXY_TEXTURE_4D_SGIS = 0x8135;
-const int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD;
-const int GL_PROXY_TEXTURE_CUBE_MAP = 0x851B;
-const int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B;
-const int GL_PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B;
-const int GL_Q = 0x2003;
-const int GL_QUAD_ALPHA8_SGIS = 0x811F;
-const int GL_QUAD_INTENSITY4_SGIS = 0x8122;
-const int GL_QUAD_INTENSITY8_SGIS = 0x8123;
-const int GL_QUAD_LUMINANCE4_SGIS = 0x8120;
-const int GL_QUAD_LUMINANCE8_SGIS = 0x8121;
-const int GL_QUADRATIC_ATTENUATION = 0x1209;
-const int GL_QUADS = 0x0007;
-const int GL_QUAD_STRIP = 0x0008;
-const int GL_QUAD_TEXTURE_SELECT_SGIS = 0x8125;
-const int GL_R = 0x2002;
-const int GL_R3_G3_B2 = 0x2A10;
-const int GL_READ_BUFFER = 0x0C02;
-const int GL_RED = 0x1903;
-const int GL_RED_BIAS = 0x0D15;
-const int GL_RED_BITS = 0x0D52;
-const int GL_RED_MTX = 0x8ABA;
-const int GL_RED_SCALE = 0x0D14;
-const int GL_REDUCE = 0x8016;
-const int GL_REDUCE_EXT = 0x8016;
-const int GL_REFERENCE_PLANE_SGIX = 0x817D;
-const int GL_REFLECTION_MAP = 0x8512;
-const int GL_REFLECTION_MAP_ARB = 0x8512;
-const int GL_REFLECTION_MAP_EXT = 0x8512;
-const int GL_REFLECTION_MAP_NV = 0x8512;
-const int GL_REGISTER_COMBINERS_NV = 0x8522;
-const int GL_RENDER = 0x1C00;
-const int GL_RENDERER = 0x1F01;
-const int GL_RENDER_MODE = 0x0C40;
-const int GL_REPEAT = 0x2901;
-const int GL_REPLACE_EXT = 0x8062;
-const int GL_REPLICATE_BORDER = 0x8153;
-const int GL_REPLICATE_MTX = 0x8AC9;
-const int GL_RESAMPLE_DECIMATE_SGIX = 0x8430;
-const int GL_RESAMPLE_ZERO_FILL_SGIX = 0x842F;
-const int GL_RESCALE_NORMAL = 0x803A;
-const int GL_RESCALE_NORMAL_EXT = 0x803A;
-const int GL_RESULT_MTX = 0x8AC3;
-const int GL_RETURN = 0x0102;
-const int GL_RGB = 0x1907;
-const int GL_RGB10 = 0x8052;
-const int GL_RGB10_A2 = 0x8059;
-const int GL_RGB10_A2_EXT = 0x8059;
-const int GL_RGB10_EXT = 0x8052;
-const int GL_RGB12 = 0x8053;
-const int GL_RGB12_EXT = 0x8053;
-const int GL_RGB16 = 0x8054;
-const int GL_RGB16_EXT = 0x8054;
-const int GL_RGB4 = 0x804F;
-const int GL_RGB4_EXT = 0x804F;
-const int GL_RGB4_S3TC = 0x83A1;
-const int GL_RGB5 = 0x8050;
-const int GL_RGB5_A1 = 0x8057;
-const int GL_RGB5_A1_EXT = 0x8057;
-const int GL_RGB5_EXT = 0x8050;
-const int GL_RGB8 = 0x8051;
-const int GL_RGB8_EXT = 0x8051;
-const int GL_RGBA = 0x1908;
-const int GL_RGBA12 = 0x805A;
-const int GL_RGBA12_EXT = 0x805A;
-const int GL_RGBA16 = 0x805B;
-const int GL_RGBA16_EXT = 0x805B;
-const int GL_RGBA2 = 0x8055;
-const int GL_RGBA2_EXT = 0x8055;
-const int GL_RGBA4 = 0x8056;
-const int GL_RGBA4_EXT = 0x8056;
-const int GL_RGBA4_S3TC = 0x83A3;
-const int GL_RGBA8 = 0x8058;
-const int GL_RGBA8_EXT = 0x8058;
-const int GL_RGBA_MODE = 0x0C31;
-const int GL_RGBA_S3TC = 0x83A2;
-const int GL_RGB_S3TC = 0x83A0;
-const int GL_RGB_SCALE = 0x8573;
-const int GL_RGB_SCALE_ARB = 0x8573;
-const int GL_RGB_SCALE_EXT = 0x8573;
-const int GL_RIGHT = 0x0407;
-const int GL_S = 0x2000;
-const int GL_SAMPLE_ALPHA_TO_ONE = 0x809F;
-const int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F;
-const int GL_SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F;
-const int GL_SAMPLE_BUFFERS = 0x80A8;
-const int GL_SAMPLE_BUFFERS_ARB = 0x80A8;
-const int GL_SAMPLE_BUFFERS_SGIS = 0x80A8;
-const int GL_SAMPLE_COVERAGE = 0x80A0;
-const int GL_SAMPLE_COVERAGE_ARB = 0x80A0;
-const int GL_SAMPLE_COVERAGE_INVERT = 0x80AB;
-const int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB;
-const int GL_SAMPLE_COVERAGE_VALUE = 0x80AA;
-const int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA;
-const int GL_SAMPLE_MASK_INVERT_SGIS = 0x80AB;
-const int GL_SAMPLE_MASK_SGIS = 0x80A0;
-const int GL_SAMPLE_MASK_VALUE_SGIS = 0x80AA;
-const int GL_SAMPLE_PATTERN_SGIS = 0x80AC;
-const int GL_SAMPLES = 0x80A9;
-const int GL_SAMPLES_ARB = 0x80A9;
-const int GL_SAMPLES_SGIS = 0x80A9;
-const int GL_SATURATE_MTX = 0x8AC7;
-const int GL_SCALEBIAS_HINT_SGIX = 0x8322;
-const int GL_SCALE_BY_FOUR_NV = 0x853f;
-const int GL_SCALE_BY_ONE_HALF_NV = 0x8540;
-const int GL_SCALE_D2_MTX = 0x8ACF;
-const int GL_SCALE_D4_MTX = 0x8AD0;
-const int GL_SCALE_MTX = 0x8AC8;
-const int GL_SCALE_X2_MTX = 0x8ACC;
-const int GL_SCALE_X4_MTX = 0x8ACD;
-const int GL_SCISSOR_BIT = 0x00080000;
-const int GL_SCISSOR_BOX = 0x0C10;
-const int GL_SCISSOR_TEST = 0x0C11;
-const int GL_SCREEN_COORDINATES_REND = 0x8490;
-const int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D;
-const int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A;
-const int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C;
-const int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B;
-const int GL_SECONDARY_COLOR_NV = 0x852d;
-const int GL_SELECT = 0x1C02;
-const int GL_SELECTION_BUFFER_POINTER = 0x0DF3;
-const int GL_SELECTION_BUFFER_SIZE = 0x0DF4;
-const int GL_SEPARABLE_2D = 0x8012;
-const int GL_SEPARABLE_2D_EXT = 0x8012;
-const int GL_SEPARATE_SPECULAR_COLOR = 0x81FA;
-const int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA;
-const int GL_SET = 0x150F;
-const int GL_SHADE_MODEL = 0x0B54;
-const int GL_SHADOW_AMBIENT_SGIX = 0x80BF;
-const int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB;
-const int GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0;
-const int GL_SHININESS = 0x1601;
-const int GL_SHORT = 0x1402;
-const int GL_SIGNED_IDENTITY_NV = 0x853c;
-const int GL_SIGNED_NEGATE_NV = 0x853d;
-const int GL_SIGNED_RGB10_A2_MTX = 0x89C5;
-const int GL_SIGNED_RGB8_MTX = 0x89C4;
-const int GL_SIGNED_RGBA8_MTX = 0x89C3;
-const int GL_SIGNED_RGBA_MTX = 0x89AF;
-const int GL_SIGNED_RGB_MTX = 0x89B0;
-const int GL_SIGNED_UV16_MTX = 0x89C9;
-const int GL_SIGNED_UV5_UNSIGNED_Q6_MTX = 0x89C7;
-const int GL_SIGNED_UV8_MTX = 0x89C6;
-const int GL_SIGNED_UV8_UNSIGNED_Q8_MTX = 0x89C8;
-const int GL_SIGNED_UV_MTX = 0x89B1;
-const int GL_SINGLE_COLOR = 0x81F9;
-const int GL_SINGLE_COLOR_EXT = 0x81F9;
-const int GL_SMOOTH = 0x1D01;
-const int GL_SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23;
-const int GL_SMOOTH_LINE_WIDTH_RANGE = 0x0B22;
-const int GL_SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13;
-const int GL_SMOOTH_POINT_SIZE_RANGE = 0x0B12;
-const int GL_SOURCE0_ALPHA = 0x8588;
-const int GL_SOURCE0_ALPHA_ARB = 0x8588;
-const int GL_SOURCE0_ALPHA_EXT = 0x8588;
-const int GL_SOURCE0_RGB = 0x8580;
-const int GL_SOURCE0_RGB_ARB = 0x8580;
-const int GL_SOURCE0_RGB_EXT = 0x8580;
-const int GL_SOURCE1_ALPHA = 0x8589;
-const int GL_SOURCE1_ALPHA_ARB = 0x8589;
-const int GL_SOURCE1_ALPHA_EXT = 0x8589;
-const int GL_SOURCE1_RGB = 0x8581;
-const int GL_SOURCE1_RGB_ARB = 0x8581;
-const int GL_SOURCE1_RGB_EXT = 0x8581;
-const int GL_SOURCE2_ALPHA = 0x858A;
-const int GL_SOURCE2_ALPHA_ARB = 0x858A;
-const int GL_SOURCE2_ALPHA_EXT = 0x858A;
-const int GL_SOURCE2_RGB = 0x8582;
-const int GL_SOURCE2_RGB_ARB = 0x8582;
-const int GL_SOURCE2_RGB_EXT = 0x8582;
-const int GL_SOURCE3_ALPHA_ARB = 0x858B;
-const int GL_SOURCE3_ALPHA_EXT = 0x858B;
-const int GL_SOURCE3_ALPHA_NV = 0x858B;
-const int GL_SOURCE3_RGB_ARB = 0x8583;
-const int GL_SOURCE3_RGB_EXT = 0x8583;
-const int GL_SOURCE3_RGB_NV = 0x8583;
-const int GL_SOURCE4_ALPHA_ARB = 0x858C;
-const int GL_SOURCE4_ALPHA_EXT = 0x858C;
-const int GL_SOURCE4_RGB_ARB = 0x8584;
-const int GL_SOURCE4_RGB_EXT = 0x8584;
-const int GL_SOURCE5_ALPHA_ARB = 0x858D;
-const int GL_SOURCE5_ALPHA_EXT = 0x858D;
-const int GL_SOURCE5_RGB_ARB = 0x8585;
-const int GL_SOURCE5_RGB_EXT = 0x8585;
-const int GL_SOURCE6_RGB_ARB = 0x8586;
-const int GL_SOURCE6_RGB_EXT = 0x8586;
-const int GL_SOURCE7_ALPHA_ARB = 0x858F;
-const int GL_SOURCE7_ALPHA_EXT = 0x858F;
-const int GL_SOURCE7_RGB_ARB = 0x8587;
-const int GL_SOURCE7_RGB_EXT = 0x8587;
-const int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532;
-const int GL_SPARE1_NV = 0x852f;
-const int GL_SPECULAR = 0x1202;
-const int GL_SPHERE_MAP = 0x2402;
-const int GL_SPOT_CUTOFF = 0x1206;
-const int GL_SPOT_DIRECTION = 0x1204;
-const int GL_SPOT_EXPONENT = 0x1205;
-const int GL_SPRITE_AXIAL_SGIX = 0x814C;
-const int GL_SPRITE_AXIS_SGIX = 0x814A;
-const int GL_SPRITE_MODE_SGIX = 0x8149;
-const int GL_SPRITE_OBJECT_ALIGNED_SGIX = 0x814D;
-const int GL_SPRITE_SGIX = 0x8148;
-const int GL_SPRITE_TRANSLATION_SGIX = 0x814B;
-const int GL_SRC_ALPHA = 0x0302;
-const int GL_SRC_ALPHA_SATURATE = 0x0308;
-const int GL_SRC_COLOR = 0x0300;
-const int GL_STACK_OVERFLOW = 0x0503;
-const int GL_STACK_UNDERFLOW = 0x0504;
-const int GL_STATIC_ATI = 0x8760;
-const int GL_STENCIL = 0x1802;
-const int GL_STENCIL_BITS = 0x0D57;
-const int GL_STENCIL_BUFFER_BIT = 0x00000400;
-const int GL_STENCIL_CLEAR_VALUE = 0x0B91;
-const int GL_STENCIL_FAIL = 0x0B94;
-const int GL_STENCIL_FUNC = 0x0B92;
-const int GL_STENCIL_INDEX = 0x1901;
-const int GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95;
-const int GL_STENCIL_PASS_DEPTH_PASS = 0x0B96;
-const int GL_STENCIL_REF = 0x0B97;
-const int GL_STENCIL_TEST = 0x0B90;
-const int GL_STENCIL_VALUE_MASK = 0x0B93;
-const int GL_STENCIL_WRITEMASK = 0x0B98;
-const int GL_STEREO = 0x0C33;
-const int GL_SUBPIXEL_BITS = 0x0D50;
-const int GL_T = 0x2001;
-const int GL_T2F_C3F_V3F = 0x2A2A;
-const int GL_T2F_C4F_N3F_V3F = 0x2A2C;
-const int GL_T2F_C4UB_V3F = 0x2A29;
-const int GL_T2F_IUI_N3F_V2F_EXT = 0x81B3;
-const int GL_T2F_IUI_N3F_V3F_EXT = 0x81B4;
-const int GL_T2F_IUI_V2F_EXT = 0x81B1;
-const int GL_T2F_IUI_V3F_EXT = 0x81B2;
-const int GL_T2F_N3F_V3F = 0x2A2B;
-const int GL_T2F_V3F = 0x2A27;
-const int GL_T4F_C4F_N3F_V4F = 0x2A2D;
-const int GL_T4F_V4F = 0x2A28;
-const int GL_TABLE_TOO_LARGE = 0x8031;
-const int GL_TABLE_TOO_LARGE_EXT = 0x8031;
-const int GL_TANGENT_ARRAY_EXT = 0x8439;
-const int GL_TANGENT_ARRAY_POINTER_EXT = 0x8442;
-const int GL_TANGENT_ARRAY_STRIDE_EXT = 0x843F;
-const int GL_TA_OPS_MTX = 0x8A84;
-const int GL_TEMPORARY0_MTX = 0x8AB0;
-const int GL_TEMPORARY1_MTX = 0x8AB1;
-const int GL_TEX_BIASED_MTX = 0x8AC2;
-const int GL_TEX_SIGNED_MTX = 0x8AC1;
-const int GL_TEXTURE0 = 0x84C0;
-const int GL_TEXTURE0_ARB = 0x84C0;
-const int GL_TEXTURE = 0x1702;
-const int GL_TEXTURE10 = 0x84CA;
-const int GL_TEXTURE10_ARB = 0x84CA;
-const int GL_TEXTURE1 = 0x84C1;
-const int GL_TEXTURE11 = 0x84CB;
-const int GL_TEXTURE11_ARB = 0x84CB;
-const int GL_TEXTURE12 = 0x84CC;
-const int GL_TEXTURE12_ARB = 0x84CC;
-const int GL_TEXTURE13 = 0x84CD;
-const int GL_TEXTURE13_ARB = 0x84CD;
-const int GL_TEXTURE15 = 0x84CF;
-const int GL_TEXTURE15_ARB = 0x84CF;
-const int GL_TEXTURE16 = 0x84D0;
-const int GL_TEXTURE16_ARB = 0x84D0;
-const int GL_TEXTURE17 = 0x84D1;
-const int GL_TEXTURE17_ARB = 0x84D1;
-const int GL_TEXTURE18 = 0x84D2;
-const int GL_TEXTURE18_ARB = 0x84D2;
-const int GL_TEXTURE19 = 0x84D3;
-const int GL_TEXTURE19_ARB = 0x84D3;
-const int GL_TEXTURE1_ARB = 0x84C1;
-const int GL_TEXTURE_1D_BINDING_EXT = 0x8068;
-const int GL_TEXTURE1_SGIS = 0x835F;
-const int GL_TEXTURE20 = 0x84D4;
-const int GL_TEXTURE20_ARB = 0x84D4;
-const int GL_TEXTURE2 = 0x84C2;
-const int GL_TEXTURE21 = 0x84D5;
-const int GL_TEXTURE21_ARB = 0x84D5;
-const int GL_TEXTURE22 = 0x84D6;
-const int GL_TEXTURE22_ARB = 0x84D6;
-const int GL_TEXTURE23 = 0x84D7;
-const int GL_TEXTURE23_ARB = 0x84D7;
-const int GL_TEXTURE24 = 0x84D8;
-const int GL_TEXTURE24_ARB = 0x84D8;
-const int GL_TEXTURE25 = 0x84D9;
-const int GL_TEXTURE25_ARB = 0x84D9;
-const int GL_TEXTURE26 = 0x84DA;
-const int GL_TEXTURE26_ARB = 0x84DA;
-const int GL_TEXTURE27 = 0x84DB;
-const int GL_TEXTURE27_ARB = 0x84DB;
-const int GL_TEXTURE28 = 0x84DC;
-const int GL_TEXTURE28_ARB = 0x84DC;
-const int GL_TEXTURE29 = 0x84DD;
-const int GL_TEXTURE29_ARB = 0x84DD;
-const int GL_TEXTURE2_ARB = 0x84C2;
-const int GL_TEXTURE_2D_BINDING_EXT = 0x8069;
-const int GL_TEXTURE2_SGIS = 0x8360;
-const int GL_TEXTURE3 = 0x84C3;
-const int GL_TEXTURE31 = 0x84DF;
-const int GL_TEXTURE31_ARB = 0x84DF;
-const int GL_TEXTURE3_ARB = 0x84C3;
-const int GL_TEXTURE_3D = 0x806F;
-const int GL_TEXTURE_3D_BINDING_EXT = 0x806A;
-const int GL_TEXTURE_3D_EXT = 0x806F;
-const int GL_TEXTURE3_SGIS = 0x8361;
-const int GL_TEXTURE4 = 0x84C4;
-const int GL_TEXTURE4_ARB = 0x84C4;
-const int GL_TEXTURE_4D_BINDING_SGIS = 0x814F;
-const int GL_TEXTURE_4D_SGIS = 0x8134;
-const int GL_TEXTURE_4DSIZE_SGIS = 0x8136;
-const int GL_TEXTURE5 = 0x84C5;
-const int GL_TEXTURE5_ARB = 0x84C5;
-const int GL_TEXTURE6 = 0x84C6;
-const int GL_TEXTURE6_ARB = 0x84C6;
-const int GL_TEXTURE7 = 0x84C7;
-const int GL_TEXTURE7_ARB = 0x84C7;
-const int GL_TEXTURE8 = 0x84C8;
-const int GL_TEXTURE8_ARB = 0x84C8;
-const int GL_TEXTURE9 = 0x84C9;
-const int GL_TEXTURE9_ARB = 0x84C9;
-const int GL_TEXTURE_ALPHA_SIZE = 0x805F;
-const int GL_TEXTURE_ALPHA_SIZE_EXT = 0x805F;
-const int GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F;
-const int GL_TEXTURE_BASE_LEVEL = 0x813C;
-const int GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C;
-const int GL_TEXTURE_BINDING_1D = 0x8068;
-const int GL_TEXTURE_BINDING_2D = 0x8069;
-const int GL_TEXTURE_BINDING_3D = 0x806A;
-const int GL_TEXTURE_BINDING_3D_EXT = 0x806A;
-const int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514;
-const int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514;
-const int GL_TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514;
-const int GL_TEXTURE_BIT = 0x00040000;
-const int GL_TEXTURE_BORDER = 0x1005;
-const int GL_TEXTURE_BORDER_COLOR = 0x1004;
-const int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171;
-const int GL_TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176;
-const int GL_TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172;
-const int GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175;
-const int GL_TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173;
-const int GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174;
-const int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC;
-const int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF;
-const int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D;
-const int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C;
-const int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B;
-const int GL_TEXTURE_COMPARE_SGIX = 0x819A;
-const int GL_TEXTURE_COMPONENTS = 0x1003;
-const int GL_TEXTURE_COMPRESSED = 0x86A1;
-const int GL_TEXTURE_COMPRESSED_ARB = 0x86A1;
-const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0;
-const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0;
-const int GL_TEXTURE_COORD_ARRAY = 0x8078;
-const int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B;
-const int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078;
-const int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092;
-const int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092;
-const int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088;
-const int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088;
-const int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A;
-const int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A;
-const int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089;
-const int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089;
-const int GL_TEXTURE_CUBE_MAP = 0x8513;
-const int GL_TEXTURE_CUBE_MAP_ARB = 0x8513;
-const int GL_TEXTURE_CUBE_MAP_EXT = 0x8513;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A;
-const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519;
-const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519;
-const int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001;
-const int GL_TEXTURE_DEFORMATION_SGIX = 0x8195;
-const int GL_TEXTURE_DEPTH = 0x8071;
-const int GL_TEXTURE_DEPTH_EXT = 0x8071;
-const int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A;
-const int GL_TEXTURE_ENV = 0x2300;
-const int GL_TEXTURE_ENV_COLOR = 0x2201;
-const int GL_TEXTURE_ENV_MODE = 0x2200;
-const int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147;
-const int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500;
-const int GL_TEXTURE_FORMAT_MTX = 0x8A9F;
-const int GL_TEXTURE_GEN_MODE = 0x2500;
-const int GL_TEXTURE_GEN_Q = 0x0C63;
-const int GL_TEXTURE_GEN_R = 0x0C62;
-const int GL_TEXTURE_GEN_S = 0x0C60;
-const int GL_TEXTURE_GEN_T = 0x0C61;
-const int GL_TEXTURE_GEQUAL_R_SGIX = 0x819D;
-const int GL_TEXTURE_GREEN_SIZE = 0x805D;
-const int GL_TEXTURE_GREEN_SIZE_EXT = 0x805D;
-const int GL_TEXTURE_HEIGHT = 0x1001;
-const int GL_TEXTURE_INTENSITY_SIZE = 0x8061;
-const int GL_TEXTURE_INTENSITY_SIZE_EXT = 0x8061;
-const int GL_TEXTURE_INTERNAL_FORMAT = 0x1003;
-const int GL_TEXTURE_LEQUAL_R_SGIX = 0x819C;
-const int GL_TEXTURE_LIGHT_EXT = 0x8350;
-const int GL_TEXTURE_LOD_BIAS_EXT = 0x8501;
-const int GL_TEXTURE_LOD_BIAS_R_SGIX = 0x8190;
-const int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F;
-const int GL_TEXTURE_LUMINANCE_SIZE = 0x8060;
-const int GL_TEXTURE_LUMINANCE_SIZE_EXT = 0x8060;
-const int GL_TEXTURE_MAG_FILTER = 0x2800;
-const int GL_TEXTURE_MATERIAL_FACE_EXT = 0x8351;
-const int GL_TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352;
-const int GL_TEXTURE_MATRIX = 0x0BA8;
-const int GL_TEXTURE_MAX_CLAMP_R_SGIX = 0x836B;
-const int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369;
-const int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A;
-const int GL_TEXTURE_MAX_LEVEL = 0x813D;
-const int GL_TEXTURE_MAX_LEVEL_SGIS = 0x813D;
-const int GL_TEXTURE_MAX_LOD = 0x813B;
-const int GL_TEXTURE_MAX_LOD_SGIS = 0x813B;
-const int GL_TEXTURE_MIN_FILTER = 0x2801;
-const int GL_TEXTURE_MIN_LOD = 0x813A;
-const int GL_TEXTURE_MIN_LOD_SGIS = 0x813A;
-const int GL_TEXTURE_NORMAL_EXT = 0x85AF;
-const int GL_TEXTURE_PRIORITY = 0x8066;
-const int GL_TEXTURE_PRIORITY_EXT = 0x8066;
-const int GL_TEXTURE_Q_SIZE_MTX = 0x89A2;
-const int GL_TEXTURE_RED_SIZE = 0x805C;
-const int GL_TEXTURE_RED_SIZE_EXT = 0x805C;
-const int GL_TEXTURE_RESIDENT = 0x8067;
-const int GL_TEXTURE_RESIDENT_EXT = 0x8067;
-const int GL_TEXTURE_STACK_DEPTH = 0x0BA5;
-const int GL_TEXTURE_TOO_LARGE_EXT = 0x8065;
-const int GL_TEXTURE_U_SIZE_MTX = 0x89A0;
-const int GL_TEXTURE_V_SIZE_MTX = 0x89A1;
-const int GL_TEXTURE_WIDTH = 0x1000;
-const int GL_TEXTURE_WRAP_Q_SGIS = 0x8137;
-const int GL_TEXTURE_WRAP_R = 0x8072;
-const int GL_TEXTURE_WRAP_R_EXT = 0x8072;
-const int GL_TEXTURE_WRAP_S = 0x2802;
-const int GL_TEXTURE_WRAP_T = 0x2803;
-const int GL_TEX_UNSIGNED_MTX = 0x8AC0;
-const int GL_TRANSFORM_BIT = 0x00001000;
-const int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7;
-const int GL_TRIANGLE_FAN = 0x0006;
-const int GL_TRIANGLES = 0x0004;
-const int GL_TRIANGLE_STRIP = 0x0005;
-const int GL_TRUE = 0x1;
-const int GL_UNPACK_ALIGNMENT = 0x0CF5;
-const int GL_UNPACK_CMYK_HINT_EXT = 0x800F;
-const int GL_UNPACK_IMAGE_DEPTH_SGIS = 0x8133;
-const int GL_UNPACK_LSB_FIRST = 0x0CF1;
-const int GL_UNPACK_RESAMPLE_SGIX = 0x842D;
-const int GL_UNPACK_ROW_LENGTH = 0x0CF2;
-const int GL_UNPACK_SKIP_IMAGES = 0x806D;
-const int GL_UNPACK_SKIP_IMAGES_EXT = 0x806D;
-const int GL_UNPACK_SKIP_PIXELS = 0x0CF4;
-const int GL_UNPACK_SKIP_ROWS = 0x0CF3;
-const int GL_UNPACK_SKIP_VOLUMES_SGIS = 0x8132;
-const int GL_UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1;
-const int GL_UNPACK_SWAP_BYTES = 0x0CF0;
-const int GL_UNSIGNED_BYTE = 0x1401;
-const int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362;
-const int GL_UNSIGNED_BYTE_3_3_2 = 0x8032;
-const int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032;
-const int GL_UNSIGNED_IDENTITY_NV = 0x8536;
-const int GL_UNSIGNED_INT = 0x1405;
-const int GL_UNSIGNED_INT_10_10_10_2 = 0x8036;
-const int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036;
-const int GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368;
-const int GL_UNSIGNED_INT_8_8_8_8 = 0x8035;
-const int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035;
-const int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367;
-const int GL_UNSIGNED_INT_B10_B10_B10_B2_MTX = 0x89AD;
-const int GL_UNSIGNED_INT_S10_S10_S10_S2_MTX = 0x89A7;
-const int GL_UNSIGNED_INT_S8_S8_U8_X8_MTX = 0x89A6;
-const int GL_UNSIGNED_INVERT_NV = 0x8537;
-const int GL_UNSIGNED_SHORT = 0x1403;
-const int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366;
-const int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033;
-const int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033;
-const int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365;
-const int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034;
-const int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034;
-const int GL_UNSIGNED_SHORT_5_6_5 = 0x8363;
-const int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364;
-const int GL_UNSIGNED_SHORT_B4_B4_B4_B4_MTX = 0x89AA;
-const int GL_UNSIGNED_SHORT_B5_B5_B5_B1_MTX = 0x89AB;
-const int GL_UNSIGNED_SHORT_B5_B5_B5_X1_MTX = 0x89AC;
-const int GL_UNSIGNED_SHORT_S5_S5_U6_MTX = 0x89A5;
-const int GL_UV16_MTX = 0x89CB;
-const int GL_UV8_MTX = 0x89CA;
-const int GL_UV_MTX = 0x89A3;
-const int GL_UVQ_MTX = 0x89A4;
-const int GL_V2F = 0x2A20;
-const int GL_V3F = 0x2A21;
-const int GL_VARIABLE_A_NV = 0x8523;
-const int GL_VARIABLE_B_NV = 0x8524;
-const int GL_VARIABLE_C_NV = 0x8525;
-const int GL_VARIABLE_D_NV = 0x8526;
-const int GL_VARIABLE_E_NV = 0x8527;
-const int GL_VARIABLE_F_NV = 0x8528;
-const int GL_VARIABLE_G_NV = 0x8529;
-const int GL_VARIANT_EXT = 0x87C1;
-const int GL_VECTOR_EXT = 0x87BF;
-const int GL_VENDOR = 0x1F00;
-const int GL_VERSION = 0x1F02;
-const int GL_VERSION_1_1 = 1;
-const int GL_VERSION_1_2 = 1;
-const int GL_VERSION_1_3 = 1;
-const int GL_VERTEX_ARRAY = 0x8074;
-const int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D;
-const int GL_VERTEX_ARRAY_EXT = 0x8074;
-const int GL_VERTEX_ARRAY_RANGE_NV = 0x851D;
-const int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521;
-const int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F;
-const int GL_VERTEX_ARRAY_SIZE = 0x807A;
-const int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A;
-const int GL_VERTEX_ARRAY_STRIDE = 0x807C;
-const int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C;
-const int GL_VERTEX_ARRAY_TYPE = 0x807B;
-const int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B;
-const int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622;
-const int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A;
-const int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645;
-const int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623;
-const int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624;
-const int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625;
-const int GL_VERTEX_BLEND_ARB = 0x86A7;
-const int GL_VERTEX_PROGRAM_ARB = 0x8620;
-const int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642;
-const int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643;
-const int GL_VERTEX_SHADER_BINDING_EXT = 0x8781;
-const int GL_VERTEX_SHADER_EXT = 0x8780;
-const int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF;
-const int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1;
-const int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2;
-const int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3;
-const int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4;
-const int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0;
-const int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C;
-const int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510;
-const int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D;
-const int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F;
-const int GL_VERTEX_WEIGHTING_EXT = 0x8509;
-const int GL_VIEWPORT = 0x0BA2;
-const int GL_VIEWPORT_BIT = 0x00000800;
-const int GL_WEIGHT_ARRAY_ARB = 0x86AD;
-const int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC;
-const int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB;
-const int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA;
-const int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9;
-const int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6;
-const int GL_W_EXT = 0x87D8;
-const int GL_X_EXT = 0x87D5;
-const int GL_XOR = 0x1506;
-const int GL_YCRCB_422_SGIX = 0x81BB;
-const int GL_YCRCB_444_SGIX = 0x81BC;
-const int GL_YCRCBA_SGIX = 0x8319;
-const int GL_YCRCB_SGIX = 0x8318;
-const int GL_Y_EXT = 0x87D6;
-const int GL_ZERO = 0;
-const int GL_ZERO_EXT = 0x87DD;
-const int GL_Z_EXT = 0x87D7;
-const int GL_ZOOM_X = 0x0D16;
-const int GL_ZOOM_Y = 0x0D17;
-const int NEEDEDMATROXFN = 1;
-const int NOTMATROXGLEXTH = 1;
-const int NOTMATROXGLH = 1;
-alias GL_DOUBLE GL_DOUBLE_EXT;
-alias GL_INDEX_LOGIC_OP GL_LOGIC_OP;
-alias void GLvoid;
-alias float GLfloat;
-alias void function(uint, float *) _BCD_func__1253;
-alias _BCD_func__1253 PFNGLPOINTPARAMETERFVEXTPROC;
-alias void function(uint, float) _BCD_func__1254;
-alias _BCD_func__1254 PFNGLPOINTPARAMETERFEXTPROC;
-alias _BCD_func__1253 PFNGLPOINTPARAMETERFVARBPROC;
-alias _BCD_func__1254 PFNGLPOINTPARAMETERFARBPROC;
-alias void function(uint, int, void *) _BCD_func__1255;
-alias _BCD_func__1255 PFNGLGETCOMPRESSEDTEXIMAGEARBPROC;
-alias void function(uint, int, int, int, uint, int, void *) _BCD_func__1256;
-alias _BCD_func__1256 PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC;
-alias void function(uint, int, int, int, int, int, uint, int, void *) _BCD_func__1257;
-alias _BCD_func__1257 PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC;
-alias void function(uint, int, int, int, int, int, int, int, uint, int, void *) _BCD_func__1258;
-alias _BCD_func__1258 PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC;
-alias void function(uint, int, int, int, int, int, void *) _BCD_func__1259;
-alias _BCD_func__1259 PFNGLCOMPRESSEDTEXIMAGE1DARBPROC;
-alias void function(uint, int, int, int, int, int, int, void *) _BCD_func__1260;
-alias _BCD_func__1260 PFNGLCOMPRESSEDTEXIMAGE2DARBPROC;
-alias void function(uint, int, int, int, int, int, int, int, void *) _BCD_func__1261;
-alias _BCD_func__1261 PFNGLCOMPRESSEDTEXIMAGE3DARBPROC;
-alias uint GLuint;
-alias void function(uint, uint, uint *) _BCD_func__1262;
-alias _BCD_func__1262 PFNGLGETTEXADDRESSPARAMUIVEXTPROC;
-alias void function(uint, uint, float *) _BCD_func__1263;
-alias _BCD_func__1263 PFNGLGETTEXADDRESSPARAMFVEXTPROC;
-alias short GLshort;
-alias void function(uint, short *) _BCD_func__1264;
-alias _BCD_func__1264 PFNGLGETFRAGPROCINVARIANTSVEXTPROC;
-alias int GLint;
-alias void function(uint, int *) _BCD_func__1265;
-alias _BCD_func__1265 PFNGLGETFRAGPROCINVARIANTIVEXTPROC;
-alias _BCD_func__1253 PFNGLGETFRAGPROCINVARIANTFVEXTPROC;
-alias double GLdouble;
-alias void function(uint, double *) _BCD_func__1266;
-alias _BCD_func__1266 PFNGLGETFRAGPROCINVARIANTDVEXTPROC;
-alias char GLbyte;
-alias void function(uint, char *) _BCD_func__1267;
-alias _BCD_func__1267 PFNGLGETFRAGPROCINVARIANTBVEXTPROC;
-alias void function(uint, uint, uint) _BCD_func__1268;
-alias _BCD_func__1268 PFNGLTEXADDRESSPARAMUIEXTPROC;
-alias void function(uint, uint, float *) _BCD_func__1269;
-alias _BCD_func__1269 PFNGLTEXADDRESSPARAMFVEXTPROC;
-alias void function(uint, uint, uint, uint, uint) _BCD_func__1270;
-alias _BCD_func__1270 PFNGLTEXADDRESSOP4EXTPROC;
-alias void function(uint, uint, uint, uint) _BCD_func__1271;
-alias _BCD_func__1271 PFNGLTEXADDRESSOP3EXTPROC;
-alias _BCD_func__1268 PFNGLTEXADDRESSOP2EXTPROC;
-alias void function(uint, uint) _BCD_func__1272;
-alias _BCD_func__1272 PFNGLTEXADDRESSOP1EXTPROC;
-alias _BCD_func__1272 PFNGLTEXADDRESSHINTSEXTPROC;
-alias void function(uint, short *) _BCD_func__1273;
-alias _BCD_func__1273 PFNGLSETFRAGPROCINVARIANTSVPROC;
-alias void function(uint, int *) _BCD_func__1274;
-alias _BCD_func__1274 PFNGLSETFRAGPROCINVARIANTIVPROC;
-alias void function(uint, float *) _BCD_func__1275;
-alias _BCD_func__1275 PFNGLSETFRAGPROCINVARIANTFVPROC;
-alias void function(uint, double *) _BCD_func__1276;
-alias _BCD_func__1276 PFNGLSETFRAGPROCINVARIANTDVPROC;
-alias void function(uint, char *) _BCD_func__1277;
-alias _BCD_func__1277 PFNGLSETFRAGPROCINVARIANTBVPROC;
-alias char GLboolean;
-alias char function(uint) _BCD_func__1278;
-alias _BCD_func__1278 PFNGLISFRAGSHADEREXTPROC;
-alias uint function(int) _BCD_func__1279;
-alias _BCD_func__1279 PFNGLGENFRAGSHADERSEXTPROC;
-alias uint function(short *) _BCD_func__1280;
-alias _BCD_func__1280 PFNGLGENFRAGPROCINVARIANTSVEXTPROC;
-alias uint function(int *) _BCD_func__1281;
-alias _BCD_func__1281 PFNGLGENFRAGPROCINVARIANTIVEXTPROC;
-alias uint function(float *) _BCD_func__1282;
-alias _BCD_func__1282 PFNGLGENFRAGPROCINVARIANTFVEXTPROC;
-alias uint function(double *) _BCD_func__1283;
-alias _BCD_func__1283 PFNGLGENFRAGPROCINVARIANTDVEXTPROC;
-alias uint function(char *) _BCD_func__1284;
-alias _BCD_func__1284 PFNGLGENFRAGPROCINVARIANTBVEXTPROC;
-alias _BCD_func__1270 PFNGLFRAGPROCRGBAOP3EXTPROC;
-alias _BCD_func__1271 PFNGLFRAGPROCRGBAOP2EXTPROC;
-alias _BCD_func__1268 PFNGLFRAGPROCRGBAOP1EXTPROC;
-alias _BCD_func__1268 PFNGLFRAGPROCOPPARAMMTXEXTPROC;
-alias _BCD_func__1270 PFNGLFRAGPROCALPHAOP3EXTPROC;
-alias _BCD_func__1271 PFNGLFRAGPROCALPHAOP2EXTPROC;
-alias _BCD_func__1268 PFNGLFRAGPROCALPHAOP1EXTPROC;
-alias void function() _BCD_func__1285;
-alias _BCD_func__1285 PFNGLENDFRAGSHADEREXTPROC;
-alias void function(int, uint *) _BCD_func__1286;
-alias _BCD_func__1286 PFNGLDELETEFRAGSHADERSEXTPROC;
-alias void function(uint) _BCD_func__1287;
-alias _BCD_func__1287 PFNGLBINDFRAGSHADEREXTPROC;
-alias _BCD_func__1285 PFNGLBEGINFRAGSHADEREXTPROC;
-alias _BCD_func__1263 PFNGLGETLOCALCONSTANTFLOATVEXTPROC;
-alias void function(uint, uint, int *) _BCD_func__1288;
-alias _BCD_func__1288 PFNGLGETLOCALCONSTANTINTEGERVEXTPROC;
-alias void function(uint, uint, char *) _BCD_func__1289;
-alias _BCD_func__1289 PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC;
-alias _BCD_func__1263 PFNGLGETINVARIANTFLOATVEXTPROC;
-alias _BCD_func__1288 PFNGLGETINVARIANTINTEGERVEXTPROC;
-alias _BCD_func__1289 PFNGLGETINVARIANTBOOLEANVEXTPROC;
-alias void function(uint, uint, void * *) _BCD_func__1290;
-alias _BCD_func__1290 PFNGLGETVARIANTPOINTERVEXTPROC;
-alias _BCD_func__1263 PFNGLGETVARIANTFLOATVEXTPROC;
-alias _BCD_func__1288 PFNGLGETVARIANTINTEGERVEXTPROC;
-alias _BCD_func__1289 PFNGLGETVARIANTBOOLEANVEXTPROC;
-alias char function(uint, uint) _BCD_func__1291;
-alias _BCD_func__1291 PFNGLISVARIANTENABLEDEXTPROC;
-alias uint function(uint) _BCD_func__1292;
-alias _BCD_func__1292 PFNGLBINDPARAMETEREXTPROC;
-alias uint function(uint, uint) _BCD_func__1293;
-alias _BCD_func__1293 PFNGLBINDTEXTUREUNITPARAMETEREXTPROC;
-alias uint function(uint, uint, uint) _BCD_func__1294;
-alias _BCD_func__1294 PFNGLBINDTEXGENPARAMETEREXTPROC;
-alias _BCD_func__1293 PFNGLBINDMATERIALPARAMETEREXTPROC;
-alias _BCD_func__1293 PFNGLBINDLIGHTPARAMETEREXTPROC;
-alias void function(uint) _BCD_func__1295;
-alias _BCD_func__1295 PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC;
-alias _BCD_func__1295 PFNGLENABLEVARIANTCLIENTSTATEEXTPROC;
-alias void function(uint, uint, int, void *) _BCD_func__1296;
-alias _BCD_func__1296 PFNGLVARIANTPOINTEREXTPROC;
-alias void function(uint, uint *) _BCD_func__1297;
-alias _BCD_func__1297 PFNGLVARIANTUIVEXTPROC;
-alias ushort GLushort;
-alias void function(uint, ushort *) _BCD_func__1298;
-alias _BCD_func__1298 PFNGLVARIANTUSVEXTPROC;
-alias char GLubyte;
-alias void function(uint, char *) _BCD_func__1299;
-alias _BCD_func__1299 PFNGLVARIANTUBVEXTPROC;
-alias void function(uint, double *) _BCD_func__1300;
-alias _BCD_func__1300 PFNGLVARIANTDVEXTPROC;
-alias void function(uint, float *) _BCD_func__1301;
-alias _BCD_func__1301 PFNGLVARIANTFVEXTPROC;
-alias void function(uint, int *) _BCD_func__1302;
-alias _BCD_func__1302 PFNGLVARIANTIVEXTPROC;
-alias void function(uint, short *) _BCD_func__1303;
-alias _BCD_func__1303 PFNGLVARIANTSVEXTPROC;
-alias void function(uint, char *) _BCD_func__1304;
-alias _BCD_func__1304 PFNGLVARIANTBVEXTPROC;
-alias void function(uint, uint, void *) _BCD_func__1305;
-alias _BCD_func__1305 PFNGLSETLOCALCONSTANTEXTPROC;
-alias _BCD_func__1305 PFNGLSETINVARIANTEXTPROC;
-alias uint function(uint, uint, uint, uint) _BCD_func__1306;
-alias _BCD_func__1306 PFNGLGENSYMBOLSEXTPROC;
-alias void function(uint, uint, uint) _BCD_func__1307;
-alias _BCD_func__1307 PFNGLEXTRACTCOMPONENTEXTPROC;
-alias _BCD_func__1307 PFNGLINSERTCOMPONENTEXTPROC;
-alias void function(uint, uint, uint, uint, uint, uint) _BCD_func__1308;
-alias _BCD_func__1308 PFNGLWRITEMASKEXTPROC;
-alias _BCD_func__1308 PFNGLSWIZZLEEXTPROC;
-alias void function(uint, uint, uint, uint, uint) _BCD_func__1309;
-alias _BCD_func__1309 PFNGLSHADEROP3EXTPROC;
-alias void function(uint, uint, uint, uint) _BCD_func__1310;
-alias _BCD_func__1310 PFNGLSHADEROP2EXTPROC;
-alias _BCD_func__1307 PFNGLSHADEROP1EXTPROC;
-alias _BCD_func__1295 PFNGLDELETEVERTEXSHADEREXTPROC;
-alias _BCD_func__1292 PFNGLGENVERTEXSHADERSEXTPROC;
-alias _BCD_func__1295 PFNGLBINDVERTEXSHADEREXTPROC;
-alias void function() _BCD_func__1311;
-alias _BCD_func__1311 PFNGLENDVERTEXSHADEREXTPROC;
-alias _BCD_func__1311 PFNGLBEGINVERTEXSHADEREXTPROC;
-alias _BCD_func__1301 PFNGLCULLPARAMETERFVEXTPROC;
-alias _BCD_func__1300 PFNGLCULLPARAMETERDVEXTPROC;
-alias void function(uint, uint, uint, int) _BCD_func__1312;
-alias _BCD_func__1312 PFNGLDRAWRANGEELEMENTARRAYATIPROC;
-alias void function(uint, int) _BCD_func__1313;
-alias _BCD_func__1313 PFNGLDRAWELEMENTARRAYATIPROC;
-alias void function(uint, void *) _BCD_func__1314;
-alias _BCD_func__1314 PFNGLELEMENTPOINTERATIPROC;
-alias _BCD_func__1288 PFNGLGETVARIANTARRAYOBJECTIVATIPROC;
-alias _BCD_func__1263 PFNGLGETVARIANTARRAYOBJECTFVATIPROC;
-alias _BCD_func__1288 PFNGLGETARRAYOBJECTIVATIPROC;
-alias _BCD_func__1263 PFNGLGETARRAYOBJECTFVATIPROC;
-alias _BCD_func__1288 PFNGLGETOBJECTBUFFERIVATIPROC;
-alias _BCD_func__1263 PFNGLGETOBJECTBUFFERFVATIPROC;
-alias void function(uint, uint, int, uint, uint) _BCD_func__1315;
-alias _BCD_func__1315 PFNGLVARIANTARRAYOBJECTATIPROC;
-alias void function(uint, int, uint, int, uint, uint) _BCD_func__1316;
-alias _BCD_func__1316 PFNGLARRAYOBJECTATIPROC;
-alias void function(uint, uint, int, void *, uint) _BCD_func__1317;
-alias _BCD_func__1317 PFNGLUPDATEOBJECTBUFFERATIPROC;
-alias _BCD_func__1278 PFNGLISOBJECTBUFFERATIPROC;
-alias _BCD_func__1287 PFNGLFREEOBJECTBUFFERATIPROC;
-alias uint function(int, void *, uint) _BCD_func__1318;
-alias _BCD_func__1318 PFNGLNEWOBJECTBUFFERATIPROC;
-alias char function(int, int, int, int) _BCD_func__1319;
-alias _BCD_func__1319 PFNGLVALIDBACKBUFFERHINTPROC;
-alias _BCD_func__1285 PFNGLWINDOWBACKBUFFERHINTPROC;
-alias char function() _BCD_func__1320;
-alias _BCD_func__1320 PFNGLINITVALIDBACKBUFFERHINTAUTODESKPROC;
-alias int GLsizei;
-alias void function(uint, int *, uint, void * *, int) _BCD_func__1321;
-alias _BCD_func__1321 PFNGLMULTIDRAWELEMENTSEXTPROC;
-alias void function(uint, int *, int *, int) _BCD_func__1322;
-alias _BCD_func__1322 PFNGLMULTIDRAWARRAYSEXTPROC;
-alias void function(int, uint, int, void *) _BCD_func__1323;
-alias _BCD_func__1323 PFNGLSECONDARYCOLORPOINTEREXTPROC;
-alias void function(double *) _BCD_func__1324;
-alias _BCD_func__1324 PFNGLSECONDARYCOLOR3DVEXTPROC;
-alias void function(float *) _BCD_func__1325;
-alias _BCD_func__1325 PFNGLSECONDARYCOLOR3FVEXTPROC;
-alias void function(uint *) _BCD_func__1326;
-alias _BCD_func__1326 PFNGLSECONDARYCOLOR3UIVEXTPROC;
-alias void function(int *) _BCD_func__1327;
-alias _BCD_func__1327 PFNGLSECONDARYCOLOR3IVEXTPROC;
-alias void function(ushort *) _BCD_func__1328;
-alias _BCD_func__1328 PFNGLSECONDARYCOLOR3USVEXTPROC;
-alias void function(short *) _BCD_func__1329;
-alias _BCD_func__1329 PFNGLSECONDARYCOLOR3SVEXTPROC;
-alias void function(char *) _BCD_func__1330;
-alias _BCD_func__1330 PFNGLSECONDARYCOLOR3UBVEXTPROC;
-alias void function(char *) _BCD_func__1331;
-alias _BCD_func__1331 PFNGLSECONDARYCOLOR3BVEXTPROC;
-alias void function(double, double, double) _BCD_func__1332;
-alias _BCD_func__1332 PFNGLSECONDARYCOLOR3DEXTPROC;
-alias void function(float, float, float) _BCD_func__1333;
-alias _BCD_func__1333 PFNGLSECONDARYCOLOR3FEXTPROC;
-alias _BCD_func__1307 PFNGLSECONDARYCOLOR3UIEXTPROC;
-alias void function(int, int, int) _BCD_func__1334;
-alias _BCD_func__1334 PFNGLSECONDARYCOLOR3IEXTPROC;
-alias void function(ushort, ushort, ushort) _BCD_func__1335;
-alias _BCD_func__1335 PFNGLSECONDARYCOLOR3USEXTPROC;
-alias void function(short, short, short) _BCD_func__1336;
-alias _BCD_func__1336 PFNGLSECONDARYCOLOR3SEXTPROC;
-alias void function(char, char, char) _BCD_func__1337;
-alias _BCD_func__1337 PFNGLSECONDARYCOLOR3UBEXTPROC;
-alias void function(char, char, char) _BCD_func__1338;
-alias _BCD_func__1338 PFNGLSECONDARYCOLOR3BEXTPROC;
-alias void function(uint, int, void *) _BCD_func__1339;
-alias _BCD_func__1339 PFNGLFOGCOORDPOINTEREXTPROC;
-alias _BCD_func__1324 PFNGLFOGCOORDDVEXTPROC;
-alias _BCD_func__1325 PFNGLFOGCOORDFVEXTPROC;
-alias void function(double) _BCD_func__1340;
-alias _BCD_func__1340 PFNGLFOGCOORDDEXTPROC;
-alias void function(float) _BCD_func__1341;
-alias _BCD_func__1341 PFNGLFOGCOORDFEXTPROC;
-alias _BCD_func__1324 PFNGLMULTTRANSPOSEMATRIXDARBPROC;
-alias _BCD_func__1325 PFNGLMULTTRANSPOSEMATRIXFARBPROC;
-alias _BCD_func__1324 PFNGLLOADTRANSPOSEMATRIXDARBPROC;
-alias _BCD_func__1325 PFNGLLOADTRANSPOSEMATRIXFARBPROC;
-alias _BCD_func__1311 PFNGLUNLOCKARRAYSEXTPROC;
-alias void function(int, int) _BCD_func__1342;
-alias _BCD_func__1342 PFNGLLOCKARRAYSEXTPROC;
-alias void function(uint, uint, int *) _BCD_func__1343;
-alias _BCD_func__1343 PFNGLGETCOLORTABLEPARAMETERIVEXTPROC;
-alias void function(uint, uint, float *) _BCD_func__1344;
-alias _BCD_func__1344 PFNGLGETCOLORTABLEPARAMETERFVEXTPROC;
-alias void function(uint, uint, uint, void *) _BCD_func__1345;
-alias _BCD_func__1345 PFNGLGETCOLORTABLEEXTPROC;
-alias void function(uint, uint, int, int, int) _BCD_func__1346;
-alias _BCD_func__1346 PFNGLCOPYCOLORTABLEEXTPROC;
-alias void function(uint, uint, int, uint, uint, void *) _BCD_func__1347;
-alias _BCD_func__1347 PFNGLCOLORTABLEEXTPROC;
-alias void function(uint, int, int, uint, uint, void *) _BCD_func__1348;
-alias _BCD_func__1348 PFNGLCOLORSUBTABLEEXTPROC;
-alias void function(int, uint, int, int, void *) _BCD_func__1351;
-alias _BCD_func__1351 PFNGLVERTEXPOINTEREXTPROC;
-alias _BCD_func__1351 PFNGLTEXCOORDPOINTEREXTPROC;
-alias void function(uint, int, int, void *) _BCD_func__1352;
-alias _BCD_func__1352 PFNGLNORMALPOINTEREXTPROC;
-alias _BCD_func__1352 PFNGLINDEXPOINTEREXTPROC;
-alias void function(uint, void * *) _BCD_func__1353;
-alias _BCD_func__1353 PFNGLGETPOINTERVEXTPROC;
-alias void function(int, int, char *) _BCD_func__1354;
-alias _BCD_func__1354 PFNGLEDGEFLAGPOINTEREXTPROC;
-alias void function(uint, int, int) _BCD_func__1355;
-alias _BCD_func__1355 PFNGLDRAWARRAYSEXTPROC;
-alias _BCD_func__1351 PFNGLCOLORPOINTEREXTPROC;
-alias void function(int) _BCD_func__1356;
-alias _BCD_func__1356 PFNGLARRAYELEMENTEXTPROC;
-alias void function(uint, short *) _BCD_func__1359;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD4SVARBPROC;
-alias void function(uint, short, short, short, short) _BCD_func__1360;
-alias _BCD_func__1360 PFNGLMULTITEXCOORD4SARBPROC;
-alias void function(uint, int *) _BCD_func__1361;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD4IVARBPROC;
-alias void function(uint, int, int, int, int) _BCD_func__1362;
-alias _BCD_func__1362 PFNGLMULTITEXCOORD4IARBPROC;
-alias void function(uint, float *) _BCD_func__1363;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD4FVARBPROC;
-alias void function(uint, float, float, float, float) _BCD_func__1364;
-alias _BCD_func__1364 PFNGLMULTITEXCOORD4FARBPROC;
-alias void function(uint, double *) _BCD_func__1365;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD4DVARBPROC;
-alias void function(uint, double, double, double, double) _BCD_func__1366;
-alias _BCD_func__1366 PFNGLMULTITEXCOORD4DARBPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD3SVARBPROC;
-alias void function(uint, short, short, short) _BCD_func__1367;
-alias _BCD_func__1367 PFNGLMULTITEXCOORD3SARBPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD3IVARBPROC;
-alias void function(uint, int, int, int) _BCD_func__1368;
-alias _BCD_func__1368 PFNGLMULTITEXCOORD3IARBPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD3FVARBPROC;
-alias void function(uint, float, float, float) _BCD_func__1369;
-alias _BCD_func__1369 PFNGLMULTITEXCOORD3FARBPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD3DVARBPROC;
-alias void function(uint, double, double, double) _BCD_func__1370;
-alias _BCD_func__1370 PFNGLMULTITEXCOORD3DARBPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD2SVARBPROC;
-alias void function(uint, short, short) _BCD_func__1371;
-alias _BCD_func__1371 PFNGLMULTITEXCOORD2SARBPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD2IVARBPROC;
-alias _BCD_func__1355 PFNGLMULTITEXCOORD2IARBPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD2FVARBPROC;
-alias void function(uint, float, float) _BCD_func__1372;
-alias _BCD_func__1372 PFNGLMULTITEXCOORD2FARBPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD2DVARBPROC;
-alias void function(uint, double, double) _BCD_func__1373;
-alias _BCD_func__1373 PFNGLMULTITEXCOORD2DARBPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD1SVARBPROC;
-alias void function(uint, short) _BCD_func__1374;
-alias _BCD_func__1374 PFNGLMULTITEXCOORD1SARBPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD1IVARBPROC;
-alias void function(uint, int) _BCD_func__1375;
-alias _BCD_func__1375 PFNGLMULTITEXCOORD1IARBPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD1FVARBPROC;
-alias void function(uint, float) _BCD_func__1376;
-alias _BCD_func__1376 PFNGLMULTITEXCOORD1FARBPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD1DVARBPROC;
-alias void function(uint, double) _BCD_func__1377;
-alias _BCD_func__1377 PFNGLMULTITEXCOORD1DARBPROC;
-alias _BCD_func__1295 PFNGLCLIENTACTIVETEXTUREARBPROC;
-alias _BCD_func__1295 PFNGLACTIVETEXTUREARBPROC;
-alias void function(uint, int, void *) _BCD_func__1378;
-alias _BCD_func__1378 PFNGLGETCOMPRESSEDTEXIMAGEPROC;
-alias void function(uint, int, int, int, uint, int, void *) _BCD_func__1379;
-alias _BCD_func__1379 PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC;
-alias void function(uint, int, int, int, int, int, uint, int, void *) _BCD_func__1380;
-alias _BCD_func__1380 PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC;
-alias void function(uint, int, int, int, int, int, int, int, uint, int, void *) _BCD_func__1381;
-alias _BCD_func__1381 PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC;
-alias void function(uint, int, uint, int, int, int, void *) _BCD_func__1382;
-alias _BCD_func__1382 PFNGLCOMPRESSEDTEXIMAGE1DPROC;
-alias void function(uint, int, uint, int, int, int, int, void *) _BCD_func__1383;
-alias _BCD_func__1383 PFNGLCOMPRESSEDTEXIMAGE2DPROC;
-alias void function(uint, int, uint, int, int, int, int, int, void *) _BCD_func__1384;
-alias _BCD_func__1384 PFNGLCOMPRESSEDTEXIMAGE3DPROC;
-alias void function(float, char) _BCD_func__1385;
-alias _BCD_func__1385 PFNGLSAMPLECOVERAGEPROC;
-alias _BCD_func__1324 PFNGLMULTTRANSPOSEMATRIXDPROC;
-alias _BCD_func__1325 PFNGLMULTTRANSPOSEMATRIXFPROC;
-alias _BCD_func__1324 PFNGLLOADTRANSPOSEMATRIXDPROC;
-alias _BCD_func__1325 PFNGLLOADTRANSPOSEMATRIXFPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD4SVPROC;
-alias _BCD_func__1360 PFNGLMULTITEXCOORD4SPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD4IVPROC;
-alias _BCD_func__1362 PFNGLMULTITEXCOORD4IPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD4FVPROC;
-alias _BCD_func__1364 PFNGLMULTITEXCOORD4FPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD4DVPROC;
-alias _BCD_func__1366 PFNGLMULTITEXCOORD4DPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD3SVPROC;
-alias _BCD_func__1367 PFNGLMULTITEXCOORD3SPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD3IVPROC;
-alias _BCD_func__1368 PFNGLMULTITEXCOORD3IPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD3FVPROC;
-alias _BCD_func__1369 PFNGLMULTITEXCOORD3FPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD3DVPROC;
-alias _BCD_func__1370 PFNGLMULTITEXCOORD3DPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD2SVPROC;
-alias _BCD_func__1371 PFNGLMULTITEXCOORD2SPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD2IVPROC;
-alias _BCD_func__1355 PFNGLMULTITEXCOORD2IPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD2FVPROC;
-alias _BCD_func__1372 PFNGLMULTITEXCOORD2FPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD2DVPROC;
-alias _BCD_func__1373 PFNGLMULTITEXCOORD2DPROC;
-alias _BCD_func__1359 PFNGLMULTITEXCOORD1SVPROC;
-alias _BCD_func__1374 PFNGLMULTITEXCOORD1SPROC;
-alias _BCD_func__1361 PFNGLMULTITEXCOORD1IVPROC;
-alias _BCD_func__1375 PFNGLMULTITEXCOORD1IPROC;
-alias _BCD_func__1363 PFNGLMULTITEXCOORD1FVPROC;
-alias _BCD_func__1376 PFNGLMULTITEXCOORD1FPROC;
-alias _BCD_func__1365 PFNGLMULTITEXCOORD1DVPROC;
-alias _BCD_func__1377 PFNGLMULTITEXCOORD1DPROC;
-alias _BCD_func__1295 PFNGLCLIENTACTIVETEXTUREPROC;
-alias _BCD_func__1295 PFNGLACTIVETEXTUREPROC;
-alias _BCD_func__1295 PFNGLRESETMINMAXPROC;
-alias _BCD_func__1295 PFNGLRESETHISTOGRAMPROC;
-alias void function(uint, uint, char) _BCD_func__1386;
-alias _BCD_func__1386 PFNGLMINMAXPROC;
-alias void function(uint, int, uint, char) _BCD_func__1387;
-alias _BCD_func__1387 PFNGLHISTOGRAMPROC;
-alias _BCD_func__1343 PFNGLGETMINMAXPARAMETERIVPROC;
-alias _BCD_func__1344 PFNGLGETMINMAXPARAMETERFVPROC;
-alias void function(uint, char, uint, uint, void *) _BCD_func__1388;
-alias _BCD_func__1388 PFNGLGETMINMAXPROC;
-alias _BCD_func__1343 PFNGLGETHISTOGRAMPARAMETERIVPROC;
-alias _BCD_func__1344 PFNGLGETHISTOGRAMPARAMETERFVPROC;
-alias _BCD_func__1388 PFNGLGETHISTOGRAMPROC;
-alias void function(uint, uint, int, int, uint, uint, void *, void *) _BCD_func__1389;
-alias _BCD_func__1389 PFNGLSEPARABLEFILTER2DPROC;
-alias void function(uint, uint, uint, void *, void *, void *) _BCD_func__1390;
-alias _BCD_func__1390 PFNGLGETSEPARABLEFILTERPROC;
-alias _BCD_func__1343 PFNGLGETCONVOLUTIONPARAMETERIVPROC;
-alias _BCD_func__1344 PFNGLGETCONVOLUTIONPARAMETERFVPROC;
-alias _BCD_func__1345 PFNGLGETCONVOLUTIONFILTERPROC;
-alias void function(uint, uint, int, int, int, int) _BCD_func__1391;
-alias _BCD_func__1391 PFNGLCOPYCONVOLUTIONFILTER2DPROC;
-alias _BCD_func__1346 PFNGLCOPYCONVOLUTIONFILTER1DPROC;
-alias void function(uint, uint, int *) _BCD_func__1392;
-alias _BCD_func__1392 PFNGLCONVOLUTIONPARAMETERIVPROC;
-alias void function(uint, uint, int) _BCD_func__1393;
-alias _BCD_func__1393 PFNGLCONVOLUTIONPARAMETERIPROC;
-alias void function(uint, uint, float *) _BCD_func__1394;
-alias _BCD_func__1394 PFNGLCONVOLUTIONPARAMETERFVPROC;
-alias void function(uint, uint, float) _BCD_func__1395;
-alias _BCD_func__1395 PFNGLCONVOLUTIONPARAMETERFPROC;
-alias void function(uint, uint, int, int, uint, uint, void *) _BCD_func__1396;
-alias _BCD_func__1396 PFNGLCONVOLUTIONFILTER2DPROC;
-alias _BCD_func__1347 PFNGLCONVOLUTIONFILTER1DPROC;
-alias _BCD_func__1362 PFNGLCOPYCOLORSUBTABLEPROC;
-alias _BCD_func__1348 PFNGLCOLORSUBTABLEPROC;
-alias _BCD_func__1343 PFNGLGETCOLORTABLEPARAMETERIVPROC;
-alias _BCD_func__1344 PFNGLGETCOLORTABLEPARAMETERFVPROC;
-alias _BCD_func__1345 PFNGLGETCOLORTABLEPROC;
-alias _BCD_func__1346 PFNGLCOPYCOLORTABLEPROC;
-alias _BCD_func__1392 PFNGLCOLORTABLEPARAMETERIVPROC;
-alias _BCD_func__1394 PFNGLCOLORTABLEPARAMETERFVPROC;
-alias _BCD_func__1347 PFNGLCOLORTABLEPROC;
-alias _BCD_func__1295 PFNGLBLENDEQUATIONPROC;
-alias void function(float, float, float, float) _BCD_func__1397;
-alias _BCD_func__1397 PFNGLBLENDCOLORPROC;
-alias void function(uint, int, int, int, int, int, int, int, int) _BCD_func__1398;
-alias _BCD_func__1398 PFNGLCOPYTEXSUBIMAGE3DPROC;
-alias void function(uint, int, int, int, int, int, int, int, uint, uint, void *) _BCD_func__1399;
-alias _BCD_func__1399 PFNGLTEXSUBIMAGE3DPROC;
-alias void function(uint, int, int, int, int, int, int, uint, uint, void *) _BCD_func__1400;
-alias _BCD_func__1400 PFNGLTEXIMAGE3DPROC;
-alias void function(uint, uint, uint, uint, void *) _BCD_func__1401;
-alias _BCD_func__1401 PFNGLDRAWRANGEELEMENTSPROC;
-alias double GLclampd;
-alias float GLclampf;
-alias uint GLbitfield;
-alias uint GLenum;
-version(DYNLINK){
-extern (C) void function(uint, int *, uint, void * *, int)glMultiDrawElementsSUN;
-extern (C) void function(uint, int *, int *, int)glMultiDrawArraysSUN;
-extern (C) void function(uint, int, int, int, int, int, uint, uint, void *)glTexSubImage2DEXT;
-extern (C) void function(uint, int, int, int, uint, uint, void *)glTexSubImage1DEXT;
-extern (C) void function(uint, float *)glPointParameterfvARB;
-extern (C) void function(uint, float)glPointParameterfARB;
-extern (C) void function(uint, int, void *)glGetCompressedTexImageARB;
-extern (C) void function(uint, int, int, int, uint, int, void *)glCompressedTexSubImage1DARB;
-extern (C) void function(uint, int, int, int, int, int, uint, int, void *)glCompressedTexSubImage2DARB;
-extern (C) void function(uint, int, int, int, int, int, int, int, uint, int, void *)glCompressedTexSubImage3DARB;
-extern (C) void function(uint, int, int, int, int, int, void *)glCompressedTexImage1DARB;
-extern (C) void function(uint, int, int, int, int, int, int, void *)glCompressedTexImage2DARB;
-extern (C) void function(uint, int, int, int, int, int, int, int, void *)glCompressedTexImage3DARB;
-extern (C) void function(uint, uint, uint, int)glDrawRangeElementArrayATI;
-extern (C) void function(uint, int)glDrawElementArrayATI;
-extern (C) void function(uint, void *)glElementPointerATI;
-extern (C) void function(uint, uint, int *)glGetVariantArrayObjectivATI;
-extern (C) void function(uint, uint, float *)glGetVariantArrayObjectfvATI;
-extern (C) void function(uint, uint, int *)glGetArrayObjectivATI;
-extern (C) void function(uint, uint, float *)glGetArrayObjectfvATI;
-extern (C) void function(uint, uint, int *)glGetObjectBufferivATI;
-extern (C) void function(uint, uint, float *)glGetObjectBufferfvATI;
-extern (C) void function(uint, uint, int, uint, uint)glVariantArrayObjectATI;
-extern (C) void function(uint, int, uint, int, uint, uint)glArrayObjectATI;
-extern (C) void function(uint, uint, int, void *, uint)glUpdateObjectBufferATI;
-extern (C) char function(uint)glIsObjectBufferATI;
-extern (C) void function(uint)glFreeObjectBufferATI;
-extern (C) uint function(int, void *, uint)glNewObjectBufferATI;
-extern (C) void function(uint, uint, uint)glTexAddressParamuiMTX;
-extern (C) void function(uint, uint, float *)glTexAddressParamfvMTX;
-extern (C) void function(uint, uint, uint, uint, uint)glTexAddressOp4MTX;
-extern (C) void function(uint, uint, uint, uint)glTexAddressOp3MTX;
-extern (C) void function(uint, uint, uint)glTexAddressOp2MTX;
-extern (C) void function(uint, uint)glTexAddressOp1MTX;
-extern (C) void function(uint, uint)glTexAddressHintsMTX;
-extern (C) void function(uint, short *)glSetFragProcInvariantsvMTX;
-extern (C) void function(uint, int *)glSetFragProcInvariantivMTX;
-extern (C) void function(uint, float *)glSetFragProcInvariantfvMTX;
-extern (C) void function(uint, double *)glSetFragProcInvariantdvMTX;
-extern (C) void function(uint, char *)glSetFragProcInvariantbvMTX;
-extern (C) char function(uint)glIsFragShaderMTX;
-extern (C) void function(uint, uint, uint *)glGetTexAddressParamuivMTX;
-extern (C) void function(uint, uint, float *)glGetTexAddressParamfvMTX;
-extern (C) void function(uint, short *)glGetFragProcInvariantsvMTX;
-extern (C) void function(uint, int *)glGetFragProcInvariantivMTX;
-extern (C) void function(uint, float *)glGetFragProcInvariantfvMTX;
-extern (C) void function(uint, double *)glGetFragProcInvariantdvMTX;
-extern (C) void function(uint, char *)glGetFragProcInvariantbvMTX;
-extern (C) uint function(int)glGenFragShadersMTX;
-extern (C) uint function(short *)glGenFragProcInvariantsvMTX;
-extern (C) uint function(int *)glGenFragProcInvariantivMTX;
-extern (C) uint function(float *)glGenFragProcInvariantfvMTX;
-extern (C) uint function(double *)glGenFragProcInvariantdvMTX;
-extern (C) uint function(char *)glGenFragProcInvariantbvMTX;
-extern (C) void function(uint, uint, uint, uint, uint)glFragProcRGBAOp3MTX;
-extern (C) void function(uint, uint, uint, uint)glFragProcRGBAOp2MTX;
-extern (C) void function(uint, uint, uint)glFragProcRGBAOp1MTX;
-extern (C) void function(uint, uint, uint)glFragProcOpParamMTX;
-extern (C) void function(uint, uint, uint, uint, uint)glFragProcAlphaOp3MTX;
-extern (C) void function(uint, uint, uint, uint)glFragProcAlphaOp2MTX;
-extern (C) void function(uint, uint, uint)glFragProcAlphaOp1MTX;
-extern (C) void function()glEndFragShaderMTX;
-extern (C) void function(int, uint *)glDeleteFragShadersMTX;
-extern (C) void function(uint)glBindFragShaderMTX;
-extern (C) void function()glBeginFragShaderMTX;
-extern (C) void function(uint, uint, float *)glGetLocalConstantFloatvEXT;
-extern (C) void function(uint, uint, int *)glGetLocalConstantIntegervEXT;
-extern (C) void function(uint, uint, char *)glGetLocalConstantBooleanvEXT;
-extern (C) void function(uint, uint, float *)glGetInvariantFloatvEXT;
-extern (C) void function(uint, uint, int *)glGetInvariantIntegervEXT;
-extern (C) void function(uint, uint, char *)glGetInvariantBooleanvEXT;
-extern (C) void function(uint, uint, void * *)glGetVariantPointervEXT;
-extern (C) void function(uint, uint, float *)glGetVariantFloatvEXT;
-extern (C) void function(uint, uint, int *)glGetVariantIntegervEXT;
-extern (C) void function(uint, uint, char *)glGetVariantBooleanvEXT;
-extern (C) char function(uint, uint)glIsVariantEnabledEXT;
-extern (C) uint function(uint)glBindParameterEXT;
-extern (C) uint function(uint, uint)glBindTextureUnitParameterEXT;
-extern (C) uint function(uint, uint, uint)glBindTexGenParameterEXT;
-extern (C) uint function(uint, uint)glBindMaterialParameterEXT;
-extern (C) uint function(uint, uint)glBindLightParameterEXT;
-extern (C) void function(uint)glDisableVariantClientStateEXT;
-extern (C) void function(uint)glEnableVariantClientStateEXT;
-extern (C) void function(uint, uint, int, void *)glVariantPointerEXT;
-extern (C) void function(uint, uint *)glVariantuivEXT;
-extern (C) void function(uint, ushort *)glVariantusvEXT;
-extern (C) void function(uint, char *)glVariantubvEXT;
-extern (C) void function(uint, double *)glVariantdvEXT;
-extern (C) void function(uint, float *)glVariantfvEXT;
-extern (C) void function(uint, int *)glVariantivEXT;
-extern (C) void function(uint, short *)glVariantsvEXT;
-extern (C) void function(uint, char *)glVariantbvEXT;
-extern (C) void function(uint, uint, void *)glSetLocalConstantEXT;
-extern (C) void function(uint, uint, void *)glSetInvariantEXT;
-extern (C) uint function(uint, uint, uint, uint)glGenSymbolsEXT;
-extern (C) void function(uint, uint, uint)glExtractComponentEXT;
-extern (C) void function(uint, uint, uint)glInsertComponentEXT;
-extern (C) void function(uint, uint, uint, uint, uint, uint)glWriteMaskEXT;
-extern (C) void function(uint, uint, uint, uint, uint, uint)glSwizzleEXT;
-extern (C) void function(uint, uint, uint, uint, uint)glShaderOp3EXT;
-extern (C) void function(uint, uint, uint, uint)glShaderOp2EXT;
-extern (C) void function(uint, uint, uint)glShaderOp1EXT;
-extern (C) void function(uint)glDeleteVertexShaderEXT;
-extern (C) uint function(uint)glGenVertexShadersEXT;
-extern (C) void function(uint)glBindVertexShaderEXT;
-extern (C) void function()glEndVertexShaderEXT;
-extern (C) void function()glBeginVertexShaderEXT;
-extern (C) void function(int, uint, int, void *)glSecondaryColorPointerEXT;
-extern (C) void function(double *)glSecondaryColor3dvEXT;
-extern (C) void function(float *)glSecondaryColor3fvEXT;
-extern (C) void function(uint *)glSecondaryColor3uivEXT;
-extern (C) void function(int *)glSecondaryColor3ivEXT;
-extern (C) void function(ushort *)glSecondaryColor3usvEXT;
-extern (C) void function(short *)glSecondaryColor3svEXT;
-extern (C) void function(char *)glSecondaryColor3ubvEXT;
-extern (C) void function(char *)glSecondaryColor3bvEXT;
-extern (C) void function(double, double, double)glSecondaryColor3dEXT;
-extern (C) void function(float, float, float)glSecondaryColor3fEXT;
-extern (C) void function(uint, uint, uint)glSecondaryColor3uiEXT;
-extern (C) void function(int, int, int)glSecondaryColor3iEXT;
-extern (C) void function(ushort, ushort, ushort)glSecondaryColor3usEXT;
-extern (C) void function(short, short, short)glSecondaryColor3sEXT;
-extern (C) void function(char, char, char)glSecondaryColor3ubEXT;
-extern (C) void function(char, char, char)glSecondaryColor3bEXT;
-extern (C) void function(uint, int *, uint, void * *, int)glMultiDrawElementsEXT;
-extern (C) void function(uint, int *, int *, int)glMultiDrawArraysEXT;
-extern (C) void function(uint, int, void *)glFogCoordPointerEXT;
-extern (C) void function(double *)glFogCoorddvEXT;
-extern (C) void function(float *)glFogCoordfvEXT;
-extern (C) void function(double)glFogCoorddEXT;
-extern (C) void function(float)glFogCoordfEXT;
-extern (C) void function(uint, uint, uint, int, uint, void *)glDrawRangeElementsEXT;
-extern (C) void function(uint, uint, uint, uint)glBlendFuncSeparateEXT;
-extern (C) uint function()glBufferRegionEnabled;
-extern (C) void function(uint, int, int, int, int, int, int)glDrawBufferRegion;
-extern (C) void function(uint, int, int, int, int)glReadBufferRegion;
-extern (C) void function(uint)glDeleteBufferRegion;
-extern (C) uint function(uint)glNewBufferRegion;
-extern (C) void function(uint, float *)glCullParameterfvEXT;
-extern (C) void function(uint, double *)glCullParameterdvEXT;
-extern (C) void function(uint, uint, float *)glGetMinmaxParameterfvEXT;
-extern (C) void function(uint, uint, int *)glGetMinmaxParameterivEXT;
-extern (C) void function(uint, char, uint, uint, void *)glGetMinmaxEXT;
-extern (C) void function(uint)glResetMinmaxEXT;
-extern (C) void function(uint, uint, char)glMinmaxEXT;
-extern (C) void function(uint, uint, float *)glGetHistogramParameterfvEXT;
-extern (C) void function(uint, uint, int *)glGetHistogramParameterivEXT;
-extern (C) void function(uint, char, uint, uint, void *)glGetHistogramEXT;
-extern (C) void function(uint)glResetHistogramEXT;
-extern (C) void function(uint, int, uint, char)glHistogramEXT;
-extern (C) void function(uint, uint, float *)glGetConvolutionParameterfvEXT;
-extern (C) void function(uint, uint, int *)glGetConvolutionParameterivEXT;
-extern (C) void function(uint, uint, float *)glConvolutionParameterfvEXT;
-extern (C) void function(uint, uint, float)glConvolutionParameterfEXT;
-extern (C) void function(uint, uint, int *)glConvolutionParameterivEXT;
-extern (C) void function(uint, uint, int)glConvolutionParameteriEXT;
-extern (C) void function(uint, uint, uint, void *, void *, void *)glGetSeparableFilterEXT;
-extern (C) void function(uint, uint, int, int, uint, uint, void *, void *)glSeparableFilter2DEXT;
-extern (C) void function(uint, uint, uint, void *)glGetConvolutionFilterEXT;
-extern (C) void function(uint, uint, int, int, int, int)glCopyConvolutionFilter2DEXT;
-extern (C) void function(uint, uint, int, int, int)glCopyConvolutionFilter1DEXT;
-extern (C) void function(uint, uint, int, int, uint, uint, void *)glConvolutionFilter2DEXT;
-extern (C) void function(uint, uint, int, uint, uint, void *)glConvolutionFilter1DEXT;
-extern (C) char function(int, int, int, int)glValidBackBufferHint;
-extern (C) void function()glWindowBackBufferHint;
-extern (C) char function()glInitValidBackBufferHintAutodesk;
-extern (C) void function(uint, float *)glMTexCoord4fvSGIS;
-extern (C) void function(uint, float *)glMTexCoord3fvSGIS;
-extern (C) void function(uint, float *)glMTexCoord2fvSGIS;
-extern (C) void function(uint, float, float, float, float)glMTexCoord4fSGIS;
-extern (C) void function(uint, float, float, float)glMTexCoord3fSGIS;
-extern (C) void function(uint, float, float)glMTexCoord2fSGIS;
-extern (C) void function(uint)glSelectTextureSGIS;
-extern (C) void function(float, char)glSampleCoverageARB;
-extern (C) void function(double *)glMultTransposeMatrixdARB;
-extern (C) void function(float *)glMultTransposeMatrixfARB;
-extern (C) void function(double *)glLoadTransposeMatrixdARB;
-extern (C) void function(float *)glLoadTransposeMatrixfARB;
-extern (C) void function(uint, uint, int, int, uint, uint, void *, void *)glSeparableFilter2D;
-extern (C) void function(float, char)glSampleCoverage;
-extern (C) void function(uint)glResetMinmax;
-extern (C) void function(short *)glRasterPos4sv;
-extern (C) void function(short, short, short, short)glRasterPos4s;
-extern (C) void function(int *)glRasterPos4iv;
-extern (C) void function(int, int, int, int)glRasterPos4i;
-extern (C) void function(float *)glRasterPos4fv;
-extern (C) void function(float, float, float, float)glRasterPos4f;
-extern (C) void function(double *)glRasterPos4dv;
-extern (C) void function(double, double, double, double)glRasterPos4d;
-extern (C) void function(short *)glRasterPos3sv;
-extern (C) void function(short, short, short)glRasterPos3s;
-extern (C) void function(int *)glRasterPos3iv;
-extern (C) void function(int, int, int)glRasterPos3i;
-extern (C) void function(float *)glRasterPos3fv;
-extern (C) void function(float, float, float)glRasterPos3f;
-extern (C) void function(double *)glRasterPos3dv;
-extern (C) void function(double, double, double)glRasterPos3d;
-extern (C) void function(short *)glRasterPos2sv;
-extern (C) void function(short, short)glRasterPos2s;
-extern (C) void function(int *)glRasterPos2iv;
-extern (C) void function(int, int)glRasterPos2i;
-extern (C) void function(float *)glRasterPos2fv;
-extern (C) void function(float, float)glRasterPos2f;
-extern (C) void function(double *)glRasterPos2dv;
-extern (C) void function(double, double)glRasterPos2d;
-extern (C) void function(uint, uint, int *)glMaterialiv;
-extern (C) void function(uint, uint, int)glMateriali;
-extern (C) void function(uint, uint, float *)glMaterialfv;
-extern (C) void function(uint, uint, float)glMaterialf;
-extern (C) void function(uint, int, uint, uint, void *)glGetTexImage;
-extern (C) void function(uint, uint, int *)glGetTexGeniv;
-extern (C) void function(uint, uint, float *)glGetTexGenfv;
-extern (C) void function(uint, uint, double *)glGetTexGendv;
-extern (C) void function(uint, uint, int *)glGetTexEnviv;
-extern (C) void function(uint, uint, float *)glGetTexEnvfv;
-extern (C) void function(uint, uint, uint, void *, void *, void *)glGetSeparableFilter;
-extern (C) void function(uint, uint, float *)glGetConvolutionParameterfv;
-extern (C) void function(uint, uint, int *)glGetConvolutionParameteriv;
-extern (C) void function(uint, uint, uint, void *)glGetConvolutionFilter;
-extern (C) void function(uint, double *)glGetClipPlane;
-extern (C) void function()glUnlockArraysEXT;
-extern (C) void function(int, int)glLockArraysEXT;
-extern (C) void function(uint, uint, int *)glGetColorTableParameterivEXT;
-extern (C) void function(uint, uint, float *)glGetColorTableParameterfvEXT;
-extern (C) void function(uint, uint, uint, void *)glGetColorTableEXT;
-extern (C) void function(uint, uint, float *)glColorTableParameterfvEXT;
-extern (C) void function(uint, uint, int *)glColorTableParameterivEXT;
-extern (C) void function(uint, uint, int, int, int)glCopyColorTableEXT;
-extern (C) void function(uint, uint, int, uint, uint, void *)glColorTableEXT;
-extern (C) void function(uint, int, int, int, int)glCopyColorSubTableEXT;
-extern (C) void function(uint, int, int, uint, uint, void *)glColorSubTableEXT;
-extern (C) void function(uint, float *)glPointParameterfvSGIS;
-extern (C) void function(uint, float)glPointParameterfSGIS;
-extern (C) void function(uint, float *)glPointParameterfvEXT;
-extern (C) void function(uint, float)glPointParameterfEXT;
-extern (C) void function(int, uint, int, int, void *)glVertexPointerEXT;
-extern (C) void function(int, uint, int, int, void *)glTexCoordPointerEXT;
-extern (C) void function(uint, int, int, void *)glNormalPointerEXT;
-extern (C) void function(uint, int, int, void *)glIndexPointerEXT;
-extern (C) void function(uint, void * *)glGetPointervEXT;
-extern (C) void function(int, int, char *)glEdgeFlagPointerEXT;
-extern (C) void function(uint, int, int)glDrawArraysEXT;
-extern (C) void function(int, uint, int, int, void *)glColorPointerEXT;
-extern (C) void function(int)glArrayElementEXT;
-extern (C) char function(uint)glIsTextureEXT;
-extern (C) char function(int, uint *, char *)glAreTexturesResidentEXT;
-extern (C) void function(int, uint *)glGenTexturesEXT;
-extern (C) void function(int, uint *)glDeleteTexturesEXT;
-extern (C) void function(int, uint *, float *)glPrioritizeTexturesEXT;
-extern (C) void function(uint, uint)glBindTextureEXT;
-extern (C) void function(uint, int, int, int, int, int, int, int, int)glCopyTexSubImage3DEXT;
-extern (C) void function(uint, int, int, int, int, int, int, int, uint, uint, void *)glTexSubImage3DEXT;
-extern (C) void function(uint, int, int, int, int, int, int, uint, uint, void *)glTexImage3DEXT;
-extern (C) void function(float, float)glPolygonOffsetEXT;
-extern (C) void function(float, float, float, float)glBlendColorEXT;
-extern (C) void function(uint)glBlendEquationEXT;
-extern (C) void function(uint, double *)glMultiTexCoord4dvARB;
-extern (C) void function(uint, float *)glMultiTexCoord4fvARB;
-extern (C) void function(uint, int *)glMultiTexCoord4ivARB;
-extern (C) void function(uint, short *)glMultiTexCoord4svARB;
-extern (C) void function(uint, double, double, double, double)glMultiTexCoord4dARB;
-extern (C) void function(uint, float, float, float, float)glMultiTexCoord4fARB;
-extern (C) void function(uint, int, int, int, int)glMultiTexCoord4iARB;
-extern (C) void function(uint, short, short, short, short)glMultiTexCoord4sARB;
-extern (C) void function(uint, double *)glMultiTexCoord3dvARB;
-extern (C) void function(uint, float *)glMultiTexCoord3fvARB;
-extern (C) void function(uint, int *)glMultiTexCoord3ivARB;
-extern (C) void function(uint, short *)glMultiTexCoord3svARB;
-extern (C) void function(uint, double, double, double)glMultiTexCoord3dARB;
-extern (C) void function(uint, float, float, float)glMultiTexCoord3fARB;
-extern (C) void function(uint, int, int, int)glMultiTexCoord3iARB;
-extern (C) void function(uint, short, short, short)glMultiTexCoord3sARB;
-extern (C) void function(uint, double *)glMultiTexCoord2dvARB;
-extern (C) void function(uint, float *)glMultiTexCoord2fvARB;
-extern (C) void function(uint, int *)glMultiTexCoord2ivARB;
-extern (C) void function(uint, short *)glMultiTexCoord2svARB;
-extern (C) void function(uint, double, double)glMultiTexCoord2dARB;
-extern (C) void function(uint, float, float)glMultiTexCoord2fARB;
-extern (C) void function(uint, int, int)glMultiTexCoord2iARB;
-extern (C) void function(uint, short, short)glMultiTexCoord2sARB;
-extern (C) void function(uint, double *)glMultiTexCoord1dvARB;
-extern (C) void function(uint, float *)glMultiTexCoord1fvARB;
-extern (C) void function(uint, int *)glMultiTexCoord1ivARB;
-extern (C) void function(uint, short *)glMultiTexCoord1svARB;
-extern (C) void function(uint, double)glMultiTexCoord1dARB;
-extern (C) void function(uint, float)glMultiTexCoord1fARB;
-extern (C) void function(uint, int)glMultiTexCoord1iARB;
-extern (C) void function(uint, short)glMultiTexCoord1sARB;
-extern (C) void function(uint)glActiveTextureARB;
-extern (C) void function(uint)glClientActiveTextureARB;
-extern (C) void function(double *)glMultTransposeMatrixd;
-extern (C) void function(float *)glMultTransposeMatrixf;
-extern (C) void function(double *)glLoadTransposeMatrixd;
-extern (C) void function(float *)glLoadTransposeMatrixf;
-extern (C) void function(uint, double *)glMultiTexCoord4dv;
-extern (C) void function(uint, float *)glMultiTexCoord4fv;
-extern (C) void function(uint, int *)glMultiTexCoord4iv;
-extern (C) void function(uint, short *)glMultiTexCoord4sv;
-extern (C) void function(uint, double, double, double, double)glMultiTexCoord4d;
-extern (C) void function(uint, float, float, float, float)glMultiTexCoord4f;
-extern (C) void function(uint, int, int, int, int)glMultiTexCoord4i;
-extern (C) void function(uint, short, short, short, short)glMultiTexCoord4s;
-extern (C) void function(uint, double *)glMultiTexCoord3dv;
-extern (C) void function(uint, float *)glMultiTexCoord3fv;
-extern (C) void function(uint, int *)glMultiTexCoord3iv;
-extern (C) void function(uint, short *)glMultiTexCoord3sv;
-extern (C) void function(uint, double, double, double)glMultiTexCoord3d;
-extern (C) void function(uint, float, float, float)glMultiTexCoord3f;
-extern (C) void function(uint, int, int, int)glMultiTexCoord3i;
-extern (C) void function(uint, short, short, short)glMultiTexCoord3s;
-extern (C) void function(uint, double *)glMultiTexCoord2dv;
-extern (C) void function(uint, float *)glMultiTexCoord2fv;
-extern (C) void function(uint, int *)glMultiTexCoord2iv;
-extern (C) void function(uint, short *)glMultiTexCoord2sv;
-extern (C) void function(uint, double, double)glMultiTexCoord2d;
-extern (C) void function(uint, float, float)glMultiTexCoord2f;
-extern (C) void function(uint, int, int)glMultiTexCoord2i;
-extern (C) void function(uint, short, short)glMultiTexCoord2s;
-extern (C) void function(uint, double *)glMultiTexCoord1dv;
-extern (C) void function(uint, float *)glMultiTexCoord1fv;
-extern (C) void function(uint, int *)glMultiTexCoord1iv;
-extern (C) void function(uint, short *)glMultiTexCoord1sv;
-extern (C) void function(uint, double)glMultiTexCoord1d;
-extern (C) void function(uint, float)glMultiTexCoord1f;
-extern (C) void function(uint, int)glMultiTexCoord1i;
-extern (C) void function(uint, short)glMultiTexCoord1s;
-extern (C) void function(uint, int, void *)glGetCompressedTexImage;
-extern (C) void function(uint, int, int, int, int, int, int, int, uint, int, void *)glCompressedTexSubImage3D;
-extern (C) void function(uint, int, int, int, int, int, uint, int, void *)glCompressedTexSubImage2D;
-extern (C) void function(uint, int, int, int, uint, int, void *)glCompressedTexSubImage1D;
-extern (C) void function(uint, int, int, int, int, int, int, int, void *)glCompressedTexImage3D;
-extern (C) void function(uint, int, int, int, int, int, int, void *)glCompressedTexImage2D;
-extern (C) void function(uint, int, int, int, int, int, void *)glCompressedTexImage1D;
-extern (C) void function(uint)glClientActiveTexture;
-extern (C) void function(uint)glActiveTexture;
-extern (C) void function(uint, uint, int, int, int, int)glCopyConvolutionFilter2D;
-extern (C) void function(uint, uint, int, int, int)glCopyConvolutionFilter1D;
-extern (C) void function(uint, uint, float *)glConvolutionParameterfv;
-extern (C) void function(uint, uint, float)glConvolutionParameterf;
-extern (C) void function(uint, uint, int *)glConvolutionParameteriv;
-extern (C) void function(uint, uint, int)glConvolutionParameteri;
-extern (C) void function(uint, uint, int, int, uint, uint, void *)glConvolutionFilter2D;
-extern (C) void function(uint, uint, int, uint, uint, void *)glConvolutionFilter1D;
-extern (C) void function(uint, uint, float *)glGetMinmaxParameterfv;
-extern (C) void function(uint, uint, int *)glGetMinmaxParameteriv;
-extern (C) void function(uint, char, uint, uint, void *)glGetMinmax;
-extern (C) void function(uint, uint, char)glMinmax;
-extern (C) void function(uint, uint, float *)glGetHistogramParameterfv;
-extern (C) void function(uint, uint, int *)glGetHistogramParameteriv;
-extern (C) void function(uint, char, uint, uint, void *)glGetHistogram;
-extern (C) void function(uint)glResetHistogram;
-extern (C) void function(uint, int, uint, char)glHistogram;
-extern (C) void function(uint)glBlendEquation;
-extern (C) void function(float, float, float, float)glBlendColor;
-extern (C) void function(uint, uint, int *)glGetColorTableParameteriv;
-extern (C) void function(uint, uint, float *)glGetColorTableParameterfv;
-extern (C) void function(uint, uint, uint, void *)glGetColorTable;
-extern (C) void function(uint, uint, int, int, int)glCopyColorTable;
-extern (C) void function(uint, int, int, int, int)glCopyColorSubTable;
-extern (C) void function(uint, uint, float *)glColorTableParameterfv;
-extern (C) void function(uint, uint, int *)glColorTableParameteriv;
-extern (C) void function(uint, int, int, uint, uint, void *)glColorSubTable;
-extern (C) void function(uint, uint, int, uint, uint, void *)glColorTable;
-extern (C) void function(uint, int, int, int, int, int, int, int, int)glCopyTexSubImage3D;
-extern (C) void function(uint, int, int, int, int, int, int, int, uint, uint, void *)glTexSubImage3D;
-extern (C) void function(uint, int, int, int, int, int, int, uint, uint, void *)glTexImage3D;
-extern (C) void function(uint, uint, uint, int, uint, void *)glDrawRangeElements;
-extern (C) void function(uint)glPushName;
-extern (C) void function()glPopName;
-extern (C) void function(uint)glLoadName;
-extern (C) void function()glInitNames;
-extern (C) void function(int, uint *)glSelectBuffer;
-extern (C) void function(float)glPassThrough;
-extern (C) void function(int, uint, float *)glFeedbackBuffer;
-extern (C) void function(uint, int *)glFogiv;
-extern (C) void function(uint, int)glFogi;
-extern (C) void function(uint, float *)glFogfv;
-extern (C) void function(uint, float)glFogf;
-extern (C) void function(int, int)glEvalPoint2;
-extern (C) void function(int)glEvalPoint1;
-extern (C) void function(uint, int, int, int, int)glEvalMesh2;
-extern (C) void function(uint, int, int)glEvalMesh1;
-extern (C) void function(int, float, float, int, float, float)glMapGrid2f;
-extern (C) void function(int, double, double, int, double, double)glMapGrid2d;
-extern (C) void function(int, float, float)glMapGrid1f;
-extern (C) void function(int, double, double)glMapGrid1d;
-extern (C) void function(float *)glEvalCoord2fv;
-extern (C) void function(float, float)glEvalCoord2f;
-extern (C) void function(double *)glEvalCoord2dv;
-extern (C) void function(double, double)glEvalCoord2d;
-extern (C) void function(float *)glEvalCoord1fv;
-extern (C) void function(float)glEvalCoord1f;
-extern (C) void function(double *)glEvalCoord1dv;
-extern (C) void function(double)glEvalCoord1d;
-extern (C) void function(uint, uint, int *)glGetMapiv;
-extern (C) void function(uint, uint, float *)glGetMapfv;
-extern (C) void function(uint, uint, double *)glGetMapdv;
-extern (C) void function(uint, float, float, int, int, float, float, int, int, float *)glMap2f;
-extern (C) void function(uint, double, double, int, int, double, double, int, int, double *)glMap2d;
-extern (C) void function(uint, float, float, int, int, float *)glMap1f;
-extern (C) void function(uint, double, double, int, int, double *)glMap1d;
-extern (C) void function(uint, int, int, int, int, int, int, int)glCopyTexSubImage2D;
-extern (C) void function(uint, int, int, int, int, int)glCopyTexSubImage1D;
-extern (C) void function(uint, int, uint, int, int, int, int, int)glCopyTexImage2D;
-extern (C) void function(uint, int, uint, int, int, int, int)glCopyTexImage1D;
-extern (C) void function(uint, int, int, int, int, int, uint, uint, void *)glTexSubImage2D;
-extern (C) void function(uint, int, int, int, uint, uint, void *)glTexSubImage1D;
-extern (C) char function(uint)glIsTexture;
-extern (C) char function(int, uint *, char *)glAreTexturesResident;
-extern (C) void function(int, uint *, float *)glPrioritizeTextures;
-extern (C) void function(uint, uint)glBindTexture;
-extern (C) void function(int, uint *)glDeleteTextures;
-extern (C) void function(int, uint *)glGenTextures;
-extern (C) void function(uint, int, int, int, int, int, uint, uint, void *)glTexImage2D;
-extern (C) void function(uint, int, int, int, int, uint, uint, void *)glTexImage1D;
-extern (C) void function(uint, uint, int *)glGetTexParameteriv;
-extern (C) void function(uint, uint, float *)glGetTexParameterfv;
-extern (C) void function(uint, int, uint, int *)glGetTexLevelParameteriv;
-extern (C) void function(uint, int, uint, float *)glGetTexLevelParameterfv;
-extern (C) void function(uint, uint, int *)glTexParameteriv;
-extern (C) void function(uint, uint, int)glTexParameteri;
-extern (C) void function(uint, uint, float *)glTexParameterfv;
-extern (C) void function(uint, uint, float)glTexParameterf;
-extern (C) void function(uint, uint, int *)glTexEnviv;
-extern (C) void function(uint, uint, int)glTexEnvi;
-extern (C) void function(uint, uint, float *)glTexEnvfv;
-extern (C) void function(uint, uint, float)glTexEnvf;
-extern (C) void function(uint, uint, int *)glTexGeniv;
-extern (C) void function(uint, uint, int)glTexGeni;
-extern (C) void function(uint, uint, float *)glTexGenfv;
-extern (C) void function(uint, uint, float)glTexGenf;
-extern (C) void function(uint, uint, double *)glTexGendv;
-extern (C) void function(uint, uint, double)glTexGend;
-extern (C) void function(int)glClearStencil;
-extern (C) void function(uint, uint, uint)glStencilOp;
-extern (C) void function(uint)glStencilMask;
-extern (C) void function(uint, int, uint)glStencilFunc;
-extern (C) void function(int, int, int, int, uint, uint, void *)glReadPixels;
-extern (C) void function(int, int, uint, uint, void *)glDrawPixels;
-extern (C) void function(int, int, int, int, uint)glCopyPixels;
-extern (C) void function(int, int, float, float, float, float, char *)glBitmap;
-extern (C) void function(uint, ushort *)glGetPixelMapusv;
-extern (C) void function(uint, uint *)glGetPixelMapuiv;
-extern (C) void function(uint, float *)glGetPixelMapfv;
-extern (C) void function(float, float)glPixelZoom;
-extern (C) void function(uint, int)glPixelTransferi;
-extern (C) void function(uint, float)glPixelTransferf;
-extern (C) void function(uint, int)glPixelStorei;
-extern (C) void function(uint, float)glPixelStoref;
-extern (C) void function(uint, int, ushort *)glPixelMapusv;
-extern (C) void function(uint, int, uint *)glPixelMapuiv;
-extern (C) void function(uint, int, float *)glPixelMapfv;
-extern (C) void function(uint, uint)glColorMaterial;
-extern (C) void function(uint, uint, int *)glGetMaterialiv;
-extern (C) void function(uint, uint, float *)glGetMaterialfv;
-extern (C) void function(uint, int *)glLightModeliv;
-extern (C) void function(uint, int)glLightModeli;
-extern (C) void function(uint, float *)glLightModelfv;
-extern (C) void function(uint, float)glLightModelf;
-extern (C) void function(uint, uint, int *)glGetLightiv;
-extern (C) void function(uint, uint, float *)glGetLightfv;
-extern (C) void function(uint, uint, int *)glLightiv;
-extern (C) void function(uint, uint, int)glLighti;
-extern (C) void function(uint, uint, float *)glLightfv;
-extern (C) void function(uint, uint, float)glLightf;
-extern (C) void function(uint)glShadeModel;
-extern (C) void function(uint, int, void *)glInterleavedArrays;
-extern (C) void function(uint, int, uint, void *)glDrawElements;
-extern (C) void function(uint, int, int)glDrawArrays;
-extern (C) void function(int)glArrayElement;
-extern (C) void function(uint, void * *)glGetPointerv;
-extern (C) void function(int, char *)glEdgeFlagPointer;
-extern (C) void function(int, uint, int, void *)glTexCoordPointer;
-extern (C) void function(uint, int, void *)glIndexPointer;
-extern (C) void function(int, uint, int, void *)glColorPointer;
-extern (C) void function(uint, int, void *)glNormalPointer;
-extern (C) void function(int, uint, int, void *)glVertexPointer;
-extern (C) void function(short *, short *)glRectsv;
-extern (C) void function(short, short, short, short)glRects;
-extern (C) void function(int *, int *)glRectiv;
-extern (C) void function(int, int, int, int)glRecti;
-extern (C) void function(float *, float *)glRectfv;
-extern (C) void function(float, float, float, float)glRectf;
-extern (C) void function(double *, double *)glRectdv;
-extern (C) void function(double, double, double, double)glRectd;
-extern (C) void function(short *)glTexCoord4sv;
-extern (C) void function(short, short, short, short)glTexCoord4s;
-extern (C) void function(int *)glTexCoord4iv;
-extern (C) void function(int, int, int, int)glTexCoord4i;
-extern (C) void function(float *)glTexCoord4fv;
-extern (C) void function(float, float, float, float)glTexCoord4f;
-extern (C) void function(double *)glTexCoord4dv;
-extern (C) void function(double, double, double, double)glTexCoord4d;
-extern (C) void function(short *)glTexCoord3sv;
-extern (C) void function(short, short, short)glTexCoord3s;
-extern (C) void function(int *)glTexCoord3iv;
-extern (C) void function(int, int, int)glTexCoord3i;
-extern (C) void function(float *)glTexCoord3fv;
-extern (C) void function(float, float, float)glTexCoord3f;
-extern (C) void function(double *)glTexCoord3dv;
-extern (C) void function(double, double, double)glTexCoord3d;
-extern (C) void function(short *)glTexCoord2sv;
-extern (C) void function(short, short)glTexCoord2s;
-extern (C) void function(int *)glTexCoord2iv;
-extern (C) void function(int, int)glTexCoord2i;
-extern (C) void function(float *)glTexCoord2fv;
-extern (C) void function(float, float)glTexCoord2f;
-extern (C) void function(double *)glTexCoord2dv;
-extern (C) void function(double, double)glTexCoord2d;
-extern (C) void function(short *)glTexCoord1sv;
-extern (C) void function(short)glTexCoord1s;
-extern (C) void function(int *)glTexCoord1iv;
-extern (C) void function(int)glTexCoord1i;
-extern (C) void function(float *)glTexCoord1fv;
-extern (C) void function(float)glTexCoord1f;
-extern (C) void function(double *)glTexCoord1dv;
-extern (C) void function(double)glTexCoord1d;
-extern (C) void function(ushort *)glColor4usv;
-extern (C) void function(ushort, ushort, ushort, ushort)glColor4us;
-extern (C) void function(uint *)glColor4uiv;
-extern (C) void function(uint, uint, uint, uint)glColor4ui;
-extern (C) void function(char *)glColor4ubv;
-extern (C) void function(char, char, char, char)glColor4ub;
-extern (C) void function(short *)glColor4sv;
-extern (C) void function(short, short, short, short)glColor4s;
-extern (C) void function(int *)glColor4iv;
-extern (C) void function(int, int, int, int)glColor4i;
-extern (C) void function(float *)glColor4fv;
-extern (C) void function(float, float, float, float)glColor4f;
-extern (C) void function(double *)glColor4dv;
-extern (C) void function(double, double, double, double)glColor4d;
-extern (C) void function(char *)glColor4bv;
-extern (C) void function(char, char, char, char)glColor4b;
-extern (C) void function(ushort *)glColor3usv;
-extern (C) void function(ushort, ushort, ushort)glColor3us;
-extern (C) void function(uint *)glColor3uiv;
-extern (C) void function(uint, uint, uint)glColor3ui;
-extern (C) void function(char *)glColor3ubv;
-extern (C) void function(char, char, char)glColor3ub;
-extern (C) void function(short *)glColor3sv;
-extern (C) void function(short, short, short)glColor3s;
-extern (C) void function(int *)glColor3iv;
-extern (C) void function(int, int, int)glColor3i;
-extern (C) void function(float *)glColor3fv;
-extern (C) void function(float, float, float)glColor3f;
-extern (C) void function(double *)glColor3dv;
-extern (C) void function(double, double, double)glColor3d;
-extern (C) void function(char *)glColor3bv;
-extern (C) void function(char, char, char)glColor3b;
-extern (C) void function(char *)glIndexubv;
-extern (C) void function(char)glIndexub;
-extern (C) void function(short *)glIndexsv;
-extern (C) void function(short)glIndexs;
-extern (C) void function(int *)glIndexiv;
-extern (C) void function(int)glIndexi;
-extern (C) void function(float *)glIndexfv;
-extern (C) void function(float)glIndexf;
-extern (C) void function(double *)glIndexdv;
-extern (C) void function(double)glIndexd;
-extern (C) void function(short *)glNormal3sv;
-extern (C) void function(short, short, short)glNormal3s;
-extern (C) void function(int *)glNormal3iv;
-extern (C) void function(int, int, int)glNormal3i;
-extern (C) void function(float *)glNormal3fv;
-extern (C) void function(float, float, float)glNormal3f;
-extern (C) void function(double *)glNormal3dv;
-extern (C) void function(double, double, double)glNormal3d;
-extern (C) void function(char *)glNormal3bv;
-extern (C) void function(char, char, char)glNormal3b;
-extern (C) void function(short *)glVertex4sv;
-extern (C) void function(short, short, short, short)glVertex4s;
-extern (C) void function(int *)glVertex4iv;
-extern (C) void function(int, int, int, int)glVertex4i;
-extern (C) void function(float *)glVertex4fv;
-extern (C) void function(float, float, float, float)glVertex4f;
-extern (C) void function(double *)glVertex4dv;
-extern (C) void function(double, double, double, double)glVertex4d;
-extern (C) void function(short *)glVertex3sv;
-extern (C) void function(short, short, short)glVertex3s;
-extern (C) void function(int *)glVertex3iv;
-extern (C) void function(int, int, int)glVertex3i;
-extern (C) void function(float *)glVertex3fv;
-extern (C) void function(float, float, float)glVertex3f;
-extern (C) void function(double *)glVertex3dv;
-extern (C) void function(double, double, double)glVertex3d;
-extern (C) void function(short *)glVertex2sv;
-extern (C) void function(short, short)glVertex2s;
-extern (C) void function(int *)glVertex2iv;
-extern (C) void function(int, int)glVertex2i;
-extern (C) void function(float *)glVertex2fv;
-extern (C) void function(float, float)glVertex2f;
-extern (C) void function(double *)glVertex2dv;
-extern (C) void function(double, double)glVertex2d;
-extern (C) void function()glEnd;
-extern (C) void function(uint)glBegin;
-extern (C) void function(uint)glListBase;
-extern (C) void function(int, uint, void *)glCallLists;
-extern (C) void function(uint)glCallList;
-extern (C) void function()glEndList;
-extern (C) void function(uint, uint)glNewList;
-extern (C) uint function(int)glGenLists;
-extern (C) void function(uint, int)glDeleteLists;
-extern (C) char function(uint)glIsList;
-extern (C) void function(float, float, float)glTranslatef;
-extern (C) void function(double, double, double)glTranslated;
-extern (C) void function(float, float, float)glScalef;
-extern (C) void function(double, double, double)glScaled;
-extern (C) void function(float, float, float, float)glRotatef;
-extern (C) void function(double, double, double, double)glRotated;
-extern (C) void function(float *)glMultMatrixf;
-extern (C) void function(double *)glMultMatrixd;
-extern (C) void function(float *)glLoadMatrixf;
-extern (C) void function(double *)glLoadMatrixd;
-extern (C) void function()glLoadIdentity;
-extern (C) void function()glPopMatrix;
-extern (C) void function()glPushMatrix;
-extern (C) void function(int, int, int, int)glViewport;
-extern (C) void function(double, double, double, double, double, double)glFrustum;
-extern (C) void function(double, double, double, double, double, double)glOrtho;
-extern (C) void function(uint)glMatrixMode;
-extern (C) void function(uint, float)glAccum;
-extern (C) void function(float, float, float, float)glClearAccum;
-extern (C) void function(double, double)glDepthRange;
-extern (C) void function(char)glDepthMask;
-extern (C) void function(uint)glDepthFunc;
-extern (C) void function(double)glClearDepth;
-extern (C) void function(uint, uint)glHint;
-extern (C) void function()glFlush;
-extern (C) void function()glFinish;
-extern (C) char * function(uint)glGetString;
-extern (C) uint function()glGetError;
-extern (C) int function(uint)glRenderMode;
-extern (C) void function()glPopClientAttrib;
-extern (C) void function(uint)glPushClientAttrib;
-extern (C) void function()glPopAttrib;
-extern (C) void function(uint)glPushAttrib;
-extern (C) void function(uint, int *)glGetIntegerv;
-extern (C) void function(uint, float *)glGetFloatv;
-extern (C) void function(uint, double *)glGetDoublev;
-extern (C) void function(uint, char *)glGetBooleanv;
-extern (C) void function(uint)glDisableClientState;
-extern (C) void function(uint)glEnableClientState;
-extern (C) char function(uint)glIsEnabled;
-extern (C) void function(uint)glDisable;
-extern (C) void function(uint)glEnable;
-extern (C) void function(uint)glReadBuffer;
-extern (C) void function(uint)glDrawBuffer;
-extern (C) void function(uint, double *)glClipPlane;
-extern (C) void function(int, int, int, int)glScissor;
-extern (C) void function(char *)glEdgeFlagv;
-extern (C) void function(char)glEdgeFlag;
-extern (C) void function(char *)glGetPolygonStipple;
-extern (C) void function(char *)glPolygonStipple;
-extern (C) void function(float, float)glPolygonOffset;
-extern (C) void function(uint, uint)glPolygonMode;
-extern (C) void function(int, ushort)glLineStipple;
-extern (C) void function(float)glLineWidth;
-extern (C) void function(float)glPointSize;
-extern (C) void function(uint)glFrontFace;
-extern (C) void function(uint)glCullFace;
-extern (C) void function(uint)glLogicOp;
-extern (C) void function(uint, uint)glBlendFunc;
-extern (C) void function(uint, float)glAlphaFunc;
-extern (C) void function(char, char, char, char)glColorMask;
-extern (C) void function(uint)glIndexMask;
-extern (C) void function(uint)glClear;
-extern (C) void function(float, float, float, float)glClearColor;
-extern (C) void function(float)glClearIndex;
-
-
-Symbol[] symbols = [
-    { "glMultiDrawElementsSUN",  cast(void**)& glMultiDrawElementsSUN},
-    { "glMultiDrawArraysSUN",  cast(void**)& glMultiDrawArraysSUN},
-    { "glTexSubImage2DEXT",  cast(void**)& glTexSubImage2DEXT},
-    { "glTexSubImage1DEXT",  cast(void**)& glTexSubImage1DEXT},
-    { "glPointParameterfvARB",  cast(void**)& glPointParameterfvARB},
-    { "glPointParameterfARB",  cast(void**)& glPointParameterfARB},
-    { "glGetCompressedTexImageARB",  cast(void**)& glGetCompressedTexImageARB},
-    { "glCompressedTexSubImage1DARB",  cast(void**)& glCompressedTexSubImage1DARB},
-    { "glCompressedTexSubImage2DARB",  cast(void**)& glCompressedTexSubImage2DARB},
-    { "glCompressedTexSubImage3DARB",  cast(void**)& glCompressedTexSubImage3DARB},
-    { "glCompressedTexImage1DARB",  cast(void**)& glCompressedTexImage1DARB},
-    { "glCompressedTexImage2DARB",  cast(void**)& glCompressedTexImage2DARB},
-    { "glCompressedTexImage3DARB",  cast(void**)& glCompressedTexImage3DARB},
-    { "glDrawRangeElementArrayATI",  cast(void**)& glDrawRangeElementArrayATI},
-    { "glDrawElementArrayATI",  cast(void**)& glDrawElementArrayATI},
-    { "glElementPointerATI",  cast(void**)& glElementPointerATI},
-    { "glGetVariantArrayObjectivATI",  cast(void**)& glGetVariantArrayObjectivATI},
-    { "glGetVariantArrayObjectfvATI",  cast(void**)& glGetVariantArrayObjectfvATI},
-    { "glGetArrayObjectivATI",  cast(void**)& glGetArrayObjectivATI},
-    { "glGetArrayObjectfvATI",  cast(void**)& glGetArrayObjectfvATI},
-    { "glGetObjectBufferivATI",  cast(void**)& glGetObjectBufferivATI},
-    { "glGetObjectBufferfvATI",  cast(void**)& glGetObjectBufferfvATI},
-    { "glVariantArrayObjectATI",  cast(void**)& glVariantArrayObjectATI},
-    { "glArrayObjectATI",  cast(void**)& glArrayObjectATI},
-    { "glUpdateObjectBufferATI",  cast(void**)& glUpdateObjectBufferATI},
-    { "glIsObjectBufferATI",  cast(void**)& glIsObjectBufferATI},
-    { "glFreeObjectBufferATI",  cast(void**)& glFreeObjectBufferATI},
-    { "glNewObjectBufferATI",  cast(void**)& glNewObjectBufferATI},
-    { "glTexAddressParamuiMTX",  cast(void**)& glTexAddressParamuiMTX},
-    { "glTexAddressParamfvMTX",  cast(void**)& glTexAddressParamfvMTX},
-    { "glTexAddressOp4MTX",  cast(void**)& glTexAddressOp4MTX},
-    { "glTexAddressOp3MTX",  cast(void**)& glTexAddressOp3MTX},
-    { "glTexAddressOp2MTX",  cast(void**)& glTexAddressOp2MTX},
-    { "glTexAddressOp1MTX",  cast(void**)& glTexAddressOp1MTX},
-    { "glTexAddressHintsMTX",  cast(void**)& glTexAddressHintsMTX},
-    { "glSetFragProcInvariantsvMTX",  cast(void**)& glSetFragProcInvariantsvMTX},
-    { "glSetFragProcInvariantivMTX",  cast(void**)& glSetFragProcInvariantivMTX},
-    { "glSetFragProcInvariantfvMTX",  cast(void**)& glSetFragProcInvariantfvMTX},
-    { "glSetFragProcInvariantdvMTX",  cast(void**)& glSetFragProcInvariantdvMTX},
-    { "glSetFragProcInvariantbvMTX",  cast(void**)& glSetFragProcInvariantbvMTX},
-    { "glIsFragShaderMTX",  cast(void**)& glIsFragShaderMTX},
-    { "glGetTexAddressParamuivMTX",  cast(void**)& glGetTexAddressParamuivMTX},
-    { "glGetTexAddressParamfvMTX",  cast(void**)& glGetTexAddressParamfvMTX},
-    { "glGetFragProcInvariantsvMTX",  cast(void**)& glGetFragProcInvariantsvMTX},
-    { "glGetFragProcInvariantivMTX",  cast(void**)& glGetFragProcInvariantivMTX},
-    { "glGetFragProcInvariantfvMTX",  cast(void**)& glGetFragProcInvariantfvMTX},
-    { "glGetFragProcInvariantdvMTX",  cast(void**)& glGetFragProcInvariantdvMTX},
-    { "glGetFragProcInvariantbvMTX",  cast(void**)& glGetFragProcInvariantbvMTX},
-    { "glGenFragShadersMTX",  cast(void**)& glGenFragShadersMTX},
-    { "glGenFragProcInvariantsvMTX",  cast(void**)& glGenFragProcInvariantsvMTX},
-    { "glGenFragProcInvariantivMTX",  cast(void**)& glGenFragProcInvariantivMTX},
-    { "glGenFragProcInvariantfvMTX",  cast(void**)& glGenFragProcInvariantfvMTX},
-    { "glGenFragProcInvariantdvMTX",  cast(void**)& glGenFragProcInvariantdvMTX},
-    { "glGenFragProcInvariantbvMTX",  cast(void**)& glGenFragProcInvariantbvMTX},
-    { "glFragProcRGBAOp3MTX",  cast(void**)& glFragProcRGBAOp3MTX},
-    { "glFragProcRGBAOp2MTX",  cast(void**)& glFragProcRGBAOp2MTX},
-    { "glFragProcRGBAOp1MTX",  cast(void**)& glFragProcRGBAOp1MTX},
-    { "glFragProcOpParamMTX",  cast(void**)& glFragProcOpParamMTX},
-    { "glFragProcAlphaOp3MTX",  cast(void**)& glFragProcAlphaOp3MTX},
-    { "glFragProcAlphaOp2MTX",  cast(void**)& glFragProcAlphaOp2MTX},
-    { "glFragProcAlphaOp1MTX",  cast(void**)& glFragProcAlphaOp1MTX},
-    { "glEndFragShaderMTX",  cast(void**)& glEndFragShaderMTX},
-    { "glDeleteFragShadersMTX",  cast(void**)& glDeleteFragShadersMTX},
-    { "glBindFragShaderMTX",  cast(void**)& glBindFragShaderMTX},
-    { "glBeginFragShaderMTX",  cast(void**)& glBeginFragShaderMTX},
-    { "glGetLocalConstantFloatvEXT",  cast(void**)& glGetLocalConstantFloatvEXT},
-    { "glGetLocalConstantIntegervEXT",  cast(void**)& glGetLocalConstantIntegervEXT},
-    { "glGetLocalConstantBooleanvEXT",  cast(void**)& glGetLocalConstantBooleanvEXT},
-    { "glGetInvariantFloatvEXT",  cast(void**)& glGetInvariantFloatvEXT},
-    { "glGetInvariantIntegervEXT",  cast(void**)& glGetInvariantIntegervEXT},
-    { "glGetInvariantBooleanvEXT",  cast(void**)& glGetInvariantBooleanvEXT},
-    { "glGetVariantPointervEXT",  cast(void**)& glGetVariantPointervEXT},
-    { "glGetVariantFloatvEXT",  cast(void**)& glGetVariantFloatvEXT},
-    { "glGetVariantIntegervEXT",  cast(void**)& glGetVariantIntegervEXT},
-    { "glGetVariantBooleanvEXT",  cast(void**)& glGetVariantBooleanvEXT},
-    { "glIsVariantEnabledEXT",  cast(void**)& glIsVariantEnabledEXT},
-    { "glBindParameterEXT",  cast(void**)& glBindParameterEXT},
-    { "glBindTextureUnitParameterEXT",  cast(void**)& glBindTextureUnitParameterEXT},
-    { "glBindTexGenParameterEXT",  cast(void**)& glBindTexGenParameterEXT},
-    { "glBindMaterialParameterEXT",  cast(void**)& glBindMaterialParameterEXT},
-    { "glBindLightParameterEXT",  cast(void**)& glBindLightParameterEXT},
-    { "glDisableVariantClientStateEXT",  cast(void**)& glDisableVariantClientStateEXT},
-    { "glEnableVariantClientStateEXT",  cast(void**)& glEnableVariantClientStateEXT},
-    { "glVariantPointerEXT",  cast(void**)& glVariantPointerEXT},
-    { "glVariantuivEXT",  cast(void**)& glVariantuivEXT},
-    { "glVariantusvEXT",  cast(void**)& glVariantusvEXT},
-    { "glVariantubvEXT",  cast(void**)& glVariantubvEXT},
-    { "glVariantdvEXT",  cast(void**)& glVariantdvEXT},
-    { "glVariantfvEXT",  cast(void**)& glVariantfvEXT},
-    { "glVariantivEXT",  cast(void**)& glVariantivEXT},
-    { "glVariantsvEXT",  cast(void**)& glVariantsvEXT},
-    { "glVariantbvEXT",  cast(void**)& glVariantbvEXT},
-    { "glSetLocalConstantEXT",  cast(void**)& glSetLocalConstantEXT},
-    { "glSetInvariantEXT",  cast(void**)& glSetInvariantEXT},
-    { "glGenSymbolsEXT",  cast(void**)& glGenSymbolsEXT},
-    { "glExtractComponentEXT",  cast(void**)& glExtractComponentEXT},
-    { "glInsertComponentEXT",  cast(void**)& glInsertComponentEXT},
-    { "glWriteMaskEXT",  cast(void**)& glWriteMaskEXT},
-    { "glSwizzleEXT",  cast(void**)& glSwizzleEXT},
-    { "glShaderOp3EXT",  cast(void**)& glShaderOp3EXT},
-    { "glShaderOp2EXT",  cast(void**)& glShaderOp2EXT},
-    { "glShaderOp1EXT",  cast(void**)& glShaderOp1EXT},
-    { "glDeleteVertexShaderEXT",  cast(void**)& glDeleteVertexShaderEXT},
-    { "glGenVertexShadersEXT",  cast(void**)& glGenVertexShadersEXT},
-    { "glBindVertexShaderEXT",  cast(void**)& glBindVertexShaderEXT},
-    { "glEndVertexShaderEXT",  cast(void**)& glEndVertexShaderEXT},
-    { "glBeginVertexShaderEXT",  cast(void**)& glBeginVertexShaderEXT},
-    { "glSecondaryColorPointerEXT",  cast(void**)& glSecondaryColorPointerEXT},
-    { "glSecondaryColor3dvEXT",  cast(void**)& glSecondaryColor3dvEXT},
-    { "glSecondaryColor3fvEXT",  cast(void**)& glSecondaryColor3fvEXT},
-    { "glSecondaryColor3uivEXT",  cast(void**)& glSecondaryColor3uivEXT},
-    { "glSecondaryColor3ivEXT",  cast(void**)& glSecondaryColor3ivEXT},
-    { "glSecondaryColor3usvEXT",  cast(void**)& glSecondaryColor3usvEXT},
-    { "glSecondaryColor3svEXT",  cast(void**)& glSecondaryColor3svEXT},
-    { "glSecondaryColor3ubvEXT",  cast(void**)& glSecondaryColor3ubvEXT},
-    { "glSecondaryColor3bvEXT",  cast(void**)& glSecondaryColor3bvEXT},
-    { "glSecondaryColor3dEXT",  cast(void**)& glSecondaryColor3dEXT},
-    { "glSecondaryColor3fEXT",  cast(void**)& glSecondaryColor3fEXT},
-    { "glSecondaryColor3uiEXT",  cast(void**)& glSecondaryColor3uiEXT},
-    { "glSecondaryColor3iEXT",  cast(void**)& glSecondaryColor3iEXT},
-    { "glSecondaryColor3usEXT",  cast(void**)& glSecondaryColor3usEXT},
-    { "glSecondaryColor3sEXT",  cast(void**)& glSecondaryColor3sEXT},
-    { "glSecondaryColor3ubEXT",  cast(void**)& glSecondaryColor3ubEXT},
-    { "glSecondaryColor3bEXT",  cast(void**)& glSecondaryColor3bEXT},
-    { "glMultiDrawElementsEXT",  cast(void**)& glMultiDrawElementsEXT},
-    { "glMultiDrawArraysEXT",  cast(void**)& glMultiDrawArraysEXT},
-    { "glFogCoordPointerEXT",  cast(void**)& glFogCoordPointerEXT},
-    { "glFogCoorddvEXT",  cast(void**)& glFogCoorddvEXT},
-    { "glFogCoordfvEXT",  cast(void**)& glFogCoordfvEXT},
-    { "glFogCoorddEXT",  cast(void**)& glFogCoorddEXT},
-    { "glFogCoordfEXT",  cast(void**)& glFogCoordfEXT},
-    { "glDrawRangeElementsEXT",  cast(void**)& glDrawRangeElementsEXT},
-    { "glBlendFuncSeparateEXT",  cast(void**)& glBlendFuncSeparateEXT},
-    { "glBufferRegionEnabled",  cast(void**)& glBufferRegionEnabled},
-    { "glDrawBufferRegion",  cast(void**)& glDrawBufferRegion},
-    { "glReadBufferRegion",  cast(void**)& glReadBufferRegion},
-    { "glDeleteBufferRegion",  cast(void**)& glDeleteBufferRegion},
-    { "glNewBufferRegion",  cast(void**)& glNewBufferRegion},
-    { "glCullParameterfvEXT",  cast(void**)& glCullParameterfvEXT},
-    { "glCullParameterdvEXT",  cast(void**)& glCullParameterdvEXT},
-    { "glGetMinmaxParameterfvEXT",  cast(void**)& glGetMinmaxParameterfvEXT},
-    { "glGetMinmaxParameterivEXT",  cast(void**)& glGetMinmaxParameterivEXT},
-    { "glGetMinmaxEXT",  cast(void**)& glGetMinmaxEXT},
-    { "glResetMinmaxEXT",  cast(void**)& glResetMinmaxEXT},
-    { "glMinmaxEXT",  cast(void**)& glMinmaxEXT},
-    { "glGetHistogramParameterfvEXT",  cast(void**)& glGetHistogramParameterfvEXT},
-    { "glGetHistogramParameterivEXT",  cast(void**)& glGetHistogramParameterivEXT},
-    { "glGetHistogramEXT",  cast(void**)& glGetHistogramEXT},
-    { "glResetHistogramEXT",  cast(void**)& glResetHistogramEXT},
-    { "glHistogramEXT",  cast(void**)& glHistogramEXT},
-    { "glGetConvolutionParameterfvEXT",  cast(void**)& glGetConvolutionParameterfvEXT},
-    { "glGetConvolutionParameterivEXT",  cast(void**)& glGetConvolutionParameterivEXT},
-    { "glConvolutionParameterfvEXT",  cast(void**)& glConvolutionParameterfvEXT},
-    { "glConvolutionParameterfEXT",  cast(void**)& glConvolutionParameterfEXT},
-    { "glConvolutionParameterivEXT",  cast(void**)& glConvolutionParameterivEXT},
-    { "glConvolutionParameteriEXT",  cast(void**)& glConvolutionParameteriEXT},
-    { "glGetSeparableFilterEXT",  cast(void**)& glGetSeparableFilterEXT},
-    { "glSeparableFilter2DEXT",  cast(void**)& glSeparableFilter2DEXT},
-    { "glGetConvolutionFilterEXT",  cast(void**)& glGetConvolutionFilterEXT},
-    { "glCopyConvolutionFilter2DEXT",  cast(void**)& glCopyConvolutionFilter2DEXT},
-    { "glCopyConvolutionFilter1DEXT",  cast(void**)& glCopyConvolutionFilter1DEXT},
-    { "glConvolutionFilter2DEXT",  cast(void**)& glConvolutionFilter2DEXT},
-    { "glConvolutionFilter1DEXT",  cast(void**)& glConvolutionFilter1DEXT},
-    { "glValidBackBufferHint",  cast(void**)& glValidBackBufferHint},
-    { "glWindowBackBufferHint",  cast(void**)& glWindowBackBufferHint},
-    { "glInitValidBackBufferHintAutodesk",  cast(void**)& glInitValidBackBufferHintAutodesk},
-    { "glMTexCoord4fvSGIS",  cast(void**)& glMTexCoord4fvSGIS},
-    { "glMTexCoord3fvSGIS",  cast(void**)& glMTexCoord3fvSGIS},
-    { "glMTexCoord2fvSGIS",  cast(void**)& glMTexCoord2fvSGIS},
-    { "glMTexCoord4fSGIS",  cast(void**)& glMTexCoord4fSGIS},
-    { "glMTexCoord3fSGIS",  cast(void**)& glMTexCoord3fSGIS},
-    { "glMTexCoord2fSGIS",  cast(void**)& glMTexCoord2fSGIS},
-    { "glSelectTextureSGIS",  cast(void**)& glSelectTextureSGIS},
-    { "glSampleCoverageARB",  cast(void**)& glSampleCoverageARB},
-    { "glMultTransposeMatrixdARB",  cast(void**)& glMultTransposeMatrixdARB},
-    { "glMultTransposeMatrixfARB",  cast(void**)& glMultTransposeMatrixfARB},
-    { "glLoadTransposeMatrixdARB",  cast(void**)& glLoadTransposeMatrixdARB},
-    { "glLoadTransposeMatrixfARB",  cast(void**)& glLoadTransposeMatrixfARB},
-    { "glSeparableFilter2D",  cast(void**)& glSeparableFilter2D},
-    { "glSampleCoverage",  cast(void**)& glSampleCoverage},
-    { "glResetMinmax",  cast(void**)& glResetMinmax},
-    { "glRasterPos4sv",  cast(void**)& glRasterPos4sv},
-    { "glRasterPos4s",  cast(void**)& glRasterPos4s},
-    { "glRasterPos4iv",  cast(void**)& glRasterPos4iv},
-    { "glRasterPos4i",  cast(void**)& glRasterPos4i},
-    { "glRasterPos4fv",  cast(void**)& glRasterPos4fv},
-    { "glRasterPos4f",  cast(void**)& glRasterPos4f},
-    { "glRasterPos4dv",  cast(void**)& glRasterPos4dv},
-    { "glRasterPos4d",  cast(void**)& glRasterPos4d},
-    { "glRasterPos3sv",  cast(void**)& glRasterPos3sv},
-    { "glRasterPos3s",  cast(void**)& glRasterPos3s},
-    { "glRasterPos3iv",  cast(void**)& glRasterPos3iv},
-    { "glRasterPos3i",  cast(void**)& glRasterPos3i},
-    { "glRasterPos3fv",  cast(void**)& glRasterPos3fv},
-    { "glRasterPos3f",  cast(void**)& glRasterPos3f},
-    { "glRasterPos3dv",  cast(void**)& glRasterPos3dv},
-    { "glRasterPos3d",  cast(void**)& glRasterPos3d},
-    { "glRasterPos2sv",  cast(void**)& glRasterPos2sv},
-    { "glRasterPos2s",  cast(void**)& glRasterPos2s},
-    { "glRasterPos2iv",  cast(void**)& glRasterPos2iv},
-    { "glRasterPos2i",  cast(void**)& glRasterPos2i},
-    { "glRasterPos2fv",  cast(void**)& glRasterPos2fv},
-    { "glRasterPos2f",  cast(void**)& glRasterPos2f},
-    { "glRasterPos2dv",  cast(void**)& glRasterPos2dv},
-    { "glRasterPos2d",  cast(void**)& glRasterPos2d},
-    { "glMaterialiv",  cast(void**)& glMaterialiv},
-    { "glMateriali",  cast(void**)& glMateriali},
-    { "glMaterialfv",  cast(void**)& glMaterialfv},
-    { "glMaterialf",  cast(void**)& glMaterialf},
-    { "glGetTexImage",  cast(void**)& glGetTexImage},
-    { "glGetTexGeniv",  cast(void**)& glGetTexGeniv},
-    { "glGetTexGenfv",  cast(void**)& glGetTexGenfv},
-    { "glGetTexGendv",  cast(void**)& glGetTexGendv},
-    { "glGetTexEnviv",  cast(void**)& glGetTexEnviv},
-    { "glGetTexEnvfv",  cast(void**)& glGetTexEnvfv},
-    { "glGetSeparableFilter",  cast(void**)& glGetSeparableFilter},
-    { "glGetConvolutionParameterfv",  cast(void**)& glGetConvolutionParameterfv},
-    { "glGetConvolutionParameteriv",  cast(void**)& glGetConvolutionParameteriv},
-    { "glGetConvolutionFilter",  cast(void**)& glGetConvolutionFilter},
-    { "glGetClipPlane",  cast(void**)& glGetClipPlane},
-    { "glUnlockArraysEXT",  cast(void**)& glUnlockArraysEXT},
-    { "glLockArraysEXT",  cast(void**)& glLockArraysEXT},
-    { "glGetColorTableParameterivEXT",  cast(void**)& glGetColorTableParameterivEXT},
-    { "glGetColorTableParameterfvEXT",  cast(void**)& glGetColorTableParameterfvEXT},
-    { "glGetColorTableEXT",  cast(void**)& glGetColorTableEXT},
-    { "glColorTableParameterfvEXT",  cast(void**)& glColorTableParameterfvEXT},
-    { "glColorTableParameterivEXT",  cast(void**)& glColorTableParameterivEXT},
-    { "glCopyColorTableEXT",  cast(void**)& glCopyColorTableEXT},
-    { "glColorTableEXT",  cast(void**)& glColorTableEXT},
-    { "glCopyColorSubTableEXT",  cast(void**)& glCopyColorSubTableEXT},
-    { "glColorSubTableEXT",  cast(void**)& glColorSubTableEXT},
-    { "glPointParameterfvSGIS",  cast(void**)& glPointParameterfvSGIS},
-    { "glPointParameterfSGIS",  cast(void**)& glPointParameterfSGIS},
-    { "glPointParameterfvEXT",  cast(void**)& glPointParameterfvEXT},
-    { "glPointParameterfEXT",  cast(void**)& glPointParameterfEXT},
-    { "glVertexPointerEXT",  cast(void**)& glVertexPointerEXT},
-    { "glTexCoordPointerEXT",  cast(void**)& glTexCoordPointerEXT},
-    { "glNormalPointerEXT",  cast(void**)& glNormalPointerEXT},
-    { "glIndexPointerEXT",  cast(void**)& glIndexPointerEXT},
-    { "glGetPointervEXT",  cast(void**)& glGetPointervEXT},
-    { "glEdgeFlagPointerEXT",  cast(void**)& glEdgeFlagPointerEXT},
-    { "glDrawArraysEXT",  cast(void**)& glDrawArraysEXT},
-    { "glColorPointerEXT",  cast(void**)& glColorPointerEXT},
-    { "glArrayElementEXT",  cast(void**)& glArrayElementEXT},
-    { "glIsTextureEXT",  cast(void**)& glIsTextureEXT},
-    { "glAreTexturesResidentEXT",  cast(void**)& glAreTexturesResidentEXT},
-    { "glGenTexturesEXT",  cast(void**)& glGenTexturesEXT},
-    { "glDeleteTexturesEXT",  cast(void**)& glDeleteTexturesEXT},
-    { "glPrioritizeTexturesEXT",  cast(void**)& glPrioritizeTexturesEXT},
-    { "glBindTextureEXT",  cast(void**)& glBindTextureEXT},
-    { "glCopyTexSubImage3DEXT",  cast(void**)& glCopyTexSubImage3DEXT},
-    { "glTexSubImage3DEXT",  cast(void**)& glTexSubImage3DEXT},
-    { "glTexImage3DEXT",  cast(void**)& glTexImage3DEXT},
-    { "glPolygonOffsetEXT",  cast(void**)& glPolygonOffsetEXT},
-    { "glBlendColorEXT",  cast(void**)& glBlendColorEXT},
-    { "glBlendEquationEXT",  cast(void**)& glBlendEquationEXT},
-    { "glMultiTexCoord4dvARB",  cast(void**)& glMultiTexCoord4dvARB},
-    { "glMultiTexCoord4fvARB",  cast(void**)& glMultiTexCoord4fvARB},
-    { "glMultiTexCoord4ivARB",  cast(void**)& glMultiTexCoord4ivARB},
-    { "glMultiTexCoord4svARB",  cast(void**)& glMultiTexCoord4svARB},
-    { "glMultiTexCoord4dARB",  cast(void**)& glMultiTexCoord4dARB},
-    { "glMultiTexCoord4fARB",  cast(void**)& glMultiTexCoord4fARB},
-    { "glMultiTexCoord4iARB",  cast(void**)& glMultiTexCoord4iARB},
-    { "glMultiTexCoord4sARB",  cast(void**)& glMultiTexCoord4sARB},
-    { "glMultiTexCoord3dvARB",  cast(void**)& glMultiTexCoord3dvARB},
-    { "glMultiTexCoord3fvARB",  cast(void**)& glMultiTexCoord3fvARB},
-    { "glMultiTexCoord3ivARB",  cast(void**)& glMultiTexCoord3ivARB},
-    { "glMultiTexCoord3svARB",  cast(void**)& glMultiTexCoord3svARB},
-    { "glMultiTexCoord3dARB",  cast(void**)& glMultiTexCoord3dARB},
-    { "glMultiTexCoord3fARB",  cast(void**)& glMultiTexCoord3fARB},
-    { "glMultiTexCoord3iARB",  cast(void**)& glMultiTexCoord3iARB},
-    { "glMultiTexCoord3sARB",  cast(void**)& glMultiTexCoord3sARB},
-    { "glMultiTexCoord2dvARB",  cast(void**)& glMultiTexCoord2dvARB},
-    { "glMultiTexCoord2fvARB",  cast(void**)& glMultiTexCoord2fvARB},
-    { "glMultiTexCoord2ivARB",  cast(void**)& glMultiTexCoord2ivARB},
-    { "glMultiTexCoord2svARB",  cast(void**)& glMultiTexCoord2svARB},
-    { "glMultiTexCoord2dARB",  cast(void**)& glMultiTexCoord2dARB},
-    { "glMultiTexCoord2fARB",  cast(void**)& glMultiTexCoord2fARB},
-    { "glMultiTexCoord2iARB",  cast(void**)& glMultiTexCoord2iARB},
-    { "glMultiTexCoord2sARB",  cast(void**)& glMultiTexCoord2sARB},
-    { "glMultiTexCoord1dvARB",  cast(void**)& glMultiTexCoord1dvARB},
-    { "glMultiTexCoord1fvARB",  cast(void**)& glMultiTexCoord1fvARB},
-    { "glMultiTexCoord1ivARB",  cast(void**)& glMultiTexCoord1ivARB},
-    { "glMultiTexCoord1svARB",  cast(void**)& glMultiTexCoord1svARB},
-    { "glMultiTexCoord1dARB",  cast(void**)& glMultiTexCoord1dARB},
-    { "glMultiTexCoord1fARB",  cast(void**)& glMultiTexCoord1fARB},
-    { "glMultiTexCoord1iARB",  cast(void**)& glMultiTexCoord1iARB},
-    { "glMultiTexCoord1sARB",  cast(void**)& glMultiTexCoord1sARB},
-    { "glActiveTextureARB",  cast(void**)& glActiveTextureARB},
-    { "glClientActiveTextureARB",  cast(void**)& glClientActiveTextureARB},
-    { "glMultTransposeMatrixd",  cast(void**)& glMultTransposeMatrixd},
-    { "glMultTransposeMatrixf",  cast(void**)& glMultTransposeMatrixf},
-    { "glLoadTransposeMatrixd",  cast(void**)& glLoadTransposeMatrixd},
-    { "glLoadTransposeMatrixf",  cast(void**)& glLoadTransposeMatrixf},
-    { "glMultiTexCoord4dv",  cast(void**)& glMultiTexCoord4dv},
-    { "glMultiTexCoord4fv",  cast(void**)& glMultiTexCoord4fv},
-    { "glMultiTexCoord4iv",  cast(void**)& glMultiTexCoord4iv},
-    { "glMultiTexCoord4sv",  cast(void**)& glMultiTexCoord4sv},
-    { "glMultiTexCoord4d",  cast(void**)& glMultiTexCoord4d},
-    { "glMultiTexCoord4f",  cast(void**)& glMultiTexCoord4f},
-    { "glMultiTexCoord4i",  cast(void**)& glMultiTexCoord4i},
-    { "glMultiTexCoord4s",  cast(void**)& glMultiTexCoord4s},
-    { "glMultiTexCoord3dv",  cast(void**)& glMultiTexCoord3dv},
-    { "glMultiTexCoord3fv",  cast(void**)& glMultiTexCoord3fv},
-    { "glMultiTexCoord3iv",  cast(void**)& glMultiTexCoord3iv},
-    { "glMultiTexCoord3sv",  cast(void**)& glMultiTexCoord3sv},
-    { "glMultiTexCoord3d",  cast(void**)& glMultiTexCoord3d},
-    { "glMultiTexCoord3f",  cast(void**)& glMultiTexCoord3f},
-    { "glMultiTexCoord3i",  cast(void**)& glMultiTexCoord3i},
-    { "glMultiTexCoord3s",  cast(void**)& glMultiTexCoord3s},
-    { "glMultiTexCoord2dv",  cast(void**)& glMultiTexCoord2dv},
-    { "glMultiTexCoord2fv",  cast(void**)& glMultiTexCoord2fv},
-    { "glMultiTexCoord2iv",  cast(void**)& glMultiTexCoord2iv},
-    { "glMultiTexCoord2sv",  cast(void**)& glMultiTexCoord2sv},
-    { "glMultiTexCoord2d",  cast(void**)& glMultiTexCoord2d},
-    { "glMultiTexCoord2f",  cast(void**)& glMultiTexCoord2f},
-    { "glMultiTexCoord2i",  cast(void**)& glMultiTexCoord2i},
-    { "glMultiTexCoord2s",  cast(void**)& glMultiTexCoord2s},
-    { "glMultiTexCoord1dv",  cast(void**)& glMultiTexCoord1dv},
-    { "glMultiTexCoord1fv",  cast(void**)& glMultiTexCoord1fv},
-    { "glMultiTexCoord1iv",  cast(void**)& glMultiTexCoord1iv},
-    { "glMultiTexCoord1sv",  cast(void**)& glMultiTexCoord1sv},
-    { "glMultiTexCoord1d",  cast(void**)& glMultiTexCoord1d},
-    { "glMultiTexCoord1f",  cast(void**)& glMultiTexCoord1f},
-    { "glMultiTexCoord1i",  cast(void**)& glMultiTexCoord1i},
-    { "glMultiTexCoord1s",  cast(void**)& glMultiTexCoord1s},
-    { "glGetCompressedTexImage",  cast(void**)& glGetCompressedTexImage},
-    { "glCompressedTexSubImage3D",  cast(void**)& glCompressedTexSubImage3D},
-    { "glCompressedTexSubImage2D",  cast(void**)& glCompressedTexSubImage2D},
-    { "glCompressedTexSubImage1D",  cast(void**)& glCompressedTexSubImage1D},
-    { "glCompressedTexImage3D",  cast(void**)& glCompressedTexImage3D},
-    { "glCompressedTexImage2D",  cast(void**)& glCompressedTexImage2D},
-    { "glCompressedTexImage1D",  cast(void**)& glCompressedTexImage1D},
-    { "glClientActiveTexture",  cast(void**)& glClientActiveTexture},
-    { "glActiveTexture",  cast(void**)& glActiveTexture},
-    { "glCopyConvolutionFilter2D",  cast(void**)& glCopyConvolutionFilter2D},
-    { "glCopyConvolutionFilter1D",  cast(void**)& glCopyConvolutionFilter1D},
-    { "glConvolutionParameterfv",  cast(void**)& glConvolutionParameterfv},
-    { "glConvolutionParameterf",  cast(void**)& glConvolutionParameterf},
-    { "glConvolutionParameteriv",  cast(void**)& glConvolutionParameteriv},
-    { "glConvolutionParameteri",  cast(void**)& glConvolutionParameteri},
-    { "glConvolutionFilter2D",  cast(void**)& glConvolutionFilter2D},
-    { "glConvolutionFilter1D",  cast(void**)& glConvolutionFilter1D},
-    { "glGetMinmaxParameterfv",  cast(void**)& glGetMinmaxParameterfv},
-    { "glGetMinmaxParameteriv",  cast(void**)& glGetMinmaxParameteriv},
-    { "glGetMinmax",  cast(void**)& glGetMinmax},
-    { "glMinmax",  cast(void**)& glMinmax},
-    { "glGetHistogramParameterfv",  cast(void**)& glGetHistogramParameterfv},
-    { "glGetHistogramParameteriv",  cast(void**)& glGetHistogramParameteriv},
-    { "glGetHistogram",  cast(void**)& glGetHistogram},
-    { "glResetHistogram",  cast(void**)& glResetHistogram},
-    { "glHistogram",  cast(void**)& glHistogram},
-    { "glBlendEquation",  cast(void**)& glBlendEquation},
-    { "glBlendColor",  cast(void**)& glBlendColor},
-    { "glGetColorTableParameteriv",  cast(void**)& glGetColorTableParameteriv},
-    { "glGetColorTableParameterfv",  cast(void**)& glGetColorTableParameterfv},
-    { "glGetColorTable",  cast(void**)& glGetColorTable},
-    { "glCopyColorTable",  cast(void**)& glCopyColorTable},
-    { "glCopyColorSubTable",  cast(void**)& glCopyColorSubTable},
-    { "glColorTableParameterfv",  cast(void**)& glColorTableParameterfv},
-    { "glColorTableParameteriv",  cast(void**)& glColorTableParameteriv},
-    { "glColorSubTable",  cast(void**)& glColorSubTable},
-    { "glColorTable",  cast(void**)& glColorTable},
-    { "glCopyTexSubImage3D",  cast(void**)& glCopyTexSubImage3D},
-    { "glTexSubImage3D",  cast(void**)& glTexSubImage3D},
-    { "glTexImage3D",  cast(void**)& glTexImage3D},
-    { "glDrawRangeElements",  cast(void**)& glDrawRangeElements},
-    { "glPushName",  cast(void**)& glPushName},
-    { "glPopName",  cast(void**)& glPopName},
-    { "glLoadName",  cast(void**)& glLoadName},
-    { "glInitNames",  cast(void**)& glInitNames},
-    { "glSelectBuffer",  cast(void**)& glSelectBuffer},
-    { "glPassThrough",  cast(void**)& glPassThrough},
-    { "glFeedbackBuffer",  cast(void**)& glFeedbackBuffer},
-    { "glFogiv",  cast(void**)& glFogiv},
-    { "glFogi",  cast(void**)& glFogi},
-    { "glFogfv",  cast(void**)& glFogfv},
-    { "glFogf",  cast(void**)& glFogf},
-    { "glEvalPoint2",  cast(void**)& glEvalPoint2},
-    { "glEvalPoint1",  cast(void**)& glEvalPoint1},
-    { "glEvalMesh2",  cast(void**)& glEvalMesh2},
-    { "glEvalMesh1",  cast(void**)& glEvalMesh1},
-    { "glMapGrid2f",  cast(void**)& glMapGrid2f},
-    { "glMapGrid2d",  cast(void**)& glMapGrid2d},
-    { "glMapGrid1f",  cast(void**)& glMapGrid1f},
-    { "glMapGrid1d",  cast(void**)& glMapGrid1d},
-    { "glEvalCoord2fv",  cast(void**)& glEvalCoord2fv},
-    { "glEvalCoord2f",  cast(void**)& glEvalCoord2f},
-    { "glEvalCoord2dv",  cast(void**)& glEvalCoord2dv},
-    { "glEvalCoord2d",  cast(void**)& glEvalCoord2d},
-    { "glEvalCoord1fv",  cast(void**)& glEvalCoord1fv},
-    { "glEvalCoord1f",  cast(void**)& glEvalCoord1f},
-    { "glEvalCoord1dv",  cast(void**)& glEvalCoord1dv},
-    { "glEvalCoord1d",  cast(void**)& glEvalCoord1d},
-    { "glGetMapiv",  cast(void**)& glGetMapiv},
-    { "glGetMapfv",  cast(void**)& glGetMapfv},
-    { "glGetMapdv",  cast(void**)& glGetMapdv},
-    { "glMap2f",  cast(void**)& glMap2f},
-    { "glMap2d",  cast(void**)& glMap2d},
-    { "glMap1f",  cast(void**)& glMap1f},
-    { "glMap1d",  cast(void**)& glMap1d},
-    { "glCopyTexSubImage2D",  cast(void**)& glCopyTexSubImage2D},
-    { "glCopyTexSubImage1D",  cast(void**)& glCopyTexSubImage1D},
-    { "glCopyTexImage2D",  cast(void**)& glCopyTexImage2D},
-    { "glCopyTexImage1D",  cast(void**)& glCopyTexImage1D},
-    { "glTexSubImage2D",  cast(void**)& glTexSubImage2D},
-    { "glTexSubImage1D",  cast(void**)& glTexSubImage1D},
-    { "glIsTexture",  cast(void**)& glIsTexture},
-    { "glAreTexturesResident",  cast(void**)& glAreTexturesResident},
-    { "glPrioritizeTextures",  cast(void**)& glPrioritizeTextures},
-    { "glBindTexture",  cast(void**)& glBindTexture},
-    { "glDeleteTextures",  cast(void**)& glDeleteTextures},
-    { "glGenTextures",  cast(void**)& glGenTextures},
-    { "glTexImage2D",  cast(void**)& glTexImage2D},
-    { "glTexImage1D",  cast(void**)& glTexImage1D},
-    { "glGetTexParameteriv",  cast(void**)& glGetTexParameteriv},
-    { "glGetTexParameterfv",  cast(void**)& glGetTexParameterfv},
-    { "glGetTexLevelParameteriv",  cast(void**)& glGetTexLevelParameteriv},
-    { "glGetTexLevelParameterfv",  cast(void**)& glGetTexLevelParameterfv},
-    { "glTexParameteriv",  cast(void**)& glTexParameteriv},
-    { "glTexParameteri",  cast(void**)& glTexParameteri},
-    { "glTexParameterfv",  cast(void**)& glTexParameterfv},
-    { "glTexParameterf",  cast(void**)& glTexParameterf},
-    { "glTexEnviv",  cast(void**)& glTexEnviv},
-    { "glTexEnvi",  cast(void**)& glTexEnvi},
-    { "glTexEnvfv",  cast(void**)& glTexEnvfv},
-    { "glTexEnvf",  cast(void**)& glTexEnvf},
-    { "glTexGeniv",  cast(void**)& glTexGeniv},
-    { "glTexGeni",  cast(void**)& glTexGeni},
-    { "glTexGenfv",  cast(void**)& glTexGenfv},
-    { "glTexGenf",  cast(void**)& glTexGenf},
-    { "glTexGendv",  cast(void**)& glTexGendv},
-    { "glTexGend",  cast(void**)& glTexGend},
-    { "glClearStencil",  cast(void**)& glClearStencil},
-    { "glStencilOp",  cast(void**)& glStencilOp},
-    { "glStencilMask",  cast(void**)& glStencilMask},
-    { "glStencilFunc",  cast(void**)& glStencilFunc},
-    { "glReadPixels",  cast(void**)& glReadPixels},
-    { "glDrawPixels",  cast(void**)& glDrawPixels},
-    { "glCopyPixels",  cast(void**)& glCopyPixels},
-    { "glBitmap",  cast(void**)& glBitmap},
-    { "glGetPixelMapusv",  cast(void**)& glGetPixelMapusv},
-    { "glGetPixelMapuiv",  cast(void**)& glGetPixelMapuiv},
-    { "glGetPixelMapfv",  cast(void**)& glGetPixelMapfv},
-    { "glPixelZoom",  cast(void**)& glPixelZoom},
-    { "glPixelTransferi",  cast(void**)& glPixelTransferi},
-    { "glPixelTransferf",  cast(void**)& glPixelTransferf},
-    { "glPixelStorei",  cast(void**)& glPixelStorei},
-    { "glPixelStoref",  cast(void**)& glPixelStoref},
-    { "glPixelMapusv",  cast(void**)& glPixelMapusv},
-    { "glPixelMapuiv",  cast(void**)& glPixelMapuiv},
-    { "glPixelMapfv",  cast(void**)& glPixelMapfv},
-    { "glColorMaterial",  cast(void**)& glColorMaterial},
-    { "glGetMaterialiv",  cast(void**)& glGetMaterialiv},
-    { "glGetMaterialfv",  cast(void**)& glGetMaterialfv},
-    { "glLightModeliv",  cast(void**)& glLightModeliv},
-    { "glLightModeli",  cast(void**)& glLightModeli},
-    { "glLightModelfv",  cast(void**)& glLightModelfv},
-    { "glLightModelf",  cast(void**)& glLightModelf},
-    { "glGetLightiv",  cast(void**)& glGetLightiv},
-    { "glGetLightfv",  cast(void**)& glGetLightfv},
-    { "glLightiv",  cast(void**)& glLightiv},
-    { "glLighti",  cast(void**)& glLighti},
-    { "glLightfv",  cast(void**)& glLightfv},
-    { "glLightf",  cast(void**)& glLightf},
-    { "glShadeModel",  cast(void**)& glShadeModel},
-    { "glInterleavedArrays",  cast(void**)& glInterleavedArrays},
-    { "glDrawElements",  cast(void**)& glDrawElements},
-    { "glDrawArrays",  cast(void**)& glDrawArrays},
-    { "glArrayElement",  cast(void**)& glArrayElement},
-    { "glGetPointerv",  cast(void**)& glGetPointerv},
-    { "glEdgeFlagPointer",  cast(void**)& glEdgeFlagPointer},
-    { "glTexCoordPointer",  cast(void**)& glTexCoordPointer},
-    { "glIndexPointer",  cast(void**)& glIndexPointer},
-    { "glColorPointer",  cast(void**)& glColorPointer},
-    { "glNormalPointer",  cast(void**)& glNormalPointer},
-    { "glVertexPointer",  cast(void**)& glVertexPointer},
-    { "glRectsv",  cast(void**)& glRectsv},
-    { "glRects",  cast(void**)& glRects},
-    { "glRectiv",  cast(void**)& glRectiv},
-    { "glRecti",  cast(void**)& glRecti},
-    { "glRectfv",  cast(void**)& glRectfv},
-    { "glRectf",  cast(void**)& glRectf},
-    { "glRectdv",  cast(void**)& glRectdv},
-    { "glRectd",  cast(void**)& glRectd},
-    { "glTexCoord4sv",  cast(void**)& glTexCoord4sv},
-    { "glTexCoord4s",  cast(void**)& glTexCoord4s},
-    { "glTexCoord4iv",  cast(void**)& glTexCoord4iv},
-    { "glTexCoord4i",  cast(void**)& glTexCoord4i},
-    { "glTexCoord4fv",  cast(void**)& glTexCoord4fv},
-    { "glTexCoord4f",  cast(void**)& glTexCoord4f},
-    { "glTexCoord4dv",  cast(void**)& glTexCoord4dv},
-    { "glTexCoord4d",  cast(void**)& glTexCoord4d},
-    { "glTexCoord3sv",  cast(void**)& glTexCoord3sv},
-    { "glTexCoord3s",  cast(void**)& glTexCoord3s},
-    { "glTexCoord3iv",  cast(void**)& glTexCoord3iv},
-    { "glTexCoord3i",  cast(void**)& glTexCoord3i},
-    { "glTexCoord3fv",  cast(void**)& glTexCoord3fv},
-    { "glTexCoord3f",  cast(void**)& glTexCoord3f},
-    { "glTexCoord3dv",  cast(void**)& glTexCoord3dv},
-    { "glTexCoord3d",  cast(void**)& glTexCoord3d},
-    { "glTexCoord2sv",  cast(void**)& glTexCoord2sv},
-    { "glTexCoord2s",  cast(void**)& glTexCoord2s},
-    { "glTexCoord2iv",  cast(void**)& glTexCoord2iv},
-    { "glTexCoord2i",  cast(void**)& glTexCoord2i},
-    { "glTexCoord2fv",  cast(void**)& glTexCoord2fv},
-    { "glTexCoord2f",  cast(void**)& glTexCoord2f},
-    { "glTexCoord2dv",  cast(void**)& glTexCoord2dv},
-    { "glTexCoord2d",  cast(void**)& glTexCoord2d},
-    { "glTexCoord1sv",  cast(void**)& glTexCoord1sv},
-    { "glTexCoord1s",  cast(void**)& glTexCoord1s},
-    { "glTexCoord1iv",  cast(void**)& glTexCoord1iv},
-    { "glTexCoord1i",  cast(void**)& glTexCoord1i},
-    { "glTexCoord1fv",  cast(void**)& glTexCoord1fv},
-    { "glTexCoord1f",  cast(void**)& glTexCoord1f},
-    { "glTexCoord1dv",  cast(void**)& glTexCoord1dv},
-    { "glTexCoord1d",  cast(void**)& glTexCoord1d},
-    { "glColor4usv",  cast(void**)& glColor4usv},
-    { "glColor4us",  cast(void**)& glColor4us},
-    { "glColor4uiv",  cast(void**)& glColor4uiv},
-    { "glColor4ui",  cast(void**)& glColor4ui},
-    { "glColor4ubv",  cast(void**)& glColor4ubv},
-    { "glColor4ub",  cast(void**)& glColor4ub},
-    { "glColor4sv",  cast(void**)& glColor4sv},
-    { "glColor4s",  cast(void**)& glColor4s},
-    { "glColor4iv",  cast(void**)& glColor4iv},
-    { "glColor4i",  cast(void**)& glColor4i},
-    { "glColor4fv",  cast(void**)& glColor4fv},
-    { "glColor4f",  cast(void**)& glColor4f},
-    { "glColor4dv",  cast(void**)& glColor4dv},
-    { "glColor4d",  cast(void**)& glColor4d},
-    { "glColor4bv",  cast(void**)& glColor4bv},
-    { "glColor4b",  cast(void**)& glColor4b},
-    { "glColor3usv",  cast(void**)& glColor3usv},
-    { "glColor3us",  cast(void**)& glColor3us},
-    { "glColor3uiv",  cast(void**)& glColor3uiv},
-    { "glColor3ui",  cast(void**)& glColor3ui},
-    { "glColor3ubv",  cast(void**)& glColor3ubv},
-    { "glColor3ub",  cast(void**)& glColor3ub},
-    { "glColor3sv",  cast(void**)& glColor3sv},
-    { "glColor3s",  cast(void**)& glColor3s},
-    { "glColor3iv",  cast(void**)& glColor3iv},
-    { "glColor3i",  cast(void**)& glColor3i},
-    { "glColor3fv",  cast(void**)& glColor3fv},
-    { "glColor3f",  cast(void**)& glColor3f},
-    { "glColor3dv",  cast(void**)& glColor3dv},
-    { "glColor3d",  cast(void**)& glColor3d},
-    { "glColor3bv",  cast(void**)& glColor3bv},
-    { "glColor3b",  cast(void**)& glColor3b},
-    { "glIndexubv",  cast(void**)& glIndexubv},
-    { "glIndexub",  cast(void**)& glIndexub},
-    { "glIndexsv",  cast(void**)& glIndexsv},
-    { "glIndexs",  cast(void**)& glIndexs},
-    { "glIndexiv",  cast(void**)& glIndexiv},
-    { "glIndexi",  cast(void**)& glIndexi},
-    { "glIndexfv",  cast(void**)& glIndexfv},
-    { "glIndexf",  cast(void**)& glIndexf},
-    { "glIndexdv",  cast(void**)& glIndexdv},
-    { "glIndexd",  cast(void**)& glIndexd},
-    { "glNormal3sv",  cast(void**)& glNormal3sv},
-    { "glNormal3s",  cast(void**)& glNormal3s},
-    { "glNormal3iv",  cast(void**)& glNormal3iv},
-    { "glNormal3i",  cast(void**)& glNormal3i},
-    { "glNormal3fv",  cast(void**)& glNormal3fv},
-    { "glNormal3f",  cast(void**)& glNormal3f},
-    { "glNormal3dv",  cast(void**)& glNormal3dv},
-    { "glNormal3d",  cast(void**)& glNormal3d},
-    { "glNormal3bv",  cast(void**)& glNormal3bv},
-    { "glNormal3b",  cast(void**)& glNormal3b},
-    { "glVertex4sv",  cast(void**)& glVertex4sv},
-    { "glVertex4s",  cast(void**)& glVertex4s},
-    { "glVertex4iv",  cast(void**)& glVertex4iv},
-    { "glVertex4i",  cast(void**)& glVertex4i},
-    { "glVertex4fv",  cast(void**)& glVertex4fv},
-    { "glVertex4f",  cast(void**)& glVertex4f},
-    { "glVertex4dv",  cast(void**)& glVertex4dv},
-    { "glVertex4d",  cast(void**)& glVertex4d},
-    { "glVertex3sv",  cast(void**)& glVertex3sv},
-    { "glVertex3s",  cast(void**)& glVertex3s},
-    { "glVertex3iv",  cast(void**)& glVertex3iv},
-    { "glVertex3i",  cast(void**)& glVertex3i},
-    { "glVertex3fv",  cast(void**)& glVertex3fv},
-    { "glVertex3f",  cast(void**)& glVertex3f},
-    { "glVertex3dv",  cast(void**)& glVertex3dv},
-    { "glVertex3d",  cast(void**)& glVertex3d},
-    { "glVertex2sv",  cast(void**)& glVertex2sv},
-    { "glVertex2s",  cast(void**)& glVertex2s},
-    { "glVertex2iv",  cast(void**)& glVertex2iv},
-    { "glVertex2i",  cast(void**)& glVertex2i},
-    { "glVertex2fv",  cast(void**)& glVertex2fv},
-    { "glVertex2f",  cast(void**)& glVertex2f},
-    { "glVertex2dv",  cast(void**)& glVertex2dv},
-    { "glVertex2d",  cast(void**)& glVertex2d},
-    { "glEnd",  cast(void**)& glEnd},
-    { "glBegin",  cast(void**)& glBegin},
-    { "glListBase",  cast(void**)& glListBase},
-    { "glCallLists",  cast(void**)& glCallLists},
-    { "glCallList",  cast(void**)& glCallList},
-    { "glEndList",  cast(void**)& glEndList},
-    { "glNewList",  cast(void**)& glNewList},
-    { "glGenLists",  cast(void**)& glGenLists},
-    { "glDeleteLists",  cast(void**)& glDeleteLists},
-    { "glIsList",  cast(void**)& glIsList},
-    { "glTranslatef",  cast(void**)& glTranslatef},
-    { "glTranslated",  cast(void**)& glTranslated},
-    { "glScalef",  cast(void**)& glScalef},
-    { "glScaled",  cast(void**)& glScaled},
-    { "glRotatef",  cast(void**)& glRotatef},
-    { "glRotated",  cast(void**)& glRotated},
-    { "glMultMatrixf",  cast(void**)& glMultMatrixf},
-    { "glMultMatrixd",  cast(void**)& glMultMatrixd},
-    { "glLoadMatrixf",  cast(void**)& glLoadMatrixf},
-    { "glLoadMatrixd",  cast(void**)& glLoadMatrixd},
-    { "glLoadIdentity",  cast(void**)& glLoadIdentity},
-    { "glPopMatrix",  cast(void**)& glPopMatrix},
-    { "glPushMatrix",  cast(void**)& glPushMatrix},
-    { "glViewport",  cast(void**)& glViewport},
-    { "glFrustum",  cast(void**)& glFrustum},
-    { "glOrtho",  cast(void**)& glOrtho},
-    { "glMatrixMode",  cast(void**)& glMatrixMode},
-    { "glAccum",  cast(void**)& glAccum},
-    { "glClearAccum",  cast(void**)& glClearAccum},
-    { "glDepthRange",  cast(void**)& glDepthRange},
-    { "glDepthMask",  cast(void**)& glDepthMask},
-    { "glDepthFunc",  cast(void**)& glDepthFunc},
-    { "glClearDepth",  cast(void**)& glClearDepth},
-    { "glHint",  cast(void**)& glHint},
-    { "glFlush",  cast(void**)& glFlush},
-    { "glFinish",  cast(void**)& glFinish},
-    { "glGetString",  cast(void**)& glGetString},
-    { "glGetError",  cast(void**)& glGetError},
-    { "glRenderMode",  cast(void**)& glRenderMode},
-    { "glPopClientAttrib",  cast(void**)& glPopClientAttrib},
-    { "glPushClientAttrib",  cast(void**)& glPushClientAttrib},
-    { "glPopAttrib",  cast(void**)& glPopAttrib},
-    { "glPushAttrib",  cast(void**)& glPushAttrib},
-    { "glGetIntegerv",  cast(void**)& glGetIntegerv},
-    { "glGetFloatv",  cast(void**)& glGetFloatv},
-    { "glGetDoublev",  cast(void**)& glGetDoublev},
-    { "glGetBooleanv",  cast(void**)& glGetBooleanv},
-    { "glDisableClientState",  cast(void**)& glDisableClientState},
-    { "glEnableClientState",  cast(void**)& glEnableClientState},
-    { "glIsEnabled",  cast(void**)& glIsEnabled},
-    { "glDisable",  cast(void**)& glDisable},
-    { "glEnable",  cast(void**)& glEnable},
-    { "glReadBuffer",  cast(void**)& glReadBuffer},
-    { "glDrawBuffer",  cast(void**)& glDrawBuffer},
-    { "glClipPlane",  cast(void**)& glClipPlane},
-    { "glScissor",  cast(void**)& glScissor},
-    { "glEdgeFlagv",  cast(void**)& glEdgeFlagv},
-    { "glEdgeFlag",  cast(void**)& glEdgeFlag},
-    { "glGetPolygonStipple",  cast(void**)& glGetPolygonStipple},
-    { "glPolygonStipple",  cast(void**)& glPolygonStipple},
-    { "glPolygonOffset",  cast(void**)& glPolygonOffset},
-    { "glPolygonMode",  cast(void**)& glPolygonMode},
-    { "glLineStipple",  cast(void**)& glLineStipple},
-    { "glLineWidth",  cast(void**)& glLineWidth},
-    { "glPointSize",  cast(void**)& glPointSize},
-    { "glFrontFace",  cast(void**)& glFrontFace},
-    { "glCullFace",  cast(void**)& glCullFace},
-    { "glLogicOp",  cast(void**)& glLogicOp},
-    { "glBlendFunc",  cast(void**)& glBlendFunc},
-    { "glAlphaFunc",  cast(void**)& glAlphaFunc},
-    { "glColorMask",  cast(void**)& glColorMask},
-    { "glIndexMask",  cast(void**)& glIndexMask},
-    { "glClear",  cast(void**)& glClear},
-    { "glClearColor",  cast(void**)& glClearColor},
-    { "glClearIndex",  cast(void**)& glClearIndex},
-];
-
-} else { // version(DYNLINK)
-extern (C) void glMultiDrawElementsSUN(uint, int *, uint, void * *, int);
-extern (C) void glMultiDrawArraysSUN(uint, int *, int *, int);
-extern (C) void glTexSubImage2DEXT(uint, int, int, int, int, int, uint, uint, void *);
-extern (C) void glTexSubImage1DEXT(uint, int, int, int, uint, uint, void *);
-extern (C) void glPointParameterfvARB(uint, float *);
-extern (C) void glPointParameterfARB(uint, float);
-extern (C) void glGetCompressedTexImageARB(uint, int, void *);
-extern (C) void glCompressedTexSubImage1DARB(uint, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexSubImage2DARB(uint, int, int, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexSubImage3DARB(uint, int, int, int, int, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexImage1DARB(uint, int, int, int, int, int, void *);
-extern (C) void glCompressedTexImage2DARB(uint, int, int, int, int, int, int, void *);
-extern (C) void glCompressedTexImage3DARB(uint, int, int, int, int, int, int, int, void *);
-extern (C) void glDrawRangeElementArrayATI(uint, uint, uint, int);
-extern (C) void glDrawElementArrayATI(uint, int);
-extern (C) void glElementPointerATI(uint, void *);
-extern (C) void glGetVariantArrayObjectivATI(uint, uint, int *);
-extern (C) void glGetVariantArrayObjectfvATI(uint, uint, float *);
-extern (C) void glGetArrayObjectivATI(uint, uint, int *);
-extern (C) void glGetArrayObjectfvATI(uint, uint, float *);
-extern (C) void glGetObjectBufferivATI(uint, uint, int *);
-extern (C) void glGetObjectBufferfvATI(uint, uint, float *);
-extern (C) void glVariantArrayObjectATI(uint, uint, int, uint, uint);
-extern (C) void glArrayObjectATI(uint, int, uint, int, uint, uint);
-extern (C) void glUpdateObjectBufferATI(uint, uint, int, void *, uint);
-extern (C) char glIsObjectBufferATI(uint);
-extern (C) void glFreeObjectBufferATI(uint);
-extern (C) uint glNewObjectBufferATI(int, void *, uint);
-extern (C) void glTexAddressParamuiMTX(uint, uint, uint);
-extern (C) void glTexAddressParamfvMTX(uint, uint, float *);
-extern (C) void glTexAddressOp4MTX(uint, uint, uint, uint, uint);
-extern (C) void glTexAddressOp3MTX(uint, uint, uint, uint);
-extern (C) void glTexAddressOp2MTX(uint, uint, uint);
-extern (C) void glTexAddressOp1MTX(uint, uint);
-extern (C) void glTexAddressHintsMTX(uint, uint);
-extern (C) void glSetFragProcInvariantsvMTX(uint, short *);
-extern (C) void glSetFragProcInvariantivMTX(uint, int *);
-extern (C) void glSetFragProcInvariantfvMTX(uint, float *);
-extern (C) void glSetFragProcInvariantdvMTX(uint, double *);
-extern (C) void glSetFragProcInvariantbvMTX(uint, char *);
-extern (C) char glIsFragShaderMTX(uint);
-extern (C) void glGetTexAddressParamuivMTX(uint, uint, uint *);
-extern (C) void glGetTexAddressParamfvMTX(uint, uint, float *);
-extern (C) void glGetFragProcInvariantsvMTX(uint, short *);
-extern (C) void glGetFragProcInvariantivMTX(uint, int *);
-extern (C) void glGetFragProcInvariantfvMTX(uint, float *);
-extern (C) void glGetFragProcInvariantdvMTX(uint, double *);
-extern (C) void glGetFragProcInvariantbvMTX(uint, char *);
-extern (C) uint glGenFragShadersMTX(int);
-extern (C) uint glGenFragProcInvariantsvMTX(short *);
-extern (C) uint glGenFragProcInvariantivMTX(int *);
-extern (C) uint glGenFragProcInvariantfvMTX(float *);
-extern (C) uint glGenFragProcInvariantdvMTX(double *);
-extern (C) uint glGenFragProcInvariantbvMTX(char *);
-extern (C) void glFragProcRGBAOp3MTX(uint, uint, uint, uint, uint);
-extern (C) void glFragProcRGBAOp2MTX(uint, uint, uint, uint);
-extern (C) void glFragProcRGBAOp1MTX(uint, uint, uint);
-extern (C) void glFragProcOpParamMTX(uint, uint, uint);
-extern (C) void glFragProcAlphaOp3MTX(uint, uint, uint, uint, uint);
-extern (C) void glFragProcAlphaOp2MTX(uint, uint, uint, uint);
-extern (C) void glFragProcAlphaOp1MTX(uint, uint, uint);
-extern (C) void glEndFragShaderMTX();
-extern (C) void glDeleteFragShadersMTX(int, uint *);
-extern (C) void glBindFragShaderMTX(uint);
-extern (C) void glBeginFragShaderMTX();
-extern (C) void glGetLocalConstantFloatvEXT(uint, uint, float *);
-extern (C) void glGetLocalConstantIntegervEXT(uint, uint, int *);
-extern (C) void glGetLocalConstantBooleanvEXT(uint, uint, char *);
-extern (C) void glGetInvariantFloatvEXT(uint, uint, float *);
-extern (C) void glGetInvariantIntegervEXT(uint, uint, int *);
-extern (C) void glGetInvariantBooleanvEXT(uint, uint, char *);
-extern (C) void glGetVariantPointervEXT(uint, uint, void * *);
-extern (C) void glGetVariantFloatvEXT(uint, uint, float *);
-extern (C) void glGetVariantIntegervEXT(uint, uint, int *);
-extern (C) void glGetVariantBooleanvEXT(uint, uint, char *);
-extern (C) char glIsVariantEnabledEXT(uint, uint);
-extern (C) uint glBindParameterEXT(uint);
-extern (C) uint glBindTextureUnitParameterEXT(uint, uint);
-extern (C) uint glBindTexGenParameterEXT(uint, uint, uint);
-extern (C) uint glBindMaterialParameterEXT(uint, uint);
-extern (C) uint glBindLightParameterEXT(uint, uint);
-extern (C) void glDisableVariantClientStateEXT(uint);
-extern (C) void glEnableVariantClientStateEXT(uint);
-extern (C) void glVariantPointerEXT(uint, uint, int, void *);
-extern (C) void glVariantuivEXT(uint, uint *);
-extern (C) void glVariantusvEXT(uint, ushort *);
-extern (C) void glVariantubvEXT(uint, char *);
-extern (C) void glVariantdvEXT(uint, double *);
-extern (C) void glVariantfvEXT(uint, float *);
-extern (C) void glVariantivEXT(uint, int *);
-extern (C) void glVariantsvEXT(uint, short *);
-extern (C) void glVariantbvEXT(uint, char *);
-extern (C) void glSetLocalConstantEXT(uint, uint, void *);
-extern (C) void glSetInvariantEXT(uint, uint, void *);
-extern (C) uint glGenSymbolsEXT(uint, uint, uint, uint);
-extern (C) void glExtractComponentEXT(uint, uint, uint);
-extern (C) void glInsertComponentEXT(uint, uint, uint);
-extern (C) void glWriteMaskEXT(uint, uint, uint, uint, uint, uint);
-extern (C) void glSwizzleEXT(uint, uint, uint, uint, uint, uint);
-extern (C) void glShaderOp3EXT(uint, uint, uint, uint, uint);
-extern (C) void glShaderOp2EXT(uint, uint, uint, uint);
-extern (C) void glShaderOp1EXT(uint, uint, uint);
-extern (C) void glDeleteVertexShaderEXT(uint);
-extern (C) uint glGenVertexShadersEXT(uint);
-extern (C) void glBindVertexShaderEXT(uint);
-extern (C) void glEndVertexShaderEXT();
-extern (C) void glBeginVertexShaderEXT();
-extern (C) void glSecondaryColorPointerEXT(int, uint, int, void *);
-extern (C) void glSecondaryColor3dvEXT(double *);
-extern (C) void glSecondaryColor3fvEXT(float *);
-extern (C) void glSecondaryColor3uivEXT(uint *);
-extern (C) void glSecondaryColor3ivEXT(int *);
-extern (C) void glSecondaryColor3usvEXT(ushort *);
-extern (C) void glSecondaryColor3svEXT(short *);
-extern (C) void glSecondaryColor3ubvEXT(char *);
-extern (C) void glSecondaryColor3bvEXT(char *);
-extern (C) void glSecondaryColor3dEXT(double, double, double);
-extern (C) void glSecondaryColor3fEXT(float, float, float);
-extern (C) void glSecondaryColor3uiEXT(uint, uint, uint);
-extern (C) void glSecondaryColor3iEXT(int, int, int);
-extern (C) void glSecondaryColor3usEXT(ushort, ushort, ushort);
-extern (C) void glSecondaryColor3sEXT(short, short, short);
-extern (C) void glSecondaryColor3ubEXT(char, char, char);
-extern (C) void glSecondaryColor3bEXT(char, char, char);
-extern (C) void glMultiDrawElementsEXT(uint, int *, uint, void * *, int);
-extern (C) void glMultiDrawArraysEXT(uint, int *, int *, int);
-extern (C) void glFogCoordPointerEXT(uint, int, void *);
-extern (C) void glFogCoorddvEXT(double *);
-extern (C) void glFogCoordfvEXT(float *);
-extern (C) void glFogCoorddEXT(double);
-extern (C) void glFogCoordfEXT(float);
-extern (C) void glDrawRangeElementsEXT(uint, uint, uint, int, uint, void *);
-extern (C) void glBlendFuncSeparateEXT(uint, uint, uint, uint);
-extern (C) uint glBufferRegionEnabled();
-extern (C) void glDrawBufferRegion(uint, int, int, int, int, int, int);
-extern (C) void glReadBufferRegion(uint, int, int, int, int);
-extern (C) void glDeleteBufferRegion(uint);
-extern (C) uint glNewBufferRegion(uint);
-extern (C) void glCullParameterfvEXT(uint, float *);
-extern (C) void glCullParameterdvEXT(uint, double *);
-extern (C) void glGetMinmaxParameterfvEXT(uint, uint, float *);
-extern (C) void glGetMinmaxParameterivEXT(uint, uint, int *);
-extern (C) void glGetMinmaxEXT(uint, char, uint, uint, void *);
-extern (C) void glResetMinmaxEXT(uint);
-extern (C) void glMinmaxEXT(uint, uint, char);
-extern (C) void glGetHistogramParameterfvEXT(uint, uint, float *);
-extern (C) void glGetHistogramParameterivEXT(uint, uint, int *);
-extern (C) void glGetHistogramEXT(uint, char, uint, uint, void *);
-extern (C) void glResetHistogramEXT(uint);
-extern (C) void glHistogramEXT(uint, int, uint, char);
-extern (C) void glGetConvolutionParameterfvEXT(uint, uint, float *);
-extern (C) void glGetConvolutionParameterivEXT(uint, uint, int *);
-extern (C) void glConvolutionParameterfvEXT(uint, uint, float *);
-extern (C) void glConvolutionParameterfEXT(uint, uint, float);
-extern (C) void glConvolutionParameterivEXT(uint, uint, int *);
-extern (C) void glConvolutionParameteriEXT(uint, uint, int);
-extern (C) void glGetSeparableFilterEXT(uint, uint, uint, void *, void *, void *);
-extern (C) void glSeparableFilter2DEXT(uint, uint, int, int, uint, uint, void *, void *);
-extern (C) void glGetConvolutionFilterEXT(uint, uint, uint, void *);
-extern (C) void glCopyConvolutionFilter2DEXT(uint, uint, int, int, int, int);
-extern (C) void glCopyConvolutionFilter1DEXT(uint, uint, int, int, int);
-extern (C) void glConvolutionFilter2DEXT(uint, uint, int, int, uint, uint, void *);
-extern (C) void glConvolutionFilter1DEXT(uint, uint, int, uint, uint, void *);
-extern (C) char glValidBackBufferHint(int, int, int, int);
-extern (C) void glWindowBackBufferHint();
-extern (C) char glInitValidBackBufferHintAutodesk();
-extern (C) void glMTexCoord4fvSGIS(uint, float *);
-extern (C) void glMTexCoord3fvSGIS(uint, float *);
-extern (C) void glMTexCoord2fvSGIS(uint, float *);
-extern (C) void glMTexCoord4fSGIS(uint, float, float, float, float);
-extern (C) void glMTexCoord3fSGIS(uint, float, float, float);
-extern (C) void glMTexCoord2fSGIS(uint, float, float);
-extern (C) void glSelectTextureSGIS(uint);
-extern (C) void glSampleCoverageARB(float, char);
-extern (C) void glMultTransposeMatrixdARB(double *);
-extern (C) void glMultTransposeMatrixfARB(float *);
-extern (C) void glLoadTransposeMatrixdARB(double *);
-extern (C) void glLoadTransposeMatrixfARB(float *);
-extern (C) void glSeparableFilter2D(uint, uint, int, int, uint, uint, void *, void *);
-extern (C) void glSampleCoverage(float, char);
-extern (C) void glResetMinmax(uint);
-extern (C) void glRasterPos4sv(short *);
-extern (C) void glRasterPos4s(short, short, short, short);
-extern (C) void glRasterPos4iv(int *);
-extern (C) void glRasterPos4i(int, int, int, int);
-extern (C) void glRasterPos4fv(float *);
-extern (C) void glRasterPos4f(float, float, float, float);
-extern (C) void glRasterPos4dv(double *);
-extern (C) void glRasterPos4d(double, double, double, double);
-extern (C) void glRasterPos3sv(short *);
-extern (C) void glRasterPos3s(short, short, short);
-extern (C) void glRasterPos3iv(int *);
-extern (C) void glRasterPos3i(int, int, int);
-extern (C) void glRasterPos3fv(float *);
-extern (C) void glRasterPos3f(float, float, float);
-extern (C) void glRasterPos3dv(double *);
-extern (C) void glRasterPos3d(double, double, double);
-extern (C) void glRasterPos2sv(short *);
-extern (C) void glRasterPos2s(short, short);
-extern (C) void glRasterPos2iv(int *);
-extern (C) void glRasterPos2i(int, int);
-extern (C) void glRasterPos2fv(float *);
-extern (C) void glRasterPos2f(float, float);
-extern (C) void glRasterPos2dv(double *);
-extern (C) void glRasterPos2d(double, double);
-extern (C) void glMaterialiv(uint, uint, int *);
-extern (C) void glMateriali(uint, uint, int);
-extern (C) void glMaterialfv(uint, uint, float *);
-extern (C) void glMaterialf(uint, uint, float);
-extern (C) void glGetTexImage(uint, int, uint, uint, void *);
-extern (C) void glGetTexGeniv(uint, uint, int *);
-extern (C) void glGetTexGenfv(uint, uint, float *);
-extern (C) void glGetTexGendv(uint, uint, double *);
-extern (C) void glGetTexEnviv(uint, uint, int *);
-extern (C) void glGetTexEnvfv(uint, uint, float *);
-extern (C) void glGetSeparableFilter(uint, uint, uint, void *, void *, void *);
-extern (C) void glGetConvolutionParameterfv(uint, uint, float *);
-extern (C) void glGetConvolutionParameteriv(uint, uint, int *);
-extern (C) void glGetConvolutionFilter(uint, uint, uint, void *);
-extern (C) void glGetClipPlane(uint, double *);
-extern (C) void glUnlockArraysEXT();
-extern (C) void glLockArraysEXT(int, int);
-extern (C) void glGetColorTableParameterivEXT(uint, uint, int *);
-extern (C) void glGetColorTableParameterfvEXT(uint, uint, float *);
-extern (C) void glGetColorTableEXT(uint, uint, uint, void *);
-extern (C) void glColorTableParameterfvEXT(uint, uint, float *);
-extern (C) void glColorTableParameterivEXT(uint, uint, int *);
-extern (C) void glCopyColorTableEXT(uint, uint, int, int, int);
-extern (C) void glColorTableEXT(uint, uint, int, uint, uint, void *);
-extern (C) void glCopyColorSubTableEXT(uint, int, int, int, int);
-extern (C) void glColorSubTableEXT(uint, int, int, uint, uint, void *);
-extern (C) void glPointParameterfvSGIS(uint, float *);
-extern (C) void glPointParameterfSGIS(uint, float);
-extern (C) void glPointParameterfvEXT(uint, float *);
-extern (C) void glPointParameterfEXT(uint, float);
-extern (C) void glVertexPointerEXT(int, uint, int, int, void *);
-extern (C) void glTexCoordPointerEXT(int, uint, int, int, void *);
-extern (C) void glNormalPointerEXT(uint, int, int, void *);
-extern (C) void glIndexPointerEXT(uint, int, int, void *);
-extern (C) void glGetPointervEXT(uint, void * *);
-extern (C) void glEdgeFlagPointerEXT(int, int, char *);
-extern (C) void glDrawArraysEXT(uint, int, int);
-extern (C) void glColorPointerEXT(int, uint, int, int, void *);
-extern (C) void glArrayElementEXT(int);
-extern (C) char glIsTextureEXT(uint);
-extern (C) char glAreTexturesResidentEXT(int, uint *, char *);
-extern (C) void glGenTexturesEXT(int, uint *);
-extern (C) void glDeleteTexturesEXT(int, uint *);
-extern (C) void glPrioritizeTexturesEXT(int, uint *, float *);
-extern (C) void glBindTextureEXT(uint, uint);
-extern (C) void glCopyTexSubImage3DEXT(uint, int, int, int, int, int, int, int, int);
-extern (C) void glTexSubImage3DEXT(uint, int, int, int, int, int, int, int, uint, uint, void *);
-extern (C) void glTexImage3DEXT(uint, int, int, int, int, int, int, uint, uint, void *);
-extern (C) void glPolygonOffsetEXT(float, float);
-extern (C) void glBlendColorEXT(float, float, float, float);
-extern (C) void glBlendEquationEXT(uint);
-extern (C) void glMultiTexCoord4dvARB(uint, double *);
-extern (C) void glMultiTexCoord4fvARB(uint, float *);
-extern (C) void glMultiTexCoord4ivARB(uint, int *);
-extern (C) void glMultiTexCoord4svARB(uint, short *);
-extern (C) void glMultiTexCoord4dARB(uint, double, double, double, double);
-extern (C) void glMultiTexCoord4fARB(uint, float, float, float, float);
-extern (C) void glMultiTexCoord4iARB(uint, int, int, int, int);
-extern (C) void glMultiTexCoord4sARB(uint, short, short, short, short);
-extern (C) void glMultiTexCoord3dvARB(uint, double *);
-extern (C) void glMultiTexCoord3fvARB(uint, float *);
-extern (C) void glMultiTexCoord3ivARB(uint, int *);
-extern (C) void glMultiTexCoord3svARB(uint, short *);
-extern (C) void glMultiTexCoord3dARB(uint, double, double, double);
-extern (C) void glMultiTexCoord3fARB(uint, float, float, float);
-extern (C) void glMultiTexCoord3iARB(uint, int, int, int);
-extern (C) void glMultiTexCoord3sARB(uint, short, short, short);
-extern (C) void glMultiTexCoord2dvARB(uint, double *);
-extern (C) void glMultiTexCoord2fvARB(uint, float *);
-extern (C) void glMultiTexCoord2ivARB(uint, int *);
-extern (C) void glMultiTexCoord2svARB(uint, short *);
-extern (C) void glMultiTexCoord2dARB(uint, double, double);
-extern (C) void glMultiTexCoord2fARB(uint, float, float);
-extern (C) void glMultiTexCoord2iARB(uint, int, int);
-extern (C) void glMultiTexCoord2sARB(uint, short, short);
-extern (C) void glMultiTexCoord1dvARB(uint, double *);
-extern (C) void glMultiTexCoord1fvARB(uint, float *);
-extern (C) void glMultiTexCoord1ivARB(uint, int *);
-extern (C) void glMultiTexCoord1svARB(uint, short *);
-extern (C) void glMultiTexCoord1dARB(uint, double);
-extern (C) void glMultiTexCoord1fARB(uint, float);
-extern (C) void glMultiTexCoord1iARB(uint, int);
-extern (C) void glMultiTexCoord1sARB(uint, short);
-extern (C) void glActiveTextureARB(uint);
-extern (C) void glClientActiveTextureARB(uint);
-extern (C) void glMultTransposeMatrixd(double *);
-extern (C) void glMultTransposeMatrixf(float *);
-extern (C) void glLoadTransposeMatrixd(double *);
-extern (C) void glLoadTransposeMatrixf(float *);
-extern (C) void glMultiTexCoord4dv(uint, double *);
-extern (C) void glMultiTexCoord4fv(uint, float *);
-extern (C) void glMultiTexCoord4iv(uint, int *);
-extern (C) void glMultiTexCoord4sv(uint, short *);
-extern (C) void glMultiTexCoord4d(uint, double, double, double, double);
-extern (C) void glMultiTexCoord4f(uint, float, float, float, float);
-extern (C) void glMultiTexCoord4i(uint, int, int, int, int);
-extern (C) void glMultiTexCoord4s(uint, short, short, short, short);
-extern (C) void glMultiTexCoord3dv(uint, double *);
-extern (C) void glMultiTexCoord3fv(uint, float *);
-extern (C) void glMultiTexCoord3iv(uint, int *);
-extern (C) void glMultiTexCoord3sv(uint, short *);
-extern (C) void glMultiTexCoord3d(uint, double, double, double);
-extern (C) void glMultiTexCoord3f(uint, float, float, float);
-extern (C) void glMultiTexCoord3i(uint, int, int, int);
-extern (C) void glMultiTexCoord3s(uint, short, short, short);
-extern (C) void glMultiTexCoord2dv(uint, double *);
-extern (C) void glMultiTexCoord2fv(uint, float *);
-extern (C) void glMultiTexCoord2iv(uint, int *);
-extern (C) void glMultiTexCoord2sv(uint, short *);
-extern (C) void glMultiTexCoord2d(uint, double, double);
-extern (C) void glMultiTexCoord2f(uint, float, float);
-extern (C) void glMultiTexCoord2i(uint, int, int);
-extern (C) void glMultiTexCoord2s(uint, short, short);
-extern (C) void glMultiTexCoord1dv(uint, double *);
-extern (C) void glMultiTexCoord1fv(uint, float *);
-extern (C) void glMultiTexCoord1iv(uint, int *);
-extern (C) void glMultiTexCoord1sv(uint, short *);
-extern (C) void glMultiTexCoord1d(uint, double);
-extern (C) void glMultiTexCoord1f(uint, float);
-extern (C) void glMultiTexCoord1i(uint, int);
-extern (C) void glMultiTexCoord1s(uint, short);
-extern (C) void glGetCompressedTexImage(uint, int, void *);
-extern (C) void glCompressedTexSubImage3D(uint, int, int, int, int, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexSubImage2D(uint, int, int, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexSubImage1D(uint, int, int, int, uint, int, void *);
-extern (C) void glCompressedTexImage3D(uint, int, int, int, int, int, int, int, void *);
-extern (C) void glCompressedTexImage2D(uint, int, int, int, int, int, int, void *);
-extern (C) void glCompressedTexImage1D(uint, int, int, int, int, int, void *);
-extern (C) void glClientActiveTexture(uint);
-extern (C) void glActiveTexture(uint);
-extern (C) void glCopyConvolutionFilter2D(uint, uint, int, int, int, int);
-extern (C) void glCopyConvolutionFilter1D(uint, uint, int, int, int);
-extern (C) void glConvolutionParameterfv(uint, uint, float *);
-extern (C) void glConvolutionParameterf(uint, uint, float);
-extern (C) void glConvolutionParameteriv(uint, uint, int *);
-extern (C) void glConvolutionParameteri(uint, uint, int);
-extern (C) void glConvolutionFilter2D(uint, uint, int, int, uint, uint, void *);
-extern (C) void glConvolutionFilter1D(uint, uint, int, uint, uint, void *);
-extern (C) void glGetMinmaxParameterfv(uint, uint, float *);
-extern (C) void glGetMinmaxParameteriv(uint, uint, int *);
-extern (C) void glGetMinmax(uint, char, uint, uint, void *);
-extern (C) void glMinmax(uint, uint, char);
-extern (C) void glGetHistogramParameterfv(uint, uint, float *);
-extern (C) void glGetHistogramParameteriv(uint, uint, int *);
-extern (C) void glGetHistogram(uint, char, uint, uint, void *);
-extern (C) void glResetHistogram(uint);
-extern (C) void glHistogram(uint, int, uint, char);
-extern (C) void glBlendEquation(uint);
-extern (C) void glBlendColor(float, float, float, float);
-extern (C) void glGetColorTableParameteriv(uint, uint, int *);
-extern (C) void glGetColorTableParameterfv(uint, uint, float *);
-extern (C) void glGetColorTable(uint, uint, uint, void *);
-extern (C) void glCopyColorTable(uint, uint, int, int, int);
-extern (C) void glCopyColorSubTable(uint, int, int, int, int);
-extern (C) void glColorTableParameterfv(uint, uint, float *);
-extern (C) void glColorTableParameteriv(uint, uint, int *);
-extern (C) void glColorSubTable(uint, int, int, uint, uint, void *);
-extern (C) void glColorTable(uint, uint, int, uint, uint, void *);
-extern (C) void glCopyTexSubImage3D(uint, int, int, int, int, int, int, int, int);
-extern (C) void glTexSubImage3D(uint, int, int, int, int, int, int, int, uint, uint, void *);
-extern (C) void glTexImage3D(uint, int, int, int, int, int, int, uint, uint, void *);
-extern (C) void glDrawRangeElements(uint, uint, uint, int, uint, void *);
-extern (C) void glPushName(uint);
-extern (C) void glPopName();
-extern (C) void glLoadName(uint);
-extern (C) void glInitNames();
-extern (C) void glSelectBuffer(int, uint *);
-extern (C) void glPassThrough(float);
-extern (C) void glFeedbackBuffer(int, uint, float *);
-extern (C) void glFogiv(uint, int *);
-extern (C) void glFogi(uint, int);
-extern (C) void glFogfv(uint, float *);
-extern (C) void glFogf(uint, float);
-extern (C) void glEvalPoint2(int, int);
-extern (C) void glEvalPoint1(int);
-extern (C) void glEvalMesh2(uint, int, int, int, int);
-extern (C) void glEvalMesh1(uint, int, int);
-extern (C) void glMapGrid2f(int, float, float, int, float, float);
-extern (C) void glMapGrid2d(int, double, double, int, double, double);
-extern (C) void glMapGrid1f(int, float, float);
-extern (C) void glMapGrid1d(int, double, double);
-extern (C) void glEvalCoord2fv(float *);
-extern (C) void glEvalCoord2f(float, float);
-extern (C) void glEvalCoord2dv(double *);
-extern (C) void glEvalCoord2d(double, double);
-extern (C) void glEvalCoord1fv(float *);
-extern (C) void glEvalCoord1f(float);
-extern (C) void glEvalCoord1dv(double *);
-extern (C) void glEvalCoord1d(double);
-extern (C) void glGetMapiv(uint, uint, int *);
-extern (C) void glGetMapfv(uint, uint, float *);
-extern (C) void glGetMapdv(uint, uint, double *);
-extern (C) void glMap2f(uint, float, float, int, int, float, float, int, int, float *);
-extern (C) void glMap2d(uint, double, double, int, int, double, double, int, int, double *);
-extern (C) void glMap1f(uint, float, float, int, int, float *);
-extern (C) void glMap1d(uint, double, double, int, int, double *);
-extern (C) void glCopyTexSubImage2D(uint, int, int, int, int, int, int, int);
-extern (C) void glCopyTexSubImage1D(uint, int, int, int, int, int);
-extern (C) void glCopyTexImage2D(uint, int, uint, int, int, int, int, int);
-extern (C) void glCopyTexImage1D(uint, int, uint, int, int, int, int);
-extern (C) void glTexSubImage2D(uint, int, int, int, int, int, uint, uint, void *);
-extern (C) void glTexSubImage1D(uint, int, int, int, uint, uint, void *);
-extern (C) char glIsTexture(uint);
-extern (C) char glAreTexturesResident(int, uint *, char *);
-extern (C) void glPrioritizeTextures(int, uint *, float *);
-extern (C) void glBindTexture(uint, uint);
-extern (C) void glDeleteTextures(int, uint *);
-extern (C) void glGenTextures(int, uint *);
-extern (C) void glTexImage2D(uint, int, int, int, int, int, uint, uint, void *);
-extern (C) void glTexImage1D(uint, int, int, int, int, uint, uint, void *);
-extern (C) void glGetTexParameteriv(uint, uint, int *);
-extern (C) void glGetTexParameterfv(uint, uint, float *);
-extern (C) void glGetTexLevelParameteriv(uint, int, uint, int *);
-extern (C) void glGetTexLevelParameterfv(uint, int, uint, float *);
-extern (C) void glTexParameteriv(uint, uint, int *);
-extern (C) void glTexParameteri(uint, uint, int);
-extern (C) void glTexParameterfv(uint, uint, float *);
-extern (C) void glTexParameterf(uint, uint, float);
-extern (C) void glTexEnviv(uint, uint, int *);
-extern (C) void glTexEnvi(uint, uint, int);
-extern (C) void glTexEnvfv(uint, uint, float *);
-extern (C) void glTexEnvf(uint, uint, float);
-extern (C) void glTexGeniv(uint, uint, int *);
-extern (C) void glTexGeni(uint, uint, int);
-extern (C) void glTexGenfv(uint, uint, float *);
-extern (C) void glTexGenf(uint, uint, float);
-extern (C) void glTexGendv(uint, uint, double *);
-extern (C) void glTexGend(uint, uint, double);
-extern (C) void glClearStencil(int);
-extern (C) void glStencilOp(uint, uint, uint);
-extern (C) void glStencilMask(uint);
-extern (C) void glStencilFunc(uint, int, uint);
-extern (C) void glReadPixels(int, int, int, int, uint, uint, void *);
-extern (C) void glDrawPixels(int, int, uint, uint, void *);
-extern (C) void glCopyPixels(int, int, int, int, uint);
-extern (C) void glBitmap(int, int, float, float, float, float, char *);
-extern (C) void glGetPixelMapusv(uint, ushort *);
-extern (C) void glGetPixelMapuiv(uint, uint *);
-extern (C) void glGetPixelMapfv(uint, float *);
-extern (C) void glPixelZoom(float, float);
-extern (C) void glPixelTransferi(uint, int);
-extern (C) void glPixelTransferf(uint, float);
-extern (C) void glPixelStorei(uint, int);
-extern (C) void glPixelStoref(uint, float);
-extern (C) void glPixelMapusv(uint, int, ushort *);
-extern (C) void glPixelMapuiv(uint, int, uint *);
-extern (C) void glPixelMapfv(uint, int, float *);
-extern (C) void glColorMaterial(uint, uint);
-extern (C) void glGetMaterialiv(uint, uint, int *);
-extern (C) void glGetMaterialfv(uint, uint, float *);
-extern (C) void glLightModeliv(uint, int *);
-extern (C) void glLightModeli(uint, int);
-extern (C) void glLightModelfv(uint, float *);
-extern (C) void glLightModelf(uint, float);
-extern (C) void glGetLightiv(uint, uint, int *);
-extern (C) void glGetLightfv(uint, uint, float *);
-extern (C) void glLightiv(uint, uint, int *);
-extern (C) void glLighti(uint, uint, int);
-extern (C) void glLightfv(uint, uint, float *);
-extern (C) void glLightf(uint, uint, float);
-extern (C) void glShadeModel(uint);
-extern (C) void glInterleavedArrays(uint, int, void *);
-extern (C) void glDrawElements(uint, int, uint, void *);
-extern (C) void glDrawArrays(uint, int, int);
-extern (C) void glArrayElement(int);
-extern (C) void glGetPointerv(uint, void * *);
-extern (C) void glEdgeFlagPointer(int, char *);
-extern (C) void glTexCoordPointer(int, uint, int, void *);
-extern (C) void glIndexPointer(uint, int, void *);
-extern (C) void glColorPointer(int, uint, int, void *);
-extern (C) void glNormalPointer(uint, int, void *);
-extern (C) void glVertexPointer(int, uint, int, void *);
-extern (C) void glRectsv(short *, short *);
-extern (C) void glRects(short, short, short, short);
-extern (C) void glRectiv(int *, int *);
-extern (C) void glRecti(int, int, int, int);
-extern (C) void glRectfv(float *, float *);
-extern (C) void glRectf(float, float, float, float);
-extern (C) void glRectdv(double *, double *);
-extern (C) void glRectd(double, double, double, double);
-extern (C) void glTexCoord4sv(short *);
-extern (C) void glTexCoord4s(short, short, short, short);
-extern (C) void glTexCoord4iv(int *);
-extern (C) void glTexCoord4i(int, int, int, int);
-extern (C) void glTexCoord4fv(float *);
-extern (C) void glTexCoord4f(float, float, float, float);
-extern (C) void glTexCoord4dv(double *);
-extern (C) void glTexCoord4d(double, double, double, double);
-extern (C) void glTexCoord3sv(short *);
-extern (C) void glTexCoord3s(short, short, short);
-extern (C) void glTexCoord3iv(int *);
-extern (C) void glTexCoord3i(int, int, int);
-extern (C) void glTexCoord3fv(float *);
-extern (C) void glTexCoord3f(float, float, float);
-extern (C) void glTexCoord3dv(double *);
-extern (C) void glTexCoord3d(double, double, double);
-extern (C) void glTexCoord2sv(short *);
-extern (C) void glTexCoord2s(short, short);
-extern (C) void glTexCoord2iv(int *);
-extern (C) void glTexCoord2i(int, int);
-extern (C) void glTexCoord2fv(float *);
-extern (C) void glTexCoord2f(float, float);
-extern (C) void glTexCoord2dv(double *);
-extern (C) void glTexCoord2d(double, double);
-extern (C) void glTexCoord1sv(short *);
-extern (C) void glTexCoord1s(short);
-extern (C) void glTexCoord1iv(int *);
-extern (C) void glTexCoord1i(int);
-extern (C) void glTexCoord1fv(float *);
-extern (C) void glTexCoord1f(float);
-extern (C) void glTexCoord1dv(double *);
-extern (C) void glTexCoord1d(double);
-extern (C) void glColor4usv(ushort *);
-extern (C) void glColor4us(ushort, ushort, ushort, ushort);
-extern (C) void glColor4uiv(uint *);
-extern (C) void glColor4ui(uint, uint, uint, uint);
-extern (C) void glColor4ubv(char *);
-extern (C) void glColor4ub(char, char, char, char);
-extern (C) void glColor4sv(short *);
-extern (C) void glColor4s(short, short, short, short);
-extern (C) void glColor4iv(int *);
-extern (C) void glColor4i(int, int, int, int);
-extern (C) void glColor4fv(float *);
-extern (C) void glColor4f(float, float, float, float);
-extern (C) void glColor4dv(double *);
-extern (C) void glColor4d(double, double, double, double);
-extern (C) void glColor4bv(char *);
-extern (C) void glColor4b(char, char, char, char);
-extern (C) void glColor3usv(ushort *);
-extern (C) void glColor3us(ushort, ushort, ushort);
-extern (C) void glColor3uiv(uint *);
-extern (C) void glColor3ui(uint, uint, uint);
-extern (C) void glColor3ubv(char *);
-extern (C) void glColor3ub(char, char, char);
-extern (C) void glColor3sv(short *);
-extern (C) void glColor3s(short, short, short);
-extern (C) void glColor3iv(int *);
-extern (C) void glColor3i(int, int, int);
-extern (C) void glColor3fv(float *);
-extern (C) void glColor3f(float, float, float);
-extern (C) void glColor3dv(double *);
-extern (C) void glColor3d(double, double, double);
-extern (C) void glColor3bv(char *);
-extern (C) void glColor3b(char, char, char);
-extern (C) void glIndexubv(char *);
-extern (C) void glIndexub(char);
-extern (C) void glIndexsv(short *);
-extern (C) void glIndexs(short);
-extern (C) void glIndexiv(int *);
-extern (C) void glIndexi(int);
-extern (C) void glIndexfv(float *);
-extern (C) void glIndexf(float);
-extern (C) void glIndexdv(double *);
-extern (C) void glIndexd(double);
-extern (C) void glNormal3sv(short *);
-extern (C) void glNormal3s(short, short, short);
-extern (C) void glNormal3iv(int *);
-extern (C) void glNormal3i(int, int, int);
-extern (C) void glNormal3fv(float *);
-extern (C) void glNormal3f(float, float, float);
-extern (C) void glNormal3dv(double *);
-extern (C) void glNormal3d(double, double, double);
-extern (C) void glNormal3bv(char *);
-extern (C) void glNormal3b(char, char, char);
-extern (C) void glVertex4sv(short *);
-extern (C) void glVertex4s(short, short, short, short);
-extern (C) void glVertex4iv(int *);
-extern (C) void glVertex4i(int, int, int, int);
-extern (C) void glVertex4fv(float *);
-extern (C) void glVertex4f(float, float, float, float);
-extern (C) void glVertex4dv(double *);
-extern (C) void glVertex4d(double, double, double, double);
-extern (C) void glVertex3sv(short *);
-extern (C) void glVertex3s(short, short, short);
-extern (C) void glVertex3iv(int *);
-extern (C) void glVertex3i(int, int, int);
-extern (C) void glVertex3fv(float *);
-extern (C) void glVertex3f(float, float, float);
-extern (C) void glVertex3dv(double *);
-extern (C) void glVertex3d(double, double, double);
-extern (C) void glVertex2sv(short *);
-extern (C) void glVertex2s(short, short);
-extern (C) void glVertex2iv(int *);
-extern (C) void glVertex2i(int, int);
-extern (C) void glVertex2fv(float *);
-extern (C) void glVertex2f(float, float);
-extern (C) void glVertex2dv(double *);
-extern (C) void glVertex2d(double, double);
-extern (C) void glEnd();
-extern (C) void glBegin(uint);
-extern (C) void glListBase(uint);
-extern (C) void glCallLists(int, uint, void *);
-extern (C) void glCallList(uint);
-extern (C) void glEndList();
-extern (C) void glNewList(uint, uint);
-extern (C) uint glGenLists(int);
-extern (C) void glDeleteLists(uint, int);
-extern (C) char glIsList(uint);
-extern (C) void glTranslatef(float, float, float);
-extern (C) void glTranslated(double, double, double);
-extern (C) void glScalef(float, float, float);
-extern (C) void glScaled(double, double, double);
-extern (C) void glRotatef(float, float, float, float);
-extern (C) void glRotated(double, double, double, double);
-extern (C) void glMultMatrixf(float *);
-extern (C) void glMultMatrixd(double *);
-extern (C) void glLoadMatrixf(float *);
-extern (C) void glLoadMatrixd(double *);
-extern (C) void glLoadIdentity();
-extern (C) void glPopMatrix();
-extern (C) void glPushMatrix();
-extern (C) void glViewport(int, int, int, int);
-extern (C) void glFrustum(double, double, double, double, double, double);
-extern (C) void glOrtho(double, double, double, double, double, double);
-extern (C) void glMatrixMode(uint);
-extern (C) void glAccum(uint, float);
-extern (C) void glClearAccum(float, float, float, float);
-extern (C) void glDepthRange(double, double);
-extern (C) void glDepthMask(char);
-extern (C) void glDepthFunc(uint);
-extern (C) void glClearDepth(double);
-extern (C) void glHint(uint, uint);
-extern (C) void glFlush();
-extern (C) void glFinish();
-extern (C) char * glGetString(uint);
-extern (C) uint glGetError();
-extern (C) int glRenderMode(uint);
-extern (C) void glPopClientAttrib();
-extern (C) void glPushClientAttrib(uint);
-extern (C) void glPopAttrib();
-extern (C) void glPushAttrib(uint);
-extern (C) void glGetIntegerv(uint, int *);
-extern (C) void glGetFloatv(uint, float *);
-extern (C) void glGetDoublev(uint, double *);
-extern (C) void glGetBooleanv(uint, char *);
-extern (C) void glDisableClientState(uint);
-extern (C) void glEnableClientState(uint);
-extern (C) char glIsEnabled(uint);
-extern (C) void glDisable(uint);
-extern (C) void glEnable(uint);
-extern (C) void glReadBuffer(uint);
-extern (C) void glDrawBuffer(uint);
-extern (C) void glClipPlane(uint, double *);
-extern (C) void glScissor(int, int, int, int);
-extern (C) void glEdgeFlagv(char *);
-extern (C) void glEdgeFlag(char);
-extern (C) void glGetPolygonStipple(char *);
-extern (C) void glPolygonStipple(char *);
-extern (C) void glPolygonOffset(float, float);
-extern (C) void glPolygonMode(uint, uint);
-extern (C) void glLineStipple(int, ushort);
-extern (C) void glLineWidth(float);
-extern (C) void glPointSize(float);
-extern (C) void glFrontFace(uint);
-extern (C) void glCullFace(uint);
-extern (C) void glLogicOp(uint);
-extern (C) void glBlendFunc(uint, uint);
-extern (C) void glAlphaFunc(uint, float);
-extern (C) void glColorMask(char, char, char, char);
-extern (C) void glIndexMask(uint);
-extern (C) void glClear(uint);
-extern (C) void glClearColor(float, float, float, float);
-extern (C) void glClearIndex(float);
-} // version(DYNLINK)
--- a/dwt/internal/c/glx.d	Sat Feb 23 18:40:21 2008 +0100
+++ b/dwt/internal/c/glx.d	Sat Mar 01 11:53:07 2008 -0800
@@ -4,130 +4,47 @@
 ******************************************************************************/
 module dwt.internal.c.glx;
 
-public import dwt.internal.c.gl;
 public import dwt.internal.c.Xutil;
 
+version=DYNLINK;
+
+version(DYNLINK){
+    import tango.sys.SharedLib : SharedLib;
+    import tango.util.log.Trace;
+    struct Symbol{
+        char[] name;
+        void** symbol;
+    }
+}
+
+void loadLib(){
+    version(DYNLINK){
+        char[] libname = "libGL.so";
+
+        SharedLib lib = SharedLib.load( libname );
+        if( lib is null ){
+            lib = SharedLib.load( libname ~ ".0" );
+        }
+
+        if ( lib !is null ) {
+            foreach( inout s; symbols ){
+                try{
+                    *s.symbol = lib.getSymbol( s.name.ptr );
+                }
+                catch(Exception e){}
+                if( *s.symbol is null ){
+                    Trace.formatln( "{}: Symbol '{}' not found", libname, s.name );
+                }
+            }
+        } else {
+            Trace.formatln( "Could not load the library {}", libname );
+        }
+    }
+}
+
 extern(C):
 align(4):
 
-const int GLX_VERSION_1_1 = 1;
-const int GLX_VERSION_1_2 = 1;
-const int GLX_VERSION_1_3 = 1;
-const int GLX_USE_GL = 1;
-const int GLX_BUFFER_SIZE = 2;
-const int GLX_LEVEL = 3;
-const int GLX_RGBA = 4;
-const int GLX_DOUBLEBUFFER = 5;
-const int GLX_STEREO = 6;
-const int GLX_AUX_BUFFERS = 7;
-const int GLX_RED_SIZE = 8;
-const int GLX_GREEN_SIZE = 9;
-const int GLX_BLUE_SIZE = 10;
-const int GLX_ALPHA_SIZE = 11;
-const int GLX_DEPTH_SIZE = 12;
-const int GLX_STENCIL_SIZE = 13;
-const int GLX_ACCUM_RED_SIZE = 14;
-const int GLX_ACCUM_GREEN_SIZE = 15;
-const int GLX_ACCUM_BLUE_SIZE = 16;
-const int GLX_ACCUM_ALPHA_SIZE = 17;
-const int GLX_SAMPLE_BUFFERS_ARB = 100000;
-const int GLX_SAMPLES_ARB = 100001;
-const int GLX_X_VISUAL_TYPE = 0x22;
-const int GLX_CONFIG_CAVEAT = 0x20;
-const int GLX_TRANSPARENT_TYPE = 0x23;
-const int GLX_TRANSPARENT_INDEX_VALUE = 0x24;
-const int GLX_TRANSPARENT_RED_VALUE = 0x25;
-const int GLX_TRANSPARENT_GREEN_VALUE = 0x26;
-const int GLX_TRANSPARENT_BLUE_VALUE = 0x27;
-const int GLX_TRANSPARENT_ALPHA_VALUE = 0x28;
-const int GLX_DRAWABLE_TYPE = 0x8010;
-const int GLX_RENDER_TYPE = 0x8011;
-const int GLX_X_RENDERABLE = 0x8012;
-const int GLX_FBCONFIG_ID = 0x8013;
-const int GLX_MAX_PBUFFER_WIDTH = 0x8016;
-const int GLX_MAX_PBUFFER_HEIGHT = 0x8017;
-const int GLX_MAX_PBUFFER_PIXELS = 0x8018;
-const int GLX_VISUAL_ID = 0x800B;
-const int GLX_BAD_SCREEN = 1;
-const int GLX_BAD_ATTRIBUTE = 2;
-const int GLX_NO_EXTENSION = 3;
-const int GLX_BAD_VISUAL = 4;
-const int GLX_BAD_CONTEXT = 5;
-const int GLX_BAD_VALUE = 6;
-const int GLX_BAD_ENUM = 7;
-const int GLX_DONT_CARE = 0xFFFFFFFF;
-const int GLX_RGBA_BIT = 0x00000001;
-const int GLX_COLOR_INDEX_BIT = 0x00000002;
-const int GLX_WINDOW_BIT = 0x00000001;
-const int GLX_PIXMAP_BIT = 0x00000002;
-const int GLX_PBUFFER_BIT = 0x00000004;
-const int GLX_NONE = 0x8000;
-const int GLX_SLOW_CONFIG = 0x8001;
-const int GLX_NON_CONFORMANT_CONFIG = 0x800D;
-const int GLX_TRUE_COLOR = 0x8002;
-const int GLX_DIRECT_COLOR = 0x8003;
-const int GLX_PSEUDO_COLOR = 0x8004;
-const int GLX_STATIC_COLOR = 0x8005;
-const int GLX_GRAY_SCALE = 0x8006;
-const int GLX_STATIC_GRAY = 0x8007;
-const int GLX_TRANSPARENT_RGB = 0x8008;
-const int GLX_TRANSPARENT_INDEX = 0x8009;
-const int GLX_PRESERVED_CONTENTS = 0x801B;
-const int GLX_LARGEST_PBUFFER = 0x801C;
-const int GLX_PBUFFER_HEIGHT = 0x8040;
-const int GLX_PBUFFER_WIDTH = 0x8041;
-alias GLX_PRESERVED_CONTENTS GLX_PRESERVED_CONTENTS_SGIX;
-alias GLX_LARGEST_PBUFFER GLX_LARGEST_PBUFFER_SGIX;
-const int GLX_WIDTH = 0x801D;
-const double GLX_HEIGHT = 0x801E;
-const int GLX_EVENT_MASK = 0x801F;
-alias GLX_WIDTH GLX_WIDTH_SGIX;
-alias GLX_HEIGHT GLX_HEIGHT_SGIX;
-alias GLX_EVENT_MASK GLX_EVENT_MASK_SGIX;
-const int GLX_RGBA_TYPE = 0x8014;
-const int GLX_COLOR_INDEX_TYPE = 0x8015;
-alias GLX_RGBA_TYPE GLX_RGBA_TYPE_SGIX;
-alias GLX_COLOR_INDEX_TYPE GLX_COLOR_INDEX_TYPE_SGIX;
-const int GLX_SCREEN = 0x800C;
-const int GLX_PBUFFER_CLOBBER_MASK = 0x08000000;
-alias GLX_PBUFFER_CLOBBER_MASK GLX_PBUFFER_CLOBBER_MASK_SGIX;
-const int GLX_DAMAGED = 0x8020;
-const int GLX_SAVED = 0x8021;
-const int GLX_WINDOW = 0x8022;
-const int GLX_PBUFFER = 0x8023;
-const int GLX_FRONT_LEFT_BUFFER_BIT = 0x00000001;
-const int GLX_FRONT_RIGHT_BUFFER_BIT = 0x00000002;
-const int GLX_BACK_LEFT_BUFFER_BIT = 0x00000004;
-const int GLX_BACK_RIGHT_BUFFER_BIT = 0x00000008;
-const int GLX_AUX_BUFFERS_BIT = 0x00000010;
-const int GLX_DEPTH_BUFFER_BIT = 0x00000020;
-const int GLX_STENCIL_BUFFER_BIT = 0x00000040;
-const int GLX_ACCUM_BUFFER_BIT = 0x00000080;
-const int GLX_X_VISUAL_TYPE_EXT = 0x22;
-const int GLX_TRANSPARENT_TYPE_EXT = 0x23;
-const int GLX_TRANSPARENT_INDEX_VALUE_EXT = 0x24;
-const int GLX_TRANSPARENT_RED_VALUE_EXT = 0x25;
-const int GLX_TRANSPARENT_GREEN_VALUE_EXT = 0x26;
-const int GLX_TRANSPARENT_BLUE_VALUE_EXT = 0x27;
-const int GLX_TRANSPARENT_ALPHA_VALUE_EXT = 0x28;
-const int GLX_TRUE_COLOR_EXT = 0x8002;
-const int GLX_DIRECT_COLOR_EXT = 0x8003;
-const int GLX_PSEUDO_COLOR_EXT = 0x8004;
-const int GLX_STATIC_COLOR_EXT = 0x8005;
-const int GLX_GRAY_SCALE_EXT = 0x8006;
-const int GLX_STATIC_GRAY_EXT = 0x8007;
-const int GLX_NONE_EXT = 0x8000;
-const int GLX_TRANSPARENT_RGB_EXT = 0x8008;
-const int GLX_TRANSPARENT_INDEX_EXT = 0x8009;
-const int GLX_VISUAL_CAVEAT_EXT = 0x20;
-const int GLX_SLOW_VISUAL_EXT = 0x8001;
-const int GLX_NON_CONFORMANT_VISUAL_EXT = 0x800D;
-const int GLX_VENDOR = 0x1;
-const int GLX_VERSION = 0x2;
-const int GLX_EXTENSIONS = 0x3;
-const int GLX_SHARE_CONTEXT_EXT = 0x800A;
-const int GLX_VISUAL_ID_EXT = 0x800B;
-const int GLX_SCREEN_EXT = 0x800C;
 alias __GLXEvent GLXEvent;
 alias uint GLXDrawable;
 alias void * GLXFBConfig;
@@ -307,90 +224,97 @@
 int height;
 int count;
 }
+
 version(DYNLINK){
-extern (C) int function(int)glXSwapIntervalSGI;
-extern (C) _BCD_func__2197 function(char *)glXGetProcAddressARB;
-extern (C) int function(void *, uint, void *)glXMakeCurrent;
-extern (C) void * function(void *, XVisualInfo *, void *, int)glXCreateContext;
-extern (C) void function(void *, uint)glXDestroyGLXPixmap;
-extern (C) uint function(void *, XVisualInfo *, uint)glXCreateGLXPixmap;
-extern (C) XVisualInfo * function(void *, int, int *)glXChooseVisual;
-extern (C) int function(void *, XVisualInfo *, int, int *)glXGetConfig;
-extern (C) void function(uint, int, int, int)glXUseXFont;
-extern (C) void function(void *, uint)glXSwapBuffers;
-extern (C) void function()glXWaitX;
-extern (C) void function()glXWaitGL;
-extern (C) void function(void *, uint, uint *)glXGetSelectedEvent;
-extern (C) void function(void *, uint, uint)glXSelectEvent;
-extern (C) int function(void *, void *, int, int *)glXQueryContext;
-extern (C) void * function()glXGetCurrentDisplay;
-extern (C) uint function()glXGetCurrentReadDrawable;
-extern (C) uint function()glXGetCurrentDrawable;
-extern (C) void * function()glXGetCurrentContext;
-extern (C) void function(void *, void *, void *, uint)glXCopyContext;
-extern (C) int function(void *, uint, uint, void *)glXMakeContextCurrent;
-extern (C) void function(void *, void *)glXDestroyContext;
-extern (C) int function(void *, void *)glXIsDirect;
-extern (C) void * function(void *, void *, int, void *, int)glXCreateNewContext;
-extern (C) void function(void *, uint, int, uint *)glXQueryDrawable;
-extern (C) void function(void *, uint)glXDestroyPbuffer;
-extern (C) uint function(void *, void *, int *)glXCreatePbuffer;
-extern (C) void function(void *, uint)glXDestroyPixmap;
-extern (C) uint function(void *, void *, uint, int *)glXCreatePixmap;
-extern (C) void function(void *, uint)glXDestroyWindow;
-extern (C) uint function(void *, void *, uint, int *)glXCreateWindow;
-extern (C) XVisualInfo * function(void *, void *)glXGetVisualFromFBConfig;
-extern (C) int function(void *, void *, int, int *)glXGetFBConfigAttrib;
-extern (C) void * * function(void *, int, int *, int *)glXChooseFBConfig;
-extern (C) void * * function(void *, int, int *)glXGetFBConfigs;
-extern (C) char * function(void *, int, int)glXQueryServerString;
-extern (C) char * function(void *, int)glXGetClientString;
-extern (C) char * function(void *, int)glXQueryExtensionsString;
-extern (C) int function(void *, int *, int *)glXQueryVersion;
-extern (C) int function(void *, int *, int *)glXQueryExtension;
+
+extern (C) void function(uint, int*) dwt_glGetIntegerv;
+extern (C) void function(int,int,int,int) dwt_glViewport;
+
+extern (C) int function(int)dwt_glXSwapIntervalSGI;
+extern (C) _BCD_func__2197 function(char *)dwt_glXGetProcAddressARB;
+extern (C) int function(void *, uint, void *)dwt_glXMakeCurrent;
+extern (C) void * function(void *, XVisualInfo *, void *, int)dwt_glXCreateContext;
+extern (C) void function(void *, uint)dwt_glXDestroyGLXPixmap;
+extern (C) uint function(void *, XVisualInfo *, uint)dwt_glXCreateGLXPixmap;
+extern (C) XVisualInfo * function(void *, int, int *)dwt_glXChooseVisual;
+extern (C) int function(void *, XVisualInfo *, int, int *)dwt_glXGetConfig;
+extern (C) void function(uint, int, int, int)dwt_glXUseXFont;
+extern (C) void function(void *, uint)dwt_glXSwapBuffers;
+extern (C) void function()dwt_glXWaitX;
+extern (C) void function()dwt_glXWaitGL;
+extern (C) void function(void *, uint, uint *)dwt_glXGetSelectedEvent;
+extern (C) void function(void *, uint, uint)dwt_glXSelectEvent;
+extern (C) int function(void *, void *, int, int *)dwt_glXQueryContext;
+extern (C) void * function()dwt_glXGetCurrentDisplay;
+extern (C) uint function()dwt_glXGetCurrentReadDrawable;
+extern (C) uint function()dwt_glXGetCurrentDrawable;
+extern (C) void * function()dwt_glXGetCurrentContext;
+extern (C) void function(void *, void *, void *, uint)dwt_glXCopyContext;
+extern (C) int function(void *, uint, uint, void *)dwt_glXMakeContextCurrent;
+extern (C) void function(void *, void *)dwt_glXDestroyContext;
+extern (C) int function(void *, void *)dwt_glXIsDirect;
+extern (C) void * function(void *, void *, int, void *, int)dwt_glXCreateNewContext;
+extern (C) void function(void *, uint, int, uint *)dwt_glXQueryDrawable;
+extern (C) void function(void *, uint)dwt_glXDestroyPbuffer;
+extern (C) uint function(void *, void *, int *)dwt_glXCreatePbuffer;
+extern (C) void function(void *, uint)dwt_glXDestroyPixmap;
+extern (C) uint function(void *, void *, uint, int *)dwt_glXCreatePixmap;
+extern (C) void function(void *, uint)dwt_glXDestroyWindow;
+extern (C) uint function(void *, void *, uint, int *)dwt_glXCreateWindow;
+extern (C) XVisualInfo * function(void *, void *)dwt_glXGetVisualFromFBConfig;
+extern (C) int function(void *, void *, int, int *)dwt_glXGetFBConfigAttrib;
+extern (C) void * * function(void *, int, int *, int *)dwt_glXChooseFBConfig;
+extern (C) void * * function(void *, int, int *)dwt_glXGetFBConfigs;
+extern (C) char * function(void *, int, int)dwt_glXQueryServerString;
+extern (C) char * function(void *, int)dwt_glXGetClientString;
+extern (C) char * function(void *, int)dwt_glXQueryExtensionsString;
+extern (C) int function(void *, int *, int *)dwt_glXQueryVersion;
+extern (C) int function(void *, int *, int *)dwt_glXQueryExtension;
 
 
 Symbol[] symbols = [
-    { "glXSwapIntervalSGI",  cast(void**)& glXSwapIntervalSGI},
-    { "glXGetProcAddressARB",  cast(void**)& glXGetProcAddressARB},
-    { "glXMakeCurrent",  cast(void**)& glXMakeCurrent},
-    { "glXCreateContext",  cast(void**)& glXCreateContext},
-    { "glXDestroyGLXPixmap",  cast(void**)& glXDestroyGLXPixmap},
-    { "glXCreateGLXPixmap",  cast(void**)& glXCreateGLXPixmap},
-    { "glXChooseVisual",  cast(void**)& glXChooseVisual},
-    { "glXGetConfig",  cast(void**)& glXGetConfig},
-    { "glXUseXFont",  cast(void**)& glXUseXFont},
-    { "glXSwapBuffers",  cast(void**)& glXSwapBuffers},
-    { "glXWaitX",  cast(void**)& glXWaitX},
-    { "glXWaitGL",  cast(void**)& glXWaitGL},
-    { "glXGetSelectedEvent",  cast(void**)& glXGetSelectedEvent},
-    { "glXSelectEvent",  cast(void**)& glXSelectEvent},
-    { "glXQueryContext",  cast(void**)& glXQueryContext},
-    { "glXGetCurrentDisplay",  cast(void**)& glXGetCurrentDisplay},
-    { "glXGetCurrentReadDrawable",  cast(void**)& glXGetCurrentReadDrawable},
-    { "glXGetCurrentDrawable",  cast(void**)& glXGetCurrentDrawable},
-    { "glXGetCurrentContext",  cast(void**)& glXGetCurrentContext},
-    { "glXCopyContext",  cast(void**)& glXCopyContext},
-    { "glXMakeContextCurrent",  cast(void**)& glXMakeContextCurrent},
-    { "glXDestroyContext",  cast(void**)& glXDestroyContext},
-    { "glXIsDirect",  cast(void**)& glXIsDirect},
-    { "glXCreateNewContext",  cast(void**)& glXCreateNewContext},
-    { "glXQueryDrawable",  cast(void**)& glXQueryDrawable},
-    { "glXDestroyPbuffer",  cast(void**)& glXDestroyPbuffer},
-    { "glXCreatePbuffer",  cast(void**)& glXCreatePbuffer},
-    { "glXDestroyPixmap",  cast(void**)& glXDestroyPixmap},
-    { "glXCreatePixmap",  cast(void**)& glXCreatePixmap},
-    { "glXDestroyWindow",  cast(void**)& glXDestroyWindow},
-    { "glXCreateWindow",  cast(void**)& glXCreateWindow},
-    { "glXGetVisualFromFBConfig",  cast(void**)& glXGetVisualFromFBConfig},
-    { "glXGetFBConfigAttrib",  cast(void**)& glXGetFBConfigAttrib},
-    { "glXChooseFBConfig",  cast(void**)& glXChooseFBConfig},
-    { "glXGetFBConfigs",  cast(void**)& glXGetFBConfigs},
-    { "glXQueryServerString",  cast(void**)& glXQueryServerString},
-    { "glXGetClientString",  cast(void**)& glXGetClientString},
-    { "glXQueryExtensionsString",  cast(void**)& glXQueryExtensionsString},
-    { "glXQueryVersion",  cast(void**)& glXQueryVersion},
-    { "glXQueryExtension",  cast(void**)& glXQueryExtension},
+    { "glGetIntegerv", cast(void**)& dwt_glGetIntegerv},
+    { "glViewport", cast(void**)& dwt_glViewport},
+    { "glXSwapIntervalSGI",  cast(void**)& dwt_glXSwapIntervalSGI},
+    { "glXGetProcAddressARB",  cast(void**)& dwt_glXGetProcAddressARB},
+    { "glXMakeCurrent",  cast(void**)& dwt_glXMakeCurrent},
+    { "glXCreateContext",  cast(void**)& dwt_glXCreateContext},
+    { "glXDestroyGLXPixmap",  cast(void**)& dwt_glXDestroyGLXPixmap},
+    { "glXCreateGLXPixmap",  cast(void**)& dwt_glXCreateGLXPixmap},
+    { "glXChooseVisual",  cast(void**)& dwt_glXChooseVisual},
+    { "glXGetConfig",  cast(void**)& dwt_glXGetConfig},
+    { "glXUseXFont",  cast(void**)& dwt_glXUseXFont},
+    { "glXSwapBuffers",  cast(void**)& dwt_glXSwapBuffers},
+    { "glXWaitX",  cast(void**)& dwt_glXWaitX},
+    { "glXWaitGL",  cast(void**)& dwt_glXWaitGL},
+    { "glXGetSelectedEvent",  cast(void**)& dwt_glXGetSelectedEvent},
+    { "glXSelectEvent",  cast(void**)& dwt_glXSelectEvent},
+    { "glXQueryContext",  cast(void**)& dwt_glXQueryContext},
+    { "glXGetCurrentDisplay",  cast(void**)& dwt_glXGetCurrentDisplay},
+    { "glXGetCurrentReadDrawable",  cast(void**)& dwt_glXGetCurrentReadDrawable},
+    { "glXGetCurrentDrawable",  cast(void**)& dwt_glXGetCurrentDrawable},
+    { "glXGetCurrentContext",  cast(void**)& dwt_glXGetCurrentContext},
+    { "glXCopyContext",  cast(void**)& dwt_glXCopyContext},
+    { "glXMakeContextCurrent",  cast(void**)& dwt_glXMakeContextCurrent},
+    { "glXDestroyContext",  cast(void**)& dwt_glXDestroyContext},
+    { "glXIsDirect",  cast(void**)& dwt_glXIsDirect},
+    { "glXCreateNewContext",  cast(void**)& dwt_glXCreateNewContext},
+    { "glXQueryDrawable",  cast(void**)& dwt_glXQueryDrawable},
+    { "glXDestroyPbuffer",  cast(void**)& dwt_glXDestroyPbuffer},
+    { "glXCreatePbuffer",  cast(void**)& dwt_glXCreatePbuffer},
+    { "glXDestroyPixmap",  cast(void**)& dwt_glXDestroyPixmap},
+    { "glXCreatePixmap",  cast(void**)& dwt_glXCreatePixmap},
+    { "glXDestroyWindow",  cast(void**)& dwt_glXDestroyWindow},
+    { "glXCreateWindow",  cast(void**)& dwt_glXCreateWindow},
+    { "glXGetVisualFromFBConfig",  cast(void**)& dwt_glXGetVisualFromFBConfig},
+    { "glXGetFBConfigAttrib",  cast(void**)& dwt_glXGetFBConfigAttrib},
+    { "glXChooseFBConfig",  cast(void**)& dwt_glXChooseFBConfig},
+    { "glXGetFBConfigs",  cast(void**)& dwt_glXGetFBConfigs},
+    { "glXQueryServerString",  cast(void**)& dwt_glXQueryServerString},
+    { "glXGetClientString",  cast(void**)& dwt_glXGetClientString},
+    { "glXQueryExtensionsString",  cast(void**)& dwt_glXQueryExtensionsString},
+    { "glXQueryVersion",  cast(void**)& dwt_glXQueryVersion},
+    { "glXQueryExtension",  cast(void**)& dwt_glXQueryExtension},
 ];
 
 } else { // version(DYNLINK)
--- a/dwt/internal/gtk/runtime/Loader.d	Sat Feb 23 18:40:21 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,324 +0,0 @@
-/*****************************************************************************
-
-    license:
-
-    version:
-
-             Dynamic loader for gtk symbol names
-
-    History: 2004-12-11 initial version by John Reimer
-             2005-02-21 class and symbol names change; versioning modification
-             2005-05-05 linux fixes
-             2007-12-23 source cleanup
-             2007-12-30 merge Paths.d into Loader.d
-             2008-01-05 Tango only version using tango.sys.SharedLib
-
-    Note:   Design inspired by Kris Bell's ICU.d, the dynamic loader from
-            an early version of mango
-
-******************************************************************************/
-
-module dwt.internal.gtk.runtime.Loader;
-
-private import  tango.io.Stdout,
-                tango.sys.SharedLib;
-                
-/*****************************************************************************
-
-*****************************************************************************/
-
-enum LIBRARY
-{
-    ATK,
-    CAIRO,
-    GDK,
-    GDKPIXBUF,
-    GLIB,
-    GMODULE,
-    GOBJECT,
-    GTHREAD,
-    GTK,
-    PANGO,
-    GLGDK,
-    GLGTK,
-    GL,
-    GLU,
-    GLEXT,
-    GDA,
-    GLADE,
-    GSV,
-    GSTREAMER,
-    GSTINTERFACES
-}
-
-/*****************************************************************************
-
-*****************************************************************************/
-
-version (Windows)
-{
-    const char[][LIBRARY.max+1] importLibs = [
-        LIBRARY.ATK:            "libatk-1.0-0.dll",
-        LIBRARY.CAIRO:          "libcairo-2.dll",
-        LIBRARY.GDK:            "libgdk-win32-2.0-0.dll",
-        LIBRARY.GDKPIXBUF:      "libgdk_pixbuf-2.0-0.dll",
-        LIBRARY.GLIB:           "libglib-2.0-0.dll",
-        LIBRARY.GMODULE:        "libgmodule-2.0-0.dll",
-        LIBRARY.GOBJECT:        "libgobject-2.0-0.dll",
-        LIBRARY.GTHREAD:        "libgthread-2.0-0.dll",
-        LIBRARY.GTK:            "libgtk-win32-2.0-0.dll",
-        LIBRARY.PANGO:          "libpango-1.0-0.dll",
-        LIBRARY.GLGDK:          "libgdkglext-win32-1.0-0.dll",
-        LIBRARY.GLGTK:          "libgtkglext-win32-1.0-0.dll",
-        LIBRARY.GL:             "opengl32.dll",
-        LIBRARY.GLU:            "glu32.dll",
-        LIBRARY.GDA:            "libgda-2.dll",
-        LIBRARY.GLADE:          "libglade-2.0.dll",
-        LIBRARY.GSV:            "libgtksourceview-1.0-0.dll",
-        LIBRARY.GSTREAMER:      "libgstreamer-0.10.dll",
-        LIBRARY.GSTINTERFACES:  "libgstinterfaces-0.10.dll"
-    ];
-}
-
-/*****************************************************************************
-
-*****************************************************************************/
-
-version(linux)
-{
-    const char[][LIBRARY.max+1] importLibs = [
-        LIBRARY.ATK:            "libatk-1.0.so",
-        LIBRARY.CAIRO:          "libcairo.so.2",
-        LIBRARY.GDK:            "libgdk-x11-2.0.so",
-        LIBRARY.GDKPIXBUF:      "libgdk_pixbuf-2.0.so",
-        LIBRARY.GLIB:           "libglib-2.0.so",
-        LIBRARY.GMODULE:        "libgmodule-2.0.so",
-        LIBRARY.GOBJECT:        "libgobject-2.0.so",
-        LIBRARY.GTHREAD:        "libgthread-2.0.so",
-        LIBRARY.GTK:            "libgtk-x11-2.0.so",
-        LIBRARY.PANGO:          "libpango-1.0.so",
-        LIBRARY.GLGDK:          "libgdkglext-x11-1.0.so",
-        LIBRARY.GLGTK:          "libgtkglext-x11-1.0.so",
-        LIBRARY.GL:             "libGL.so",
-        LIBRARY.GLU:            "libGLU.so",
-        LIBRARY.GLEXT:          "libGL.so",
-        LIBRARY.GDA:            "libgda-2.so.3",
-        LIBRARY.GLADE:          "libglade-2.0.so",
-        LIBRARY.GSV:            "libgtksourceview-1.0.so",
-        LIBRARY.GSTREAMER:      "libgstreamer-0.10.so",
-        LIBRARY.GSTINTERFACES:  "libgstinterfaces-0.10.so"
-    ];
-}
-
-/*****************************************************************************
-
-    getLibraryPath -- place holder for future expansion
-
-******************************************************************************/
-
-
-version(Windows)
-{
-    char[] getLibraryPath()
-    {
-            return "\\Program Files\\GTK2-Runtime\\lib\\";
-    }
-}
-
-/*****************************************************************************
-
-    getLibraryPath is empty for linux because default path is known by ld
-
-******************************************************************************/
-
-version(linux)
-{
-    char[] getLibraryPath() { return ""; }
-}
-
-/*****************************************************************************
-
-    ProcLink is used to record the library, function, and function name
-    that will be loaded by the dynamic loader.
-
-******************************************************************************/
-
-public struct Symbol
-{
-    char[]  name;
-    void**  pointer;
-}
-
-/*****************************************************************************
-
-    The Linker class: handles loading of the library and exported functions
-
-******************************************************************************/
-
-public class Linker
-{
-    static char[][][char[]] loadFailures;
-
-    /*************************************************************************
-
-        Gets all the failed loads for a specific library.  This is filled in
-        only if the default onFailure method is used during load.
-
-        returns: an array of the names that failed to load for a specific
-        library or null if none was found.
-
-    **************************************************************************/
-
-    public static char[][] getLoadFailures(char[] libName)
-    {
-        if ( libName in loadFailures )
-        {
-            return loadFailures[libName];
-        }
-        else
-        {
-            return null;
-        }
-    }
-
-    /*************************************************************************
-
-        Loads all libraries. This is filled in only if the default onFailure
-        method is used during load.
-
-        returns: an array of the library names.
-
-    **************************************************************************/
-
-    public static char[][] getLoadLibraries()
-    {
-        return loadFailures.keys;
-    }
-
-    /*************************************************************************
-
-        isPerfectLoad -- Checks if any symbol failed to load.
-        Returns: true if ALL symbols loaded.
-
-    **************************************************************************/
-
-    public static bool isPerfectLoad()
-    {
-        return loadFailures.keys.length == 0;
-    }
-
-    /*************************************************************************
-
-    **************************************************************************/
-
-    public static void dumpFailedLoads()
-    {
-        foreach ( char[] lib ; Linker.getLoadLibraries() )
-        {
-            foreach ( char[] symbol ; Linker.getLoadFailures(lib) )
-            {
-                version(Tango)
-                    Stdout.formatln("failed ({}) {}", lib, symbol).newline;
-            }
-        }
-    }
-
-    /*************************************************************************
-
-    **************************************************************************/
-
-    private SharedLib primaryLib;
-    private SharedLib alternateLib;
-
-    private char[]  libraryName;
-    private char[]  alternateLibraryName;
-
-    alias void function( char[] libraryName, char[] symbolName, char[] message=null) FailureCallback;
-
-    private FailureCallback onLoadFailure;
-
-    /*************************************************************************
-
-    **************************************************************************/
-
-    this( char[] libraryName, char[] alternateLibraryName=null )
-    {
-        this(libraryName, alternateLibraryName, &(Linker.defaultFail));
-    }
-
-    /*************************************************************************
-
-    **************************************************************************/
-
-    this (char[] libraryName, char[] alternateLibraryName, FailureCallback fn )
-    {
-        this.libraryName = libraryName;
-        this.alternateLibraryName = alternateLibraryName;
-        onLoadFailure = fn;
-
-        SharedLib.throwExceptions = false;
-
-        primaryLib = SharedLib.load( this.libraryName );
-        
-        version(linux)
-        {
-            if (this.primaryLib is null)
-                primaryLib = SharedLib.load( this.libraryName ~ ".0\0" );
-        }
-            
-        if ( alternateLibraryName !is null )
-        {
-            alternateLib = SharedLib.load( this.alternateLibraryName );
-        }
-        
-        if (primaryLib is null)
-        {
-            throw new Exception("Library load failed: " ~ libraryName);
-        }
-    }
-
-    /*************************************************************************
-
-        Default load failure callback. Logs the symbols that failed to load.
-
-    **************************************************************************/
-
-    static void defaultFail( char[] libraryName, char[] symbolName, char[] message=null )
-    {
-        if ( !(libraryName in loadFailures) )
-        {
-            char[][] cc;
-            loadFailures[libraryName] = cc;
-        }
-
-        loadFailures[libraryName] ~= symbolName.dup;
-    }
-
-    /*************************************************************************
-
-        Loads all the symbols for this library.
-
-    **************************************************************************/
-
-    void link( inout Symbol[] symbols )
-    {
-        foreach( Symbol link; symbols )
-        {
-            *link.pointer = primaryLib.getSymbol ( (link.name~"\0").ptr);
-
-            if (*link.pointer is null)
-            {
-                if ( alternateLib !is null )
-                {
-                    *link.pointer = alternateLib.getSymbol( (link.name~"\0").ptr);
-                    Stdout("Loader.Linker.link trying alternate lib: ", link.name).newline;
-                }
-                if (*link.pointer is null)
-                {
-                    onLoadFailure( libraryName, link.name );
-                }
-            }
-        }
-    }
-
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dwt/internal/opengl/glx/GLX.d	Sat Mar 01 11:53:07 2008 -0800
@@ -0,0 +1,359 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2007 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ * Port to the D Programming Language:
+ *     John Reimer <terminal.node@gmail.com>
+ *******************************************************************************/
+module dwt.internal.opengl.glx.GLX;
+
+import dwt.internal.Library;
+import dwt.internal.Platform;
+import dwt.internal.c.Xutil;
+import dwt.internal.c.glx;
+
+public class GLX : Platform {
+
+    /*
+    ** Visual Config Attributes (glXGetConfig, glXGetFBConfigAttrib)
+    */
+
+    enum {
+        GLX_USE_GL              = 1,    /* support GLX rendering */
+        GLX_BUFFER_SIZE         = 2,    /* depth of the color buffer */
+        GLX_LEVEL               = 3,    /* level in plane stacking */
+        GLX_RGBA                = 4,    /* true if RGBA mode */
+        GLX_DOUBLEBUFFER        = 5,    /* double buffering supported */
+        GLX_STEREO              = 6,    /* stereo buffering supported */
+        GLX_AUX_BUFFERS         = 7,    /* number of aux buffers */
+        GLX_RED_SIZE            = 8,    /* number of red component bits */
+        GLX_GREEN_SIZE          = 9,    /* number of green component bits */
+        GLX_BLUE_SIZE           = 10,   /* number of blue component bits */
+        GLX_ALPHA_SIZE          = 11,   /* number of alpha component bits */
+        GLX_DEPTH_SIZE          = 12,   /* number of depth bits */
+        GLX_STENCIL_SIZE        = 13,   /* number of stencil bits */
+        GLX_ACCUM_RED_SIZE      = 14,   /* number of red accum bits */
+        GLX_ACCUM_GREEN_SIZE    = 15,   /* number of green accum bits */
+        GLX_ACCUM_BLUE_SIZE     = 16,   /* number of blue accum bits */
+        GLX_ACCUM_ALPHA_SIZE    = 17,   /* number of alpha accum bits */
+    /*
+    ** FBConfig-specific attributes
+    */
+        GLX_X_VISUAL_TYPE       = 0x22,
+        GLX_CONFIG_CAVEAT       = 0x20, /* Like visual_info VISUAL_CAVEAT_EXT */
+        GLX_TRANSPARENT_TYPE    = 0x23,
+        GLX_TRANSPARENT_INDEX_VALUE = 0x24,
+        GLX_TRANSPARENT_RED_VALUE   = 0x25,
+        GLX_TRANSPARENT_GREEN_VALUE = 0x26,
+        GLX_TRANSPARENT_BLUE_VALUE  = 0x27,
+        GLX_TRANSPARENT_ALPHA_VALUE = 0x28,
+        GLX_DRAWABLE_TYPE       = 0x8010,
+        GLX_RENDER_TYPE         = 0x8011,
+        GLX_X_RENDERABLE        = 0x8012,
+        GLX_FBCONFIG_ID         = 0x8013,
+        GLX_MAX_PBUFFER_WIDTH   = 0x8016,
+        GLX_MAX_PBUFFER_HEIGHT  = 0x8017,
+        GLX_MAX_PBUFFER_PIXELS  = 0x8018,
+        GLX_VISUAL_ID           = 0x800B,
+    
+    /*
+    ** Error return values from glXGetConfig.  Success is indicated by
+    ** a value of 0.
+    */
+        GLX_BAD_SCREEN      = 1,    /* screen # is bad */
+        GLX_BAD_ATTRIBUTE   = 2,    /* attribute to get is bad */
+        GLX_NO_EXTENSION    = 3,    /* no glx extension on server */
+        GLX_BAD_VISUAL      = 4,    /* visual # not known by GLX */
+        GLX_BAD_CONTEXT     = 5,    /* returned only by import_context EXT? */
+        GLX_BAD_VALUE       = 6,    /* returned only by glXSwapIntervalSGI? */
+        GLX_BAD_ENUM        = 7,    /* unused? */
+    
+    /* FBConfig attribute values */
+    
+    /*
+    ** Generic "don't care" value for glX ChooseFBConfig attributes (except
+    ** GLX_LEVEL)
+    */
+        GLX_DONT_CARE           = 0xFFFFFFFF,
+    
+    /* GLX_RENDER_TYPE bits */
+        GLX_RGBA_BIT            = 0x00000001,
+        GLX_COLOR_INDEX_BIT     = 0x00000002,
+    
+    /* GLX_DRAWABLE_TYPE bits */
+        GLX_WINDOW_BIT          = 0x00000001,
+        GLX_PIXMAP_BIT          = 0x00000002,
+        GLX_PBUFFER_BIT         = 0x00000004,
+    
+    /* GLX_CONFIG_CAVEAT attribute values */
+        GLX_NONE                = 0x8000,
+        GLX_SLOW_CONFIG         = 0x8001,
+        GLX_NON_CONFORMANT_CONFIG   = 0x800D,
+    
+    /* GLX_X_VISUAL_TYPE attribute values */
+        GLX_TRUE_COLOR          = 0x8002,
+        GLX_DIRECT_COLOR        = 0x8003,
+        GLX_PSEUDO_COLOR        = 0x8004,
+        GLX_STATIC_COLOR        = 0x8005,
+        GLX_GRAY_SCALE          = 0x8006,
+        GLX_STATIC_GRAY         = 0x8007,
+    
+    /* GLX_TRANSPARENT_TYPE attribute values */
+    /*     GLX_NONE            0x8000 */
+        GLX_TRANSPARENT_RGB     = 0x8008,
+        GLX_TRANSPARENT_INDEX   = 0x8009,
+    
+    /* glXCreateGLXPbuffer attributes */
+        GLX_PRESERVED_CONTENTS  = 0x801B,
+        GLX_LARGEST_PBUFFER     = 0x801C,
+        GLX_PBUFFER_HEIGHT      = 0x8040,   /* New for GLX 1.3 */
+        GLX_PBUFFER_WIDTH       = 0x8041,   /* New for GLX 1.3 */
+    
+    /* glXQueryGLXPBuffer attributes */
+        GLX_WIDTH       = 0x801D,
+        GLX_HEIGHT      = 0x801E,
+        GLX_EVENT_MASK  = 0x801F,
+    
+    /* glXCreateNewContext render_type attribute values */
+        GLX_RGBA_TYPE           = 0x8014,
+        GLX_COLOR_INDEX_TYPE    = 0x8015,
+    
+    /* glXQueryContext attributes */
+    /*     GLX_FBCONFIG_ID        0x8013 */
+    /*     GLX_RENDER_TYPE        0x8011 */
+        GLX_SCREEN          = 0x800C,
+    
+    /* glXSelectEvent event mask bits */
+        GLX_PBUFFER_CLOBBER_MASK    = 0x08000000,
+    
+    /* GLXPbufferClobberEvent event_type values */
+        GLX_DAMAGED         = 0x8020,
+        GLX_SAVED           = 0x8021,
+    
+    /* GLXPbufferClobberEvent draw_type values */
+        GLX_WINDOW          = 0x8022,
+        GLX_PBUFFER         = 0x8023,
+    
+    /* GLXPbufferClobberEvent buffer_mask bits */
+        GLX_FRONT_LEFT_BUFFER_BIT   = 0x00000001,
+        GLX_FRONT_RIGHT_BUFFER_BIT  = 0x00000002,
+        GLX_BACK_LEFT_BUFFER_BIT    = 0x00000004,
+        GLX_BACK_RIGHT_BUFFER_BIT   = 0x00000008,
+        GLX_AUX_BUFFERS_BIT     = 0x00000010,
+        GLX_DEPTH_BUFFER_BIT        = 0x00000020,
+        GLX_STENCIL_BUFFER_BIT      = 0x00000040,
+        GLX_ACCUM_BUFFER_BIT        = 0x00000080,
+    
+    /*
+    ** Extension return values from glXGetConfig.  These are also
+    ** accepted as parameter values for glXChooseVisual.
+    */
+    
+        GLX_X_VISUAL_TYPE_EXT = 0x22,   /* visual_info extension type */
+        GLX_TRANSPARENT_TYPE_EXT = 0x23,    /* visual_info extension */
+        GLX_TRANSPARENT_INDEX_VALUE_EXT = 0x24, /* visual_info extension */
+        GLX_TRANSPARENT_RED_VALUE_EXT   = 0x25, /* visual_info extension */
+        GLX_TRANSPARENT_GREEN_VALUE_EXT = 0x26, /* visual_info extension */
+        GLX_TRANSPARENT_BLUE_VALUE_EXT  = 0x27, /* visual_info extension */
+        GLX_TRANSPARENT_ALPHA_VALUE_EXT = 0x28, /* visual_info extension */
+    
+    /* Property values for visual_type */
+        GLX_TRUE_COLOR_EXT  = 0x8002,
+        GLX_DIRECT_COLOR_EXT    = 0x8003,
+        GLX_PSEUDO_COLOR_EXT    = 0x8004,
+        GLX_STATIC_COLOR_EXT    = 0x8005,
+        GLX_GRAY_SCALE_EXT  = 0x8006,
+        GLX_STATIC_GRAY_EXT = 0x8007,
+    
+    /* Property values for transparent pixel */
+        GLX_NONE_EXT        = 0x8000,
+        GLX_TRANSPARENT_RGB_EXT     = 0x8008,
+        GLX_TRANSPARENT_INDEX_EXT   = 0x8009,
+    
+    /* Property values for visual_rating */
+        GLX_VISUAL_CAVEAT_EXT       = 0x20,  /* visual_rating extension type */
+        GLX_SLOW_VISUAL_EXT     = 0x8001,
+        GLX_NON_CONFORMANT_VISUAL_EXT   = 0x800D,
+    
+    /*
+    ** Names for attributes to glXGetClientString.
+    */
+        GLX_VENDOR      = 0x1,
+        GLX_VERSION     = 0x2,
+        GLX_EXTENSIONS  = 0x3,
+    
+    /*
+    ** Names for attributes to glXQueryContextInfoEXT.
+    */
+        GLX_SHARE_CONTEXT_EXT = 0x800A, /* id of share context */
+        GLX_VISUAL_ID_EXT = 0x800B, /* id of context's visual */
+        GLX_SCREEN_EXT = 0x800C,    /* screen number */
+    
+    /*
+    * GLX 1.4 
+    */
+        GLX_SAMPLE_BUFFERS = 100000,
+        GLX_SAMPLES = 100001,
+
+    /*
+    * GL bits 
+    */
+        GL_VIEWPORT = 0x0BA2
+    }
+
+    static this() {
+        dwt.internal.c.glx.loadLib();
+    }
+    
+    static void glGetIntegerv( uint pname, int[] params ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glGetIntegerv (pname, params.ptr );
+    }
+
+    static void glViewport( int x, int y, int width, int height ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glViewport( x, y, width, height );
+    }
+
+    static XVisualInfo* glXChooseVisual( void* dpy, int screen, int* attribList ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXChooseVisual( dpy, screen, attribList );
+    }
+
+    static void glXCopyContext( void* dpy, void* src, void* dst, uint mask ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXCopyContext(dpy, src, dst, mask);
+    }
+
+    static void* glXCreateContext( void* dpy, XVisualInfo* vis, void* shareList, int direct ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();        
+        return dwt_glXCreateContext(dpy, vis, shareList, direct);
+    }
+
+    final uint glXCreateGLXPixmap( void* dpy, XVisualInfo* vis , uint pixmap ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXCreateGLXPixmap(dpy, vis, pixmap);
+    }
+
+    static void glXDestroyContext( void* dpy, void* ctx ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXDestroyContext(dpy, ctx);
+    }
+
+    static void glXDestroyGLXPixmap( void* dpy, uint pix ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXDestroyGLXPixmap(dpy, pix);
+    }
+
+    static char* glXGetClientString( void* dpy, int name ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXGetClientString(dpy, name);
+    }
+
+    static int glXGetConfig( void* dpy, XVisualInfo* vis, int attrib, int[] value ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXGetConfig(dpy, vis, attrib, value.ptr);
+    }
+
+    static void* glXGetCurrentContext() 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXGetCurrentContext();
+    }
+
+    static uint glXGetCurrentDrawable() 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXGetCurrentDrawable();
+    }
+
+    static int glXIsDirect( void* dpy, void* ctx ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();    
+        return dwt_glXIsDirect(dpy, ctx);
+    }
+
+    static int glXMakeCurrent( void* dpy, uint drawable, void* ctx) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXMakeCurrent(dpy, drawable, ctx);
+    }
+
+    static int glXQueryExtension( void* dpy, int[] errorBase, int[] eventBase) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock(); 
+        return dwt_glXQueryExtension(dpy, errorBase.ptr, eventBase.ptr);
+    }
+
+    static char* glXQueryExtensionsString( void* dpy, int screen) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXQueryExtensionsString(dpy, screen);
+    }
+
+    static char* glXQueryServerString( void* dpy, int screen, int name ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXQueryServerString(dpy, screen, name);
+    }
+
+    static int glXQueryVersion( void* dpy, int[] major, int[] minor ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        return dwt_glXQueryVersion(dpy, major.ptr, minor.ptr);
+    }
+
+    static void glXSwapBuffers( void* dpy, uint drawable ) 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXSwapBuffers(dpy, drawable);
+    }
+
+    static void glXWaitGL() 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXWaitGL();
+    }
+
+    static void glXWaitX() 
+    {
+        lock.lock();
+        scope(exit) lock.unlock();
+        dwt_glXWaitX();
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dwt/opengl/GLCanvas.d	Sat Mar 01 11:53:07 2008 -0800
@@ -0,0 +1,289 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2007 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ * Port to the D Programming Language:
+ *     John Reimer <terminal.node@gmail.com>
+ *******************************************************************************/
+
+module dwt.opengl.GLCanvas;
+
+import dwt.DWT;
+import dwt.DWTException;
+import dwt.graphics.Rectangle;
+
+import dwt.internal.gtk.OS;
+import dwt.internal.c.glx;
+import dwt.internal.c.gdk   : GdkWindowAttr, GdkDrawable;
+import dwt.internal.c.Xutil : XVisualInfo;
+
+import dwt.internal.opengl.glx.GLX;
+
+import dwt.widgets.Canvas;
+import dwt.widgets.Composite;
+import dwt.widgets.Event;
+import dwt.widgets.Listener;
+
+import dwt.opengl.GLData;
+
+/**
+ * GLCanvas is a widget capable of displaying OpenGL content.
+ * 
+ * @since 3.2
+ */
+
+public class GLCanvas : Canvas {
+    void* context;
+    uint   xWindow;
+    GdkDrawable* glWindow;
+    XVisualInfo vinfo;
+    static const int MAX_ATTRIBUTES = 32;
+
+/**
+ * Create a GLCanvas widget using the attributes described in the GLData
+ * object provided.
+ *
+ * @param parent a composite widget
+ * @param style the bitwise OR'ing of widget styles
+ * @param data the requested attributes of the GLCanvas
+ *
+ * @exception IllegalArgumentException
+ * <ul><li>ERROR_NULL_ARGUMENT when the data is null
+ *     <li>ERROR_UNSUPPORTED_DEPTH when the requested attributes cannot be provided</ul> 
+ * </ul>
+ */
+public this (Composite parent, int style, GLData data) {
+    super (parent, style);  
+    if (data is null) DWT.error (DWT.ERROR_NULL_ARGUMENT);
+    int[MAX_ATTRIBUTES] glxAttrib;
+    int pos = 0;
+    glxAttrib [pos++] = GLX.GLX_RGBA;
+    if (data.doubleBuffer) glxAttrib [pos++] = GLX.GLX_DOUBLEBUFFER;
+    if (data.stereo) glxAttrib [pos++] = GLX.GLX_STEREO;
+    if (data.redSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_RED_SIZE;
+        glxAttrib [pos++] = data.redSize;
+    }
+    if (data.greenSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_GREEN_SIZE;
+        glxAttrib [pos++] = data.greenSize;
+    }
+    if (data.blueSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_BLUE_SIZE;
+        glxAttrib [pos++] = data.blueSize;
+    }
+    if (data.alphaSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_ALPHA_SIZE;
+        glxAttrib [pos++] = data.alphaSize;
+    }
+    if (data.depthSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_DEPTH_SIZE;
+        glxAttrib [pos++] = data.depthSize;
+    }
+    if (data.stencilSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_STENCIL_SIZE;
+        glxAttrib [pos++] = data.stencilSize;
+    }
+    if (data.accumRedSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_ACCUM_RED_SIZE;
+        glxAttrib [pos++] = data.accumRedSize;
+    }
+    if (data.accumGreenSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_ACCUM_GREEN_SIZE;
+        glxAttrib [pos++] = data.accumGreenSize;
+    }
+    if (data.accumBlueSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_ACCUM_BLUE_SIZE;
+        glxAttrib [pos++] = data.accumBlueSize;
+    }
+    if (data.accumAlphaSize > 0) {
+        glxAttrib [pos++] = GLX.GLX_ACCUM_ALPHA_SIZE;
+        glxAttrib [pos++] = data.accumAlphaSize;
+    }
+    if (data.sampleBuffers > 0) {
+        glxAttrib [pos++] = GLX.GLX_SAMPLE_BUFFERS;
+        glxAttrib [pos++] = data.sampleBuffers;
+    }
+    if (data.samples > 0) {
+        glxAttrib [pos++] = GLX.GLX_SAMPLES;
+        glxAttrib [pos++] = data.samples;
+    }
+    glxAttrib [pos++] = 0;
+    OS.gtk_widget_realize (handle);
+    auto window = OS.GTK_WIDGET_WINDOW (handle);
+    auto xDisplay = OS.gdk_x11_drawable_get_xdisplay (window);
+    auto infoPtr = GLX.glXChooseVisual (xDisplay, OS.XDefaultScreen (xDisplay), glxAttrib.ptr);
+    if (infoPtr is null) {
+        dispose ();
+        DWT.error (DWT.ERROR_UNSUPPORTED_DEPTH);
+    }
+
+    vinfo = *infoPtr;
+    //tango.stdc.string.memmove (vinfo, infoPtr, XVisualInfo.sizeof);
+    OS.XFree (infoPtr);
+    auto screen = OS.gdk_screen_get_default ();
+    auto gdkvisual = OS.gdk_x11_screen_lookup_visual (screen, vinfo.visualid);
+    //FIXME- share lists
+    //context = GLX.glXCreateContext (xDisplay, info, share is null ? 0 : share.context, true);
+    context = GLX.glXCreateContext (xDisplay, &vinfo, null, true);
+    if (context is null) 
+        DWT.error (DWT.ERROR_NO_HANDLES);
+    GdkWindowAttr attrs;
+    attrs.width = 1;
+    attrs.height = 1;
+    attrs.event_mask = OS.GDK_KEY_PRESS_MASK | OS.GDK_KEY_RELEASE_MASK |
+        OS.GDK_FOCUS_CHANGE_MASK | OS.GDK_POINTER_MOTION_MASK |
+        OS.GDK_BUTTON_PRESS_MASK | OS.GDK_BUTTON_RELEASE_MASK |
+        OS.GDK_ENTER_NOTIFY_MASK | OS.GDK_LEAVE_NOTIFY_MASK |
+        OS.GDK_EXPOSURE_MASK | OS.GDK_VISIBILITY_NOTIFY_MASK |
+        OS.GDK_POINTER_MOTION_HINT_MASK;
+    attrs.window_type = OS.GDK_WINDOW_CHILD;
+    attrs.visual = gdkvisual;
+    glWindow = OS.gdk_window_new (window, &attrs, OS.GDK_WA_VISUAL);
+    OS.gdk_window_set_user_data ( glWindow, cast(void*) handle);
+    if ((style & DWT.NO_BACKGROUND) !is 0) 
+        OS.gdk_window_set_back_pixmap (window, null, false);
+    xWindow = OS.gdk_x11_drawable_get_xid ( glWindow );
+    OS.gdk_window_show (glWindow);
+
+    Listener listener = new class() Listener {
+        public void handleEvent (Event event) {
+            switch (event.type) {
+            case DWT.Paint:
+                /**
+                * Bug in MESA.  MESA does some nasty sort of polling to try
+                * to ensure that their buffer sizes match the current X state.
+                * This state can be updated using glViewport().
+                * FIXME: There has to be a better way of doing this.
+                */
+                int[4] viewport;
+                GLX.glGetIntegerv (GLX.GL_VIEWPORT, viewport);
+                GLX.glViewport (viewport [0],viewport [1],viewport [2],viewport [3]);
+                break;
+            case DWT.Resize:
+                Rectangle clientArea = getClientArea();
+                OS.gdk_window_move (glWindow, clientArea.x, clientArea.y);
+                OS.gdk_window_resize (glWindow, clientArea.width, clientArea.height);
+                break;
+            case DWT.Dispose:
+                auto window = OS.GTK_WIDGET_WINDOW (handle);
+                auto xDisplay = OS.gdk_x11_drawable_get_xdisplay (window);
+                if (context !is null) {
+                    if (GLX.glXGetCurrentContext () is context) {
+                        GLX.glXMakeCurrent (xDisplay, 0, null);
+                    }
+                    GLX.glXDestroyContext (xDisplay, context);
+                    context = null;
+                }
+                if (glWindow !is null) {
+                    OS.gdk_window_destroy (glWindow);
+                    glWindow = null;
+                }
+                break;
+            }
+        }
+    };
+    addListener (DWT.Resize, listener);
+    addListener (DWT.Paint, listener);
+    addListener (DWT.Dispose, listener);
+}
+
+/**
+ * Returns a GLData object describing the created context.
+ *  
+ * @return GLData description of the OpenGL context attributes
+ * @exception DWTException <ul>
+ *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
+ *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
+ * </ul>
+ */
+public GLData getGLData () {
+    checkWidget ();
+    auto window = OS.GTK_WIDGET_WINDOW (handle);
+    auto xDisplay = OS.gdk_x11_drawable_get_xdisplay (window);
+    GLData data = new GLData ();
+    int [1] value;
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_DOUBLEBUFFER, value);
+    data.doubleBuffer = value [0] !is 0;
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_STEREO, value);
+    data.stereo = value [0] !is 0;
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_RED_SIZE, value);
+    data.redSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_GREEN_SIZE, value);
+    data.greenSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_BLUE_SIZE, value);
+    data.blueSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_ALPHA_SIZE, value);
+    data.alphaSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_DEPTH_SIZE, value);
+    data.depthSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_STENCIL_SIZE, value);
+    data.stencilSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_ACCUM_RED_SIZE, value);
+    data.accumRedSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_ACCUM_GREEN_SIZE, value);
+    data.accumGreenSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_ACCUM_BLUE_SIZE, value);
+    data.accumBlueSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_ACCUM_ALPHA_SIZE, value);
+    data.accumAlphaSize = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_SAMPLE_BUFFERS, value);
+    data.sampleBuffers = value [0];
+    GLX.glXGetConfig (xDisplay, &vinfo, GLX.GLX_SAMPLES, value);
+    data.samples = value [0];
+    return data;
+}
+
+/**
+ * Returns a bool indicating whether the receiver's OpenGL context
+ * is the current context.
+ *  
+ * @return true if the receiver holds the current OpenGL context,
+ * false otherwise
+ * @exception DWTException <ul>
+ *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
+ *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
+ * </ul>
+ */
+public bool isCurrent () {
+    checkWidget ();
+    return (GLX.glXGetCurrentContext () is context);
+}
+
+/**
+ * Sets the OpenGL context associated with this GLCanvas to be the
+ * current GL context.
+ * 
+ * @exception DWTException <ul>
+ *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
+ *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
+ * </ul>
+ */
+public void setCurrent () {
+    checkWidget ();
+    if (GLX.glXGetCurrentContext () is context) return;
+    auto window = OS.GTK_WIDGET_WINDOW (handle);
+    auto xDisplay = OS.gdk_x11_drawable_get_xdisplay (window);
+    GLX.glXMakeCurrent (xDisplay, xWindow, context);
+}
+
+/**
+ * Swaps the front and back color buffers.
+ * 
+ * @exception DWTException <ul>
+ *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
+ *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
+ * </ul>
+ */
+public void swapBuffers () {
+    checkWidget ();
+    auto window = OS.GTK_WIDGET_WINDOW (handle);
+    auto xDisplay = OS.gdk_x11_drawable_get_xdisplay (window);
+    GLX.glXSwapBuffers (xDisplay, xWindow);
+}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dwt/opengl/GLData.d	Sat Mar 01 11:53:07 2008 -0800
@@ -0,0 +1,147 @@
+/*******************************************************************************
+ * Copyright (c) 2005, 2006 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ * Port to the D Programming Language:
+ *     John Reimer <terminal.node@gmail.com>
+ *******************************************************************************/
+
+module dwt.opengl.GLData;
+
+import tango.text.Util;
+import tango.util.Convert;
+
+/**
+ * The GLData class is a device-independent description
+ * of the pixel format attributes of a GL drawable.
+ *
+ * @see GLCanvas
+ * 
+ * @since 3.2
+ */
+
+public class GLData {
+    /**
+     * Specifies a double-buffered surface.  During context
+     * creation, only double-buffered formats are considered
+     * when set to true. 
+     */
+    public bool doubleBuffer;
+
+    /**
+     * Specifies a stereo surface.  During context creation,
+     * only stereo formats are considered when set to true. 
+     */
+    public bool stereo;
+
+    /**
+     * The size in bits of the color buffer's red channel.
+     * During context creation, this specifies the minimum
+     * required red bits.
+     */
+    public int redSize;
+
+    /**
+     * The size in bits of the color buffer's green channel.
+     * During context creation, this specifies the minimum
+     * required green bits.
+     */
+    public int greenSize;
+
+    /**
+     * The size in bits of the color buffer's blue channel.
+     * During context creation, this specifies the minimum
+     * required blue bits.
+     */
+    public int blueSize;
+
+    /**
+     * The size in bits of the color buffer's alpha channel.
+     * During context creation, this specifies the minimum
+     * required alpha bits.
+     */
+    public int alphaSize;
+
+    /**
+     * The size in bits of the depth buffer.  During context
+     * creation, the smallest depth buffer of at least the
+     * specified value is preferred, or zero for no depth
+     * buffer.
+     */
+    public int depthSize;
+
+    /**
+     * The desired number of stencil bitplanes.  During
+     * context creation, the smallest stencil buffer of at
+     * least the specified value is preferred, or zero for
+     * no stencil buffer.
+     */
+    public int stencilSize;
+
+    /**
+     * The size in bits of the accumulation buffer's red
+     * channel. During context creation, this specifies the
+     * minimum required red bits.
+     */
+    public int accumRedSize;
+
+    /**
+     * The size in bits of the accumulation buffer's green
+     * channel. During context creation, this specifies the
+     * minimum required green bits.
+     */
+    public int accumGreenSize;
+
+    /**
+     * The size in bits of the accumulation buffer's blue
+     * channel. During context creation, this specifies the
+     * minimum required blue bits.
+     */
+    public int accumBlueSize;
+
+    /**
+     * The size in bits of the accumulation buffer's alpha
+     * channel. During context creation, this specifies the
+     * minimum required alpha bits.
+     */
+    public int accumAlphaSize;
+
+    /**
+     * The number of multisample buffers used by this context.
+     * During context creation, this specifies the minimum
+     * number of multisample buffers requested.
+     */
+    public int sampleBuffers;
+
+    /**
+     * The number of samples accepted in the multisample buffer.
+     * During creation, pixel formats with the smallest number of
+     * samples that meets or exceeds the specified minimum number
+     * are preferred.
+     */
+    public int samples;
+    
+/**
+ * Returns a string containing a concise, human-readable
+ * description of the receiver.
+ *
+ * @return a string representation of the data
+ */
+
+    override public char[] toString() {
+        char[] string = doubleBuffer ? "doubleBuffer," : "";
+        string ~= stereo ? "stereo," : "";
+        string ~= "r:" ~     to!(char[])(redSize)  ~ " g:" ~ to!(char[])(greenSize) ~ 
+                  " b:" ~    to!(char[])(blueSize) ~ " a:" ~ to!(char[])(alphaSize) ~ "," ~
+                  "depth:" ~ to!(char[])(depthSize) ~ ",stencil:" ~ to!(char[])(stencilSize) ~
+                  ",accum r:" ~ to!(char[])(accumRedSize) ~ "g:" ~ to!(char[])(accumGreenSize) ~ 
+                  "b:" ~ to!(char[])(accumBlueSize) ~ "a:" ~ to!(char[])(accumAlphaSize) ~
+                  ",sampleBuffers:" ~ to!(char[])(sampleBuffers) ~ ",samples:" ~ to!(char[])(samples);
+        return string;
+    }
+}