/////////////////////////////////////////////////////////////////////
//
// GLee.c
// OpenGL Easy Extension library        
// Version : 3.03
//
// Copyright (c)2004  Ben Woodhouse  All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are 
// met:
// 1. Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer as
// the first lines of this file unmodified.
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY BEN WOODHOUSE ``AS IS'' AND ANY EXPRESS OR
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL BEN WOODHOUSE BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This licence includes and incorporates the SGI FREE SOFTWARE LICENSE B 
// (Version 1.1 [02/22/2000]) full details of which can be found at
// http://oss.sgi.com/projects/FreeB
//
// For the avoidance of doubt, this work falls within the definition of a 
// 'Larger Work' within that licence, since it incorporates parts of SGI's
// glExt.h, wglExt.h and glxExt.h header files, which form part of SGI's
// OpenGL Sample Implementation. 
// Web: http://elf-stone.com
//
// [This file was automatically generated by GLeeGen]
//
/////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h>
#include "GLee.h"

// Extension querying variables

GLboolean GLEE_VERSION_1_2 = GL_FALSE;
GLboolean GLEE_ARB_imaging = GL_FALSE;
GLboolean GLEE_VERSION_1_3 = GL_FALSE;
GLboolean GLEE_VERSION_1_4 = GL_FALSE;
GLboolean GLEE_VERSION_1_5 = GL_FALSE;
GLboolean GLEE_ARB_multitexture = GL_FALSE;
GLboolean GLEE_ARB_transpose_matrix = GL_FALSE;
GLboolean GLEE_ARB_multisample = GL_FALSE;
GLboolean GLEE_ARB_texture_env_add = GL_FALSE;
GLboolean GLEE_ARB_texture_cube_map = GL_FALSE;
GLboolean GLEE_ARB_texture_compression = GL_FALSE;
GLboolean GLEE_ARB_texture_border_clamp = GL_FALSE;
GLboolean GLEE_ARB_point_parameters = GL_FALSE;
GLboolean GLEE_ARB_vertex_blend = GL_FALSE;
GLboolean GLEE_ARB_matrix_palette = GL_FALSE;
GLboolean GLEE_ARB_texture_env_combine = GL_FALSE;
GLboolean GLEE_ARB_texture_env_crossbar = GL_FALSE;
GLboolean GLEE_ARB_texture_env_dot3 = GL_FALSE;
GLboolean GLEE_ARB_texture_mirrored_repeat = GL_FALSE;
GLboolean GLEE_ARB_depth_texture = GL_FALSE;
GLboolean GLEE_ARB_shadow = GL_FALSE;
GLboolean GLEE_ARB_shadow_ambient = GL_FALSE;
GLboolean GLEE_ARB_window_pos = GL_FALSE;
GLboolean GLEE_ARB_vertex_program = GL_FALSE;
GLboolean GLEE_ARB_fragment_program = GL_FALSE;
GLboolean GLEE_ARB_vertex_buffer_object = GL_FALSE;
GLboolean GLEE_ARB_occlusion_query = GL_FALSE;
GLboolean GLEE_ARB_shader_objects = GL_FALSE;
GLboolean GLEE_ARB_vertex_shader = GL_FALSE;
GLboolean GLEE_ARB_fragment_shader = GL_FALSE;
GLboolean GLEE_ARB_shading_language_100 = GL_FALSE;
GLboolean GLEE_ARB_texture_non_power_of_two = GL_FALSE;
GLboolean GLEE_ARB_point_sprite = GL_FALSE;
GLboolean GLEE_EXT_abgr = GL_FALSE;
GLboolean GLEE_EXT_blend_color = GL_FALSE;
GLboolean GLEE_EXT_polygon_offset = GL_FALSE;
GLboolean GLEE_EXT_texture = GL_FALSE;
GLboolean GLEE_EXT_texture3D = GL_FALSE;
GLboolean GLEE_SGIS_texture_filter4 = GL_FALSE;
GLboolean GLEE_EXT_subtexture = GL_FALSE;
GLboolean GLEE_EXT_copy_texture = GL_FALSE;
GLboolean GLEE_EXT_histogram = GL_FALSE;
GLboolean GLEE_EXT_convolution = GL_FALSE;
GLboolean GLEE_SGI_color_matrix = GL_FALSE;
GLboolean GLEE_SGI_color_table = GL_FALSE;
GLboolean GLEE_SGIS_pixel_texture = GL_FALSE;
GLboolean GLEE_SGIX_pixel_texture = GL_FALSE;
GLboolean GLEE_SGIS_texture4D = GL_FALSE;
GLboolean GLEE_SGI_texture_color_table = GL_FALSE;
GLboolean GLEE_EXT_cmyka = GL_FALSE;
GLboolean GLEE_EXT_texture_object = GL_FALSE;
GLboolean GLEE_SGIS_detail_texture = GL_FALSE;
GLboolean GLEE_SGIS_sharpen_texture = GL_FALSE;
GLboolean GLEE_EXT_packed_pixels = GL_FALSE;
GLboolean GLEE_SGIS_texture_lod = GL_FALSE;
GLboolean GLEE_SGIS_multisample = GL_FALSE;
GLboolean GLEE_EXT_rescale_normal = GL_FALSE;
GLboolean GLEE_EXT_vertex_array = GL_FALSE;
GLboolean GLEE_EXT_misc_attribute = GL_FALSE;
GLboolean GLEE_SGIS_generate_mipmap = GL_FALSE;
GLboolean GLEE_SGIX_clipmap = GL_FALSE;
GLboolean GLEE_SGIX_shadow = GL_FALSE;
GLboolean GLEE_SGIS_texture_edge_clamp = GL_FALSE;
GLboolean GLEE_EXT_blend_minmax = GL_FALSE;
GLboolean GLEE_EXT_blend_subtract = GL_FALSE;
GLboolean GLEE_EXT_blend_logic_op = GL_FALSE;
GLboolean GLEE_SGIX_interlace = GL_FALSE;
GLboolean GLEE_SGIX_pixel_tiles = GL_FALSE;
GLboolean GLEE_SGIS_texture_select = GL_FALSE;
GLboolean GLEE_SGIX_sprite = GL_FALSE;
GLboolean GLEE_SGIX_texture_multi_buffer = GL_FALSE;
GLboolean GLEE_EXT_point_parameters = GL_FALSE;
GLboolean GLEE_SGIS_point_parameters = GL_FALSE;
GLboolean GLEE_SGIX_instruments = GL_FALSE;
GLboolean GLEE_SGIX_texture_scale_bias = GL_FALSE;
GLboolean GLEE_SGIX_framezoom = GL_FALSE;
GLboolean GLEE_SGIX_tag_sample_buffer = GL_FALSE;
GLboolean GLEE_FfdMaskSGIX = GL_FALSE;
GLboolean GLEE_SGIX_polynomial_ffd = GL_FALSE;
GLboolean GLEE_SGIX_reference_plane = GL_FALSE;
GLboolean GLEE_SGIX_flush_raster = GL_FALSE;
GLboolean GLEE_SGIX_depth_texture = GL_FALSE;
GLboolean GLEE_SGIS_fog_function = GL_FALSE;
GLboolean GLEE_SGIX_fog_offset = GL_FALSE;
GLboolean GLEE_HP_image_transform = GL_FALSE;
GLboolean GLEE_HP_convolution_border_modes = GL_FALSE;
GLboolean GLEE_INGR_palette_buffer = GL_FALSE;
GLboolean GLEE_SGIX_texture_add_env = GL_FALSE;
GLboolean GLEE_EXT_color_subtable = GL_FALSE;
GLboolean GLEE_PGI_vertex_hints = GL_FALSE;
GLboolean GLEE_PGI_misc_hints = GL_FALSE;
GLboolean GLEE_EXT_paletted_texture = GL_FALSE;
GLboolean GLEE_EXT_clip_volume_hint = GL_FALSE;
GLboolean GLEE_SGIX_list_priority = GL_FALSE;
GLboolean GLEE_SGIX_ir_instrument1 = GL_FALSE;
GLboolean GLEE_SGIX_calligraphic_fragment = GL_FALSE;
GLboolean GLEE_SGIX_texture_lod_bias = GL_FALSE;
GLboolean GLEE_SGIX_shadow_ambient = GL_FALSE;
GLboolean GLEE_EXT_index_texture = GL_FALSE;
GLboolean GLEE_EXT_index_material = GL_FALSE;
GLboolean GLEE_EXT_index_func = GL_FALSE;
GLboolean GLEE_EXT_index_array_formats = GL_FALSE;
GLboolean GLEE_EXT_compiled_vertex_array = GL_FALSE;
GLboolean GLEE_EXT_cull_vertex = GL_FALSE;
GLboolean GLEE_SGIX_ycrcb = GL_FALSE;
GLboolean GLEE_SGIX_fragment_lighting = GL_FALSE;
GLboolean GLEE_IBM_rasterpos_clip = GL_FALSE;
GLboolean GLEE_HP_texture_lighting = GL_FALSE;
GLboolean GLEE_EXT_draw_range_elements = GL_FALSE;
GLboolean GLEE_WIN_phong_shading = GL_FALSE;
GLboolean GLEE_WIN_specular_fog = GL_FALSE;
GLboolean GLEE_EXT_light_texture = GL_FALSE;
GLboolean GLEE_SGIX_blend_alpha_minmax = GL_FALSE;
GLboolean GLEE_SGIX_impact_pixel_texture = GL_FALSE;
GLboolean GLEE_EXT_bgra = GL_FALSE;
GLboolean GLEE_SGIX_async = GL_FALSE;
GLboolean GLEE_SGIX_async_pixel = GL_FALSE;
GLboolean GLEE_SGIX_async_histogram = GL_FALSE;
GLboolean GLEE_INTEL_texture_scissor = GL_FALSE;
GLboolean GLEE_INTEL_parallel_arrays = GL_FALSE;
GLboolean GLEE_HP_occlusion_test = GL_FALSE;
GLboolean GLEE_EXT_pixel_transform = GL_FALSE;
GLboolean GLEE_EXT_pixel_transform_color_table = GL_FALSE;
GLboolean GLEE_EXT_shared_texture_palette = GL_FALSE;
GLboolean GLEE_EXT_separate_specular_color = GL_FALSE;
GLboolean GLEE_EXT_secondary_color = GL_FALSE;
GLboolean GLEE_EXT_texture_perturb_normal = GL_FALSE;
GLboolean GLEE_EXT_multi_draw_arrays = GL_FALSE;
GLboolean GLEE_EXT_fog_coord = GL_FALSE;
GLboolean GLEE_REND_screen_coordinates = GL_FALSE;
GLboolean GLEE_EXT_coordinate_frame = GL_FALSE;
GLboolean GLEE_EXT_texture_env_combine = GL_FALSE;
GLboolean GLEE_APPLE_specular_vector = GL_FALSE;
GLboolean GLEE_APPLE_transform_hint = GL_FALSE;
GLboolean GLEE_SGIX_fog_scale = GL_FALSE;
GLboolean GLEE_SUNX_constant_data = GL_FALSE;
GLboolean GLEE_SUN_global_alpha = GL_FALSE;
GLboolean GLEE_SUN_triangle_list = GL_FALSE;
GLboolean GLEE_SUN_vertex = GL_FALSE;
GLboolean GLEE_EXT_blend_func_separate = GL_FALSE;
GLboolean GLEE_INGR_color_clamp = GL_FALSE;
GLboolean GLEE_INGR_interlace_read = GL_FALSE;
GLboolean GLEE_EXT_stencil_wrap = GL_FALSE;
GLboolean GLEE_EXT_422_pixels = GL_FALSE;
GLboolean GLEE_NV_texgen_reflection = GL_FALSE;
GLboolean GLEE_EXT_texture_cube_map = GL_FALSE;
GLboolean GLEE_SUN_convolution_border_modes = GL_FALSE;
GLboolean GLEE_EXT_texture_env_add = GL_FALSE;
GLboolean GLEE_EXT_texture_lod_bias = GL_FALSE;
GLboolean GLEE_EXT_texture_filter_anisotropic = GL_FALSE;
GLboolean GLEE_EXT_vertex_weighting = GL_FALSE;
GLboolean GLEE_NV_light_max_exponent = GL_FALSE;
GLboolean GLEE_NV_vertex_array_range = GL_FALSE;
GLboolean GLEE_NV_register_combiners = GL_FALSE;
GLboolean GLEE_NV_fog_distance = GL_FALSE;
GLboolean GLEE_NV_texgen_emboss = GL_FALSE;
GLboolean GLEE_NV_blend_square = GL_FALSE;
GLboolean GLEE_NV_texture_env_combine4 = GL_FALSE;
GLboolean GLEE_MESA_resize_buffers = GL_FALSE;
GLboolean GLEE_MESA_window_pos = GL_FALSE;
GLboolean GLEE_EXT_texture_compression_s3tc = GL_FALSE;
GLboolean GLEE_IBM_cull_vertex = GL_FALSE;
GLboolean GLEE_IBM_multimode_draw_arrays = GL_FALSE;
GLboolean GLEE_IBM_vertex_array_lists = GL_FALSE;
GLboolean GLEE_SGIX_subsample = GL_FALSE;
GLboolean GLEE_SGIX_ycrcb_subsample = GL_FALSE;
GLboolean GLEE_SGIX_ycrcba = GL_FALSE;
GLboolean GLEE_SGI_depth_pass_instrument = GL_FALSE;
GLboolean GLEE_3DFX_texture_compression_FXT1 = GL_FALSE;
GLboolean GLEE_3DFX_multisample = GL_FALSE;
GLboolean GLEE_3DFX_tbuffer = GL_FALSE;
GLboolean GLEE_EXT_multisample = GL_FALSE;
GLboolean GLEE_SGIX_vertex_preclip = GL_FALSE;
GLboolean GLEE_SGIX_convolution_accuracy = GL_FALSE;
GLboolean GLEE_SGIX_resample = GL_FALSE;
GLboolean GLEE_SGIS_point_line_texgen = GL_FALSE;
GLboolean GLEE_SGIS_texture_color_mask = GL_FALSE;
GLboolean GLEE_EXT_texture_env_dot3 = GL_FALSE;
GLboolean GLEE_ATI_texture_mirror_once = GL_FALSE;
GLboolean GLEE_NV_fence = GL_FALSE;
GLboolean GLEE_IBM_texture_mirrored_repeat = GL_FALSE;
GLboolean GLEE_NV_evaluators = GL_FALSE;
GLboolean GLEE_NV_packed_depth_stencil = GL_FALSE;
GLboolean GLEE_NV_register_combiners2 = GL_FALSE;
GLboolean GLEE_NV_texture_compression_vtc = GL_FALSE;
GLboolean GLEE_NV_texture_rectangle = GL_FALSE;
GLboolean GLEE_NV_texture_shader = GL_FALSE;
GLboolean GLEE_NV_texture_shader2 = GL_FALSE;
GLboolean GLEE_NV_vertex_array_range2 = GL_FALSE;
GLboolean GLEE_NV_vertex_program = GL_FALSE;
GLboolean GLEE_SGIX_texture_coordinate_clamp = GL_FALSE;
GLboolean GLEE_SGIX_scalebias_hint = GL_FALSE;
GLboolean GLEE_OML_interlace = GL_FALSE;
GLboolean GLEE_OML_subsample = GL_FALSE;
GLboolean GLEE_OML_resample = GL_FALSE;
GLboolean GLEE_NV_copy_depth_to_color = GL_FALSE;
GLboolean GLEE_ATI_envmap_bumpmap = GL_FALSE;
GLboolean GLEE_ATI_fragment_shader = GL_FALSE;
GLboolean GLEE_ATI_pn_triangles = GL_FALSE;
GLboolean GLEE_ATI_vertex_array_object = GL_FALSE;
GLboolean GLEE_EXT_vertex_shader = GL_FALSE;
GLboolean GLEE_ATI_vertex_streams = GL_FALSE;
GLboolean GLEE_ATI_element_array = GL_FALSE;
GLboolean GLEE_SUN_mesh_array = GL_FALSE;
GLboolean GLEE_SUN_slice_accum = GL_FALSE;
GLboolean GLEE_NV_multisample_filter_hint = GL_FALSE;
GLboolean GLEE_NV_depth_clamp = GL_FALSE;
GLboolean GLEE_NV_occlusion_query = GL_FALSE;
GLboolean GLEE_NV_point_sprite = GL_FALSE;
GLboolean GLEE_NV_texture_shader3 = GL_FALSE;
GLboolean GLEE_NV_vertex_program1_1 = GL_FALSE;
GLboolean GLEE_EXT_shadow_funcs = GL_FALSE;
GLboolean GLEE_EXT_stencil_two_side = GL_FALSE;
GLboolean GLEE_ATI_text_fragment_shader = GL_FALSE;
GLboolean GLEE_APPLE_client_storage = GL_FALSE;
GLboolean GLEE_APPLE_element_array = GL_FALSE;
GLboolean GLEE_APPLE_fence = GL_FALSE;
GLboolean GLEE_APPLE_vertex_array_object = GL_FALSE;
GLboolean GLEE_APPLE_vertex_array_range = GL_FALSE;
GLboolean GLEE_APPLE_ycbcr_422 = GL_FALSE;
GLboolean GLEE_S3_s3tc = GL_FALSE;
GLboolean GLEE_ATI_draw_buffers = GL_FALSE;
GLboolean GLEE_ATI_texture_env_combine3 = GL_FALSE;
GLboolean GLEE_ATI_texture_float = GL_FALSE;
GLboolean GLEE_NV_float_buffer = GL_FALSE;
GLboolean GLEE_NV_fragment_program = GL_FALSE;
GLboolean GLEE_NV_half_float = GL_FALSE;
GLboolean GLEE_NV_pixel_data_range = GL_FALSE;
GLboolean GLEE_NV_primitive_restart = GL_FALSE;
GLboolean GLEE_NV_texture_expand_normal = GL_FALSE;
GLboolean GLEE_NV_vertex_program2 = GL_FALSE;
GLboolean GLEE_ATI_map_object_buffer = GL_FALSE;
GLboolean GLEE_ATI_separate_stencil = GL_FALSE;
GLboolean GLEE_ATI_vertex_attrib_array_object = GL_FALSE;
GLboolean GLEE_EXT_depth_bounds_test = GL_FALSE;
GLboolean GLEE_EXT_texture_mirror_clamp = GL_FALSE;
GLboolean GLEE_EXT_blend_equation_separate = GL_FALSE;
GLboolean GLEE_MESA_pack_invert = GL_FALSE;
GLboolean GLEE_MESA_ycbcr_texture = GL_FALSE;
GLboolean GLEE_EXT_color_matrix = GL_FALSE;
GLboolean GLEE_SGIS_texture_border_clamp = GL_FALSE;
GLboolean GLEE_SGIX_texture_select = GL_FALSE;
GLboolean GLEE_INGR_blend_func_separate = GL_FALSE;
GLboolean GLEE_SGIX_depth_pass_instrument = GL_FALSE;
GLboolean GLEE_SGIX_igloo_interface = GL_FALSE;

//GL_VERSION_1_2

#ifdef __GLEE_GL_VERSION_1_2
PFNGLBLENDCOLORPROC pglBlendColor=0;
PFNGLBLENDEQUATIONPROC pglBlendEquation=0;
PFNGLDRAWRANGEELEMENTSPROC pglDrawRangeElements=0;
PFNGLCOLORTABLEPROC pglColorTable=0;
PFNGLCOLORTABLEPARAMETERFVPROC pglColorTableParameterfv=0;
PFNGLCOLORTABLEPARAMETERIVPROC pglColorTableParameteriv=0;
PFNGLCOPYCOLORTABLEPROC pglCopyColorTable=0;
PFNGLGETCOLORTABLEPROC pglGetColorTable=0;
PFNGLGETCOLORTABLEPARAMETERFVPROC pglGetColorTableParameterfv=0;
PFNGLGETCOLORTABLEPARAMETERIVPROC pglGetColorTableParameteriv=0;
PFNGLCOLORSUBTABLEPROC pglColorSubTable=0;
PFNGLCOPYCOLORSUBTABLEPROC pglCopyColorSubTable=0;
PFNGLCONVOLUTIONFILTER1DPROC pglConvolutionFilter1D=0;
PFNGLCONVOLUTIONFILTER2DPROC pglConvolutionFilter2D=0;
PFNGLCONVOLUTIONPARAMETERFPROC pglConvolutionParameterf=0;
PFNGLCONVOLUTIONPARAMETERFVPROC pglConvolutionParameterfv=0;
PFNGLCONVOLUTIONPARAMETERIPROC pglConvolutionParameteri=0;
PFNGLCONVOLUTIONPARAMETERIVPROC pglConvolutionParameteriv=0;
PFNGLCOPYCONVOLUTIONFILTER1DPROC pglCopyConvolutionFilter1D=0;
PFNGLCOPYCONVOLUTIONFILTER2DPROC pglCopyConvolutionFilter2D=0;
PFNGLGETCONVOLUTIONFILTERPROC pglGetConvolutionFilter=0;
PFNGLGETCONVOLUTIONPARAMETERFVPROC pglGetConvolutionParameterfv=0;
PFNGLGETCONVOLUTIONPARAMETERIVPROC pglGetConvolutionParameteriv=0;
PFNGLGETSEPARABLEFILTERPROC pglGetSeparableFilter=0;
PFNGLSEPARABLEFILTER2DPROC pglSeparableFilter2D=0;
PFNGLGETHISTOGRAMPROC pglGetHistogram=0;
PFNGLGETHISTOGRAMPARAMETERFVPROC pglGetHistogramParameterfv=0;
PFNGLGETHISTOGRAMPARAMETERIVPROC pglGetHistogramParameteriv=0;
PFNGLGETMINMAXPROC pglGetMinmax=0;
PFNGLGETMINMAXPARAMETERFVPROC pglGetMinmaxParameterfv=0;
PFNGLGETMINMAXPARAMETERIVPROC pglGetMinmaxParameteriv=0;
PFNGLHISTOGRAMPROC pglHistogram=0;
PFNGLMINMAXPROC pglMinmax=0;
PFNGLRESETHISTOGRAMPROC pglResetHistogram=0;
PFNGLRESETMINMAXPROC pglResetMinmax=0;
PFNGLTEXIMAGE3DPROC pglTexImage3D=0;
PFNGLTEXSUBIMAGE3DPROC pglTexSubImage3D=0;
PFNGLCOPYTEXSUBIMAGE3DPROC pglCopyTexSubImage3D=0;
#endif 

//GL_ARB_imaging

#ifdef __GLEE_GL_ARB_imaging
#endif 

//GL_VERSION_1_3

#ifdef __GLEE_GL_VERSION_1_3
PFNGLACTIVETEXTUREPROC pglActiveTexture=0;
PFNGLCLIENTACTIVETEXTUREPROC pglClientActiveTexture=0;
PFNGLMULTITEXCOORD1DPROC pglMultiTexCoord1d=0;
PFNGLMULTITEXCOORD1DVPROC pglMultiTexCoord1dv=0;
PFNGLMULTITEXCOORD1FPROC pglMultiTexCoord1f=0;
PFNGLMULTITEXCOORD1FVPROC pglMultiTexCoord1fv=0;
PFNGLMULTITEXCOORD1IPROC pglMultiTexCoord1i=0;
PFNGLMULTITEXCOORD1IVPROC pglMultiTexCoord1iv=0;
PFNGLMULTITEXCOORD1SPROC pglMultiTexCoord1s=0;
PFNGLMULTITEXCOORD1SVPROC pglMultiTexCoord1sv=0;
PFNGLMULTITEXCOORD2DPROC pglMultiTexCoord2d=0;
PFNGLMULTITEXCOORD2DVPROC pglMultiTexCoord2dv=0;
PFNGLMULTITEXCOORD2FPROC pglMultiTexCoord2f=0;
PFNGLMULTITEXCOORD2FVPROC pglMultiTexCoord2fv=0;
PFNGLMULTITEXCOORD2IPROC pglMultiTexCoord2i=0;
PFNGLMULTITEXCOORD2IVPROC pglMultiTexCoord2iv=0;
PFNGLMULTITEXCOORD2SPROC pglMultiTexCoord2s=0;
PFNGLMULTITEXCOORD2SVPROC pglMultiTexCoord2sv=0;
PFNGLMULTITEXCOORD3DPROC pglMultiTexCoord3d=0;
PFNGLMULTITEXCOORD3DVPROC pglMultiTexCoord3dv=0;
PFNGLMULTITEXCOORD3FPROC pglMultiTexCoord3f=0;
PFNGLMULTITEXCOORD3FVPROC pglMultiTexCoord3fv=0;
PFNGLMULTITEXCOORD3IPROC pglMultiTexCoord3i=0;
PFNGLMULTITEXCOORD3IVPROC pglMultiTexCoord3iv=0;
PFNGLMULTITEXCOORD3SPROC pglMultiTexCoord3s=0;
PFNGLMULTITEXCOORD3SVPROC pglMultiTexCoord3sv=0;
PFNGLMULTITEXCOORD4DPROC pglMultiTexCoord4d=0;
PFNGLMULTITEXCOORD4DVPROC pglMultiTexCoord4dv=0;
PFNGLMULTITEXCOORD4FPROC pglMultiTexCoord4f=0;
PFNGLMULTITEXCOORD4FVPROC pglMultiTexCoord4fv=0;
PFNGLMULTITEXCOORD4IPROC pglMultiTexCoord4i=0;
PFNGLMULTITEXCOORD4IVPROC pglMultiTexCoord4iv=0;
PFNGLMULTITEXCOORD4SPROC pglMultiTexCoord4s=0;
PFNGLMULTITEXCOORD4SVPROC pglMultiTexCoord4sv=0;
PFNGLLOADTRANSPOSEMATRIXFPROC pglLoadTransposeMatrixf=0;
PFNGLLOADTRANSPOSEMATRIXDPROC pglLoadTransposeMatrixd=0;
PFNGLMULTTRANSPOSEMATRIXFPROC pglMultTransposeMatrixf=0;
PFNGLMULTTRANSPOSEMATRIXDPROC pglMultTransposeMatrixd=0;
PFNGLSAMPLECOVERAGEPROC pglSampleCoverage=0;
PFNGLCOMPRESSEDTEXIMAGE3DPROC pglCompressedTexImage3D=0;
PFNGLCOMPRESSEDTEXIMAGE2DPROC pglCompressedTexImage2D=0;
PFNGLCOMPRESSEDTEXIMAGE1DPROC pglCompressedTexImage1D=0;
PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC pglCompressedTexSubImage3D=0;
PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC pglCompressedTexSubImage2D=0;
PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC pglCompressedTexSubImage1D=0;
PFNGLGETCOMPRESSEDTEXIMAGEPROC pglGetCompressedTexImage=0;
#endif 

//GL_VERSION_1_4

#ifdef __GLEE_GL_VERSION_1_4
PFNGLBLENDFUNCSEPARATEPROC pglBlendFuncSeparate=0;
PFNGLFOGCOORDFPROC pglFogCoordf=0;
PFNGLFOGCOORDFVPROC pglFogCoordfv=0;
PFNGLFOGCOORDDPROC pglFogCoordd=0;
PFNGLFOGCOORDDVPROC pglFogCoorddv=0;
PFNGLFOGCOORDPOINTERPROC pglFogCoordPointer=0;
PFNGLMULTIDRAWARRAYSPROC pglMultiDrawArrays=0;
PFNGLMULTIDRAWELEMENTSPROC pglMultiDrawElements=0;
PFNGLPOINTPARAMETERFPROC pglPointParameterf=0;
PFNGLPOINTPARAMETERFVPROC pglPointParameterfv=0;
PFNGLPOINTPARAMETERIPROC pglPointParameteri=0;
PFNGLPOINTPARAMETERIVPROC pglPointParameteriv=0;
PFNGLSECONDARYCOLOR3BPROC pglSecondaryColor3b=0;
PFNGLSECONDARYCOLOR3BVPROC pglSecondaryColor3bv=0;
PFNGLSECONDARYCOLOR3DPROC pglSecondaryColor3d=0;
PFNGLSECONDARYCOLOR3DVPROC pglSecondaryColor3dv=0;
PFNGLSECONDARYCOLOR3FPROC pglSecondaryColor3f=0;
PFNGLSECONDARYCOLOR3FVPROC pglSecondaryColor3fv=0;
PFNGLSECONDARYCOLOR3IPROC pglSecondaryColor3i=0;
PFNGLSECONDARYCOLOR3IVPROC pglSecondaryColor3iv=0;
PFNGLSECONDARYCOLOR3SPROC pglSecondaryColor3s=0;
PFNGLSECONDARYCOLOR3SVPROC pglSecondaryColor3sv=0;
PFNGLSECONDARYCOLOR3UBPROC pglSecondaryColor3ub=0;
PFNGLSECONDARYCOLOR3UBVPROC pglSecondaryColor3ubv=0;
PFNGLSECONDARYCOLOR3UIPROC pglSecondaryColor3ui=0;
PFNGLSECONDARYCOLOR3UIVPROC pglSecondaryColor3uiv=0;
PFNGLSECONDARYCOLOR3USPROC pglSecondaryColor3us=0;
PFNGLSECONDARYCOLOR3USVPROC pglSecondaryColor3usv=0;
PFNGLSECONDARYCOLORPOINTERPROC pglSecondaryColorPointer=0;
PFNGLWINDOWPOS2DPROC pglWindowPos2d=0;
PFNGLWINDOWPOS2DVPROC pglWindowPos2dv=0;
PFNGLWINDOWPOS2FPROC pglWindowPos2f=0;
PFNGLWINDOWPOS2FVPROC pglWindowPos2fv=0;
PFNGLWINDOWPOS2IPROC pglWindowPos2i=0;
PFNGLWINDOWPOS2IVPROC pglWindowPos2iv=0;
PFNGLWINDOWPOS2SPROC pglWindowPos2s=0;
PFNGLWINDOWPOS2SVPROC pglWindowPos2sv=0;
PFNGLWINDOWPOS3DPROC pglWindowPos3d=0;
PFNGLWINDOWPOS3DVPROC pglWindowPos3dv=0;
PFNGLWINDOWPOS3FPROC pglWindowPos3f=0;
PFNGLWINDOWPOS3FVPROC pglWindowPos3fv=0;
PFNGLWINDOWPOS3IPROC pglWindowPos3i=0;
PFNGLWINDOWPOS3IVPROC pglWindowPos3iv=0;
PFNGLWINDOWPOS3SPROC pglWindowPos3s=0;
PFNGLWINDOWPOS3SVPROC pglWindowPos3sv=0;
#endif 

//GL_VERSION_1_5

#ifdef __GLEE_GL_VERSION_1_5
PFNGLGENQUERIESPROC pglGenQueries=0;
PFNGLDELETEQUERIESPROC pglDeleteQueries=0;
PFNGLISQUERYPROC pglIsQuery=0;
PFNGLBEGINQUERYPROC pglBeginQuery=0;
PFNGLENDQUERYPROC pglEndQuery=0;
PFNGLGETQUERYIVPROC pglGetQueryiv=0;
PFNGLGETQUERYOBJECTIVPROC pglGetQueryObjectiv=0;
PFNGLGETQUERYOBJECTUIVPROC pglGetQueryObjectuiv=0;
PFNGLBINDBUFFERPROC pglBindBuffer=0;
PFNGLDELETEBUFFERSPROC pglDeleteBuffers=0;
PFNGLGENBUFFERSPROC pglGenBuffers=0;
PFNGLISBUFFERPROC pglIsBuffer=0;
PFNGLBUFFERDATAPROC pglBufferData=0;
PFNGLBUFFERSUBDATAPROC pglBufferSubData=0;
PFNGLGETBUFFERSUBDATAPROC pglGetBufferSubData=0;
PFNGLMAPBUFFERPROC pglMapBuffer=0;
PFNGLUNMAPBUFFERPROC pglUnmapBuffer=0;
PFNGLGETBUFFERPARAMETERIVPROC pglGetBufferParameteriv=0;
PFNGLGETBUFFERPOINTERVPROC pglGetBufferPointerv=0;
#endif 

//GL_ARB_multitexture

#ifdef __GLEE_GL_ARB_multitexture
PFNGLACTIVETEXTUREARBPROC pglActiveTextureARB=0;
PFNGLCLIENTACTIVETEXTUREARBPROC pglClientActiveTextureARB=0;
PFNGLMULTITEXCOORD1DARBPROC pglMultiTexCoord1dARB=0;
PFNGLMULTITEXCOORD1DVARBPROC pglMultiTexCoord1dvARB=0;
PFNGLMULTITEXCOORD1FARBPROC pglMultiTexCoord1fARB=0;
PFNGLMULTITEXCOORD1FVARBPROC pglMultiTexCoord1fvARB=0;
PFNGLMULTITEXCOORD1IARBPROC pglMultiTexCoord1iARB=0;
PFNGLMULTITEXCOORD1IVARBPROC pglMultiTexCoord1ivARB=0;
PFNGLMULTITEXCOORD1SARBPROC pglMultiTexCoord1sARB=0;
PFNGLMULTITEXCOORD1SVARBPROC pglMultiTexCoord1svARB=0;
PFNGLMULTITEXCOORD2DARBPROC pglMultiTexCoord2dARB=0;
PFNGLMULTITEXCOORD2DVARBPROC pglMultiTexCoord2dvARB=0;
PFNGLMULTITEXCOORD2FARBPROC pglMultiTexCoord2fARB=0;
PFNGLMULTITEXCOORD2FVARBPROC pglMultiTexCoord2fvARB=0;
PFNGLMULTITEXCOORD2IARBPROC pglMultiTexCoord2iARB=0;
PFNGLMULTITEXCOORD2IVARBPROC pglMultiTexCoord2ivARB=0;
PFNGLMULTITEXCOORD2SARBPROC pglMultiTexCoord2sARB=0;
PFNGLMULTITEXCOORD2SVARBPROC pglMultiTexCoord2svARB=0;
PFNGLMULTITEXCOORD3DARBPROC pglMultiTexCoord3dARB=0;
PFNGLMULTITEXCOORD3DVARBPROC pglMultiTexCoord3dvARB=0;
PFNGLMULTITEXCOORD3FARBPROC pglMultiTexCoord3fARB=0;
PFNGLMULTITEXCOORD3FVARBPROC pglMultiTexCoord3fvARB=0;
PFNGLMULTITEXCOORD3IARBPROC pglMultiTexCoord3iARB=0;
PFNGLMULTITEXCOORD3IVARBPROC pglMultiTexCoord3ivARB=0;
PFNGLMULTITEXCOORD3SARBPROC pglMultiTexCoord3sARB=0;
PFNGLMULTITEXCOORD3SVARBPROC pglMultiTexCoord3svARB=0;
PFNGLMULTITEXCOORD4DARBPROC pglMultiTexCoord4dARB=0;
PFNGLMULTITEXCOORD4DVARBPROC pglMultiTexCoord4dvARB=0;
PFNGLMULTITEXCOORD4FARBPROC pglMultiTexCoord4fARB=0;
PFNGLMULTITEXCOORD4FVARBPROC pglMultiTexCoord4fvARB=0;
PFNGLMULTITEXCOORD4IARBPROC pglMultiTexCoord4iARB=0;
PFNGLMULTITEXCOORD4IVARBPROC pglMultiTexCoord4ivARB=0;
PFNGLMULTITEXCOORD4SARBPROC pglMultiTexCoord4sARB=0;
PFNGLMULTITEXCOORD4SVARBPROC pglMultiTexCoord4svARB=0;
#endif 

//GL_ARB_transpose_matrix

#ifdef __GLEE_GL_ARB_transpose_matrix
PFNGLLOADTRANSPOSEMATRIXFARBPROC pglLoadTransposeMatrixfARB=0;
PFNGLLOADTRANSPOSEMATRIXDARBPROC pglLoadTransposeMatrixdARB=0;
PFNGLMULTTRANSPOSEMATRIXFARBPROC pglMultTransposeMatrixfARB=0;
PFNGLMULTTRANSPOSEMATRIXDARBPROC pglMultTransposeMatrixdARB=0;
#endif 

//GL_ARB_multisample

#ifdef __GLEE_GL_ARB_multisample
PFNGLSAMPLECOVERAGEARBPROC pglSampleCoverageARB=0;
#endif 

//GL_ARB_texture_env_add

#ifdef __GLEE_GL_ARB_texture_env_add
#endif 

//GL_ARB_texture_cube_map

#ifdef __GLEE_GL_ARB_texture_cube_map
#endif 

//GL_ARB_texture_compression

#ifdef __GLEE_GL_ARB_texture_compression
PFNGLCOMPRESSEDTEXIMAGE3DARBPROC pglCompressedTexImage3DARB=0;
PFNGLCOMPRESSEDTEXIMAGE2DARBPROC pglCompressedTexImage2DARB=0;
PFNGLCOMPRESSEDTEXIMAGE1DARBPROC pglCompressedTexImage1DARB=0;
PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC pglCompressedTexSubImage3DARB=0;
PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC pglCompressedTexSubImage2DARB=0;
PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC pglCompressedTexSubImage1DARB=0;
PFNGLGETCOMPRESSEDTEXIMAGEARBPROC pglGetCompressedTexImageARB=0;
#endif 

//GL_ARB_texture_border_clamp

#ifdef __GLEE_GL_ARB_texture_border_clamp
#endif 

//GL_ARB_point_parameters

#ifdef __GLEE_GL_ARB_point_parameters
PFNGLPOINTPARAMETERFARBPROC pglPointParameterfARB=0;
PFNGLPOINTPARAMETERFVARBPROC pglPointParameterfvARB=0;
#endif 

//GL_ARB_vertex_blend

#ifdef __GLEE_GL_ARB_vertex_blend
PFNGLWEIGHTBVARBPROC pglWeightbvARB=0;
PFNGLWEIGHTSVARBPROC pglWeightsvARB=0;
PFNGLWEIGHTIVARBPROC pglWeightivARB=0;
PFNGLWEIGHTFVARBPROC pglWeightfvARB=0;
PFNGLWEIGHTDVARBPROC pglWeightdvARB=0;
PFNGLWEIGHTUBVARBPROC pglWeightubvARB=0;
PFNGLWEIGHTUSVARBPROC pglWeightusvARB=0;
PFNGLWEIGHTUIVARBPROC pglWeightuivARB=0;
PFNGLWEIGHTPOINTERARBPROC pglWeightPointerARB=0;
PFNGLVERTEXBLENDARBPROC pglVertexBlendARB=0;
#endif 

//GL_ARB_matrix_palette

#ifdef __GLEE_GL_ARB_matrix_palette
PFNGLCURRENTPALETTEMATRIXARBPROC pglCurrentPaletteMatrixARB=0;
PFNGLMATRIXINDEXUBVARBPROC pglMatrixIndexubvARB=0;
PFNGLMATRIXINDEXUSVARBPROC pglMatrixIndexusvARB=0;
PFNGLMATRIXINDEXUIVARBPROC pglMatrixIndexuivARB=0;
PFNGLMATRIXINDEXPOINTERARBPROC pglMatrixIndexPointerARB=0;
#endif 

//GL_ARB_texture_env_combine

#ifdef __GLEE_GL_ARB_texture_env_combine
#endif 

//GL_ARB_texture_env_crossbar

#ifdef __GLEE_GL_ARB_texture_env_crossbar
#endif 

//GL_ARB_texture_env_dot3

#ifdef __GLEE_GL_ARB_texture_env_dot3
#endif 

//GL_ARB_texture_mirrored_repeat

#ifdef __GLEE_GL_ARB_texture_mirrored_repeat
#endif 

//GL_ARB_depth_texture

#ifdef __GLEE_GL_ARB_depth_texture
#endif 

//GL_ARB_shadow

#ifdef __GLEE_GL_ARB_shadow
#endif 

//GL_ARB_shadow_ambient

#ifdef __GLEE_GL_ARB_shadow_ambient
#endif 

//GL_ARB_window_pos

#ifdef __GLEE_GL_ARB_window_pos
PFNGLWINDOWPOS2DARBPROC pglWindowPos2dARB=0;
PFNGLWINDOWPOS2DVARBPROC pglWindowPos2dvARB=0;
PFNGLWINDOWPOS2FARBPROC pglWindowPos2fARB=0;
PFNGLWINDOWPOS2FVARBPROC pglWindowPos2fvARB=0;
PFNGLWINDOWPOS2IARBPROC pglWindowPos2iARB=0;
PFNGLWINDOWPOS2IVARBPROC pglWindowPos2ivARB=0;
PFNGLWINDOWPOS2SARBPROC pglWindowPos2sARB=0;
PFNGLWINDOWPOS2SVARBPROC pglWindowPos2svARB=0;
PFNGLWINDOWPOS3DARBPROC pglWindowPos3dARB=0;
PFNGLWINDOWPOS3DVARBPROC pglWindowPos3dvARB=0;
PFNGLWINDOWPOS3FARBPROC pglWindowPos3fARB=0;
PFNGLWINDOWPOS3FVARBPROC pglWindowPos3fvARB=0;
PFNGLWINDOWPOS3IARBPROC pglWindowPos3iARB=0;
PFNGLWINDOWPOS3IVARBPROC pglWindowPos3ivARB=0;
PFNGLWINDOWPOS3SARBPROC pglWindowPos3sARB=0;
PFNGLWINDOWPOS3SVARBPROC pglWindowPos3svARB=0;
#endif 

//GL_ARB_vertex_program

#ifdef __GLEE_GL_ARB_vertex_program
PFNGLVERTEXATTRIB1DARBPROC pglVertexAttrib1dARB=0;
PFNGLVERTEXATTRIB1DVARBPROC pglVertexAttrib1dvARB=0;
PFNGLVERTEXATTRIB1FARBPROC pglVertexAttrib1fARB=0;
PFNGLVERTEXATTRIB1FVARBPROC pglVertexAttrib1fvARB=0;
PFNGLVERTEXATTRIB1SARBPROC pglVertexAttrib1sARB=0;
PFNGLVERTEXATTRIB1SVARBPROC pglVertexAttrib1svARB=0;
PFNGLVERTEXATTRIB2DARBPROC pglVertexAttrib2dARB=0;
PFNGLVERTEXATTRIB2DVARBPROC pglVertexAttrib2dvARB=0;
PFNGLVERTEXATTRIB2FARBPROC pglVertexAttrib2fARB=0;
PFNGLVERTEXATTRIB2FVARBPROC pglVertexAttrib2fvARB=0;
PFNGLVERTEXATTRIB2SARBPROC pglVertexAttrib2sARB=0;
PFNGLVERTEXATTRIB2SVARBPROC pglVertexAttrib2svARB=0;
PFNGLVERTEXATTRIB3DARBPROC pglVertexAttrib3dARB=0;
PFNGLVERTEXATTRIB3DVARBPROC pglVertexAttrib3dvARB=0;
PFNGLVERTEXATTRIB3FARBPROC pglVertexAttrib3fARB=0;
PFNGLVERTEXATTRIB3FVARBPROC pglVertexAttrib3fvARB=0;
PFNGLVERTEXATTRIB3SARBPROC pglVertexAttrib3sARB=0;
PFNGLVERTEXATTRIB3SVARBPROC pglVertexAttrib3svARB=0;
PFNGLVERTEXATTRIB4NBVARBPROC pglVertexAttrib4NbvARB=0;
PFNGLVERTEXATTRIB4NIVARBPROC pglVertexAttrib4NivARB=0;
PFNGLVERTEXATTRIB4NSVARBPROC pglVertexAttrib4NsvARB=0;
PFNGLVERTEXATTRIB4NUBARBPROC pglVertexAttrib4NubARB=0;
PFNGLVERTEXATTRIB4NUBVARBPROC pglVertexAttrib4NubvARB=0;
PFNGLVERTEXATTRIB4NUIVARBPROC pglVertexAttrib4NuivARB=0;
PFNGLVERTEXATTRIB4NUSVARBPROC pglVertexAttrib4NusvARB=0;
PFNGLVERTEXATTRIB4BVARBPROC pglVertexAttrib4bvARB=0;
PFNGLVERTEXATTRIB4DARBPROC pglVertexAttrib4dARB=0;
PFNGLVERTEXATTRIB4DVARBPROC pglVertexAttrib4dvARB=0;
PFNGLVERTEXATTRIB4FARBPROC pglVertexAttrib4fARB=0;
PFNGLVERTEXATTRIB4FVARBPROC pglVertexAttrib4fvARB=0;
PFNGLVERTEXATTRIB4IVARBPROC pglVertexAttrib4ivARB=0;
PFNGLVERTEXATTRIB4SARBPROC pglVertexAttrib4sARB=0;
PFNGLVERTEXATTRIB4SVARBPROC pglVertexAttrib4svARB=0;
PFNGLVERTEXATTRIB4UBVARBPROC pglVertexAttrib4ubvARB=0;
PFNGLVERTEXATTRIB4UIVARBPROC pglVertexAttrib4uivARB=0;
PFNGLVERTEXATTRIB4USVARBPROC pglVertexAttrib4usvARB=0;
PFNGLVERTEXATTRIBPOINTERARBPROC pglVertexAttribPointerARB=0;
PFNGLENABLEVERTEXATTRIBARRAYARBPROC pglEnableVertexAttribArrayARB=0;
PFNGLDISABLEVERTEXATTRIBARRAYARBPROC pglDisableVertexAttribArrayARB=0;
PFNGLPROGRAMSTRINGARBPROC pglProgramStringARB=0;
PFNGLBINDPROGRAMARBPROC pglBindProgramARB=0;
PFNGLDELETEPROGRAMSARBPROC pglDeleteProgramsARB=0;
PFNGLGENPROGRAMSARBPROC pglGenProgramsARB=0;
PFNGLPROGRAMENVPARAMETER4DARBPROC pglProgramEnvParameter4dARB=0;
PFNGLPROGRAMENVPARAMETER4DVARBPROC pglProgramEnvParameter4dvARB=0;
PFNGLPROGRAMENVPARAMETER4FARBPROC pglProgramEnvParameter4fARB=0;
PFNGLPROGRAMENVPARAMETER4FVARBPROC pglProgramEnvParameter4fvARB=0;
PFNGLPROGRAMLOCALPARAMETER4DARBPROC pglProgramLocalParameter4dARB=0;
PFNGLPROGRAMLOCALPARAMETER4DVARBPROC pglProgramLocalParameter4dvARB=0;
PFNGLPROGRAMLOCALPARAMETER4FARBPROC pglProgramLocalParameter4fARB=0;
PFNGLPROGRAMLOCALPARAMETER4FVARBPROC pglProgramLocalParameter4fvARB=0;
PFNGLGETPROGRAMENVPARAMETERDVARBPROC pglGetProgramEnvParameterdvARB=0;
PFNGLGETPROGRAMENVPARAMETERFVARBPROC pglGetProgramEnvParameterfvARB=0;
PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC pglGetProgramLocalParameterdvARB=0;
PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC pglGetProgramLocalParameterfvARB=0;
PFNGLGETPROGRAMIVARBPROC pglGetProgramivARB=0;
PFNGLGETPROGRAMSTRINGARBPROC pglGetProgramStringARB=0;
PFNGLGETVERTEXATTRIBDVARBPROC pglGetVertexAttribdvARB=0;
PFNGLGETVERTEXATTRIBFVARBPROC pglGetVertexAttribfvARB=0;
PFNGLGETVERTEXATTRIBIVARBPROC pglGetVertexAttribivARB=0;
PFNGLGETVERTEXATTRIBPOINTERVARBPROC pglGetVertexAttribPointervARB=0;
PFNGLISPROGRAMARBPROC pglIsProgramARB=0;
#endif 

//GL_ARB_fragment_program

#ifdef __GLEE_GL_ARB_fragment_program
#endif 

//GL_ARB_vertex_buffer_object

#ifdef __GLEE_GL_ARB_vertex_buffer_object
PFNGLBINDBUFFERARBPROC pglBindBufferARB=0;
PFNGLDELETEBUFFERSARBPROC pglDeleteBuffersARB=0;
PFNGLGENBUFFERSARBPROC pglGenBuffersARB=0;
PFNGLISBUFFERARBPROC pglIsBufferARB=0;
PFNGLBUFFERDATAARBPROC pglBufferDataARB=0;
PFNGLBUFFERSUBDATAARBPROC pglBufferSubDataARB=0;
PFNGLGETBUFFERSUBDATAARBPROC pglGetBufferSubDataARB=0;
PFNGLMAPBUFFERARBPROC pglMapBufferARB=0;
PFNGLUNMAPBUFFERARBPROC pglUnmapBufferARB=0;
PFNGLGETBUFFERPARAMETERIVARBPROC pglGetBufferParameterivARB=0;
PFNGLGETBUFFERPOINTERVARBPROC pglGetBufferPointervARB=0;
#endif 

//GL_ARB_occlusion_query

#ifdef __GLEE_GL_ARB_occlusion_query
PFNGLGENQUERIESARBPROC pglGenQueriesARB=0;
PFNGLDELETEQUERIESARBPROC pglDeleteQueriesARB=0;
PFNGLISQUERYARBPROC pglIsQueryARB=0;
PFNGLBEGINQUERYARBPROC pglBeginQueryARB=0;
PFNGLENDQUERYARBPROC pglEndQueryARB=0;
PFNGLGETQUERYIVARBPROC pglGetQueryivARB=0;
PFNGLGETQUERYOBJECTIVARBPROC pglGetQueryObjectivARB=0;
PFNGLGETQUERYOBJECTUIVARBPROC pglGetQueryObjectuivARB=0;
#endif 

//GL_ARB_shader_objects

#ifdef __GLEE_GL_ARB_shader_objects
PFNGLDELETEOBJECTARBPROC pglDeleteObjectARB=0;
PFNGLGETHANDLEARBPROC pglGetHandleARB=0;
PFNGLDETACHOBJECTARBPROC pglDetachObjectARB=0;
PFNGLCREATESHADEROBJECTARBPROC pglCreateShaderObjectARB=0;
PFNGLSHADERSOURCEARBPROC pglShaderSourceARB=0;
PFNGLCOMPILESHADERARBPROC pglCompileShaderARB=0;
PFNGLCREATEPROGRAMOBJECTARBPROC pglCreateProgramObjectARB=0;
PFNGLATTACHOBJECTARBPROC pglAttachObjectARB=0;
PFNGLLINKPROGRAMARBPROC pglLinkProgramARB=0;
PFNGLUSEPROGRAMOBJECTARBPROC pglUseProgramObjectARB=0;
PFNGLVALIDATEPROGRAMARBPROC pglValidateProgramARB=0;
PFNGLUNIFORM1FARBPROC pglUniform1fARB=0;
PFNGLUNIFORM2FARBPROC pglUniform2fARB=0;
PFNGLUNIFORM3FARBPROC pglUniform3fARB=0;
PFNGLUNIFORM4FARBPROC pglUniform4fARB=0;
PFNGLUNIFORM1IARBPROC pglUniform1iARB=0;
PFNGLUNIFORM2IARBPROC pglUniform2iARB=0;
PFNGLUNIFORM3IARBPROC pglUniform3iARB=0;
PFNGLUNIFORM4IARBPROC pglUniform4iARB=0;
PFNGLUNIFORM1FVARBPROC pglUniform1fvARB=0;
PFNGLUNIFORM2FVARBPROC pglUniform2fvARB=0;
PFNGLUNIFORM3FVARBPROC pglUniform3fvARB=0;
PFNGLUNIFORM4FVARBPROC pglUniform4fvARB=0;
PFNGLUNIFORM1IVARBPROC pglUniform1ivARB=0;
PFNGLUNIFORM2IVARBPROC pglUniform2ivARB=0;
PFNGLUNIFORM3IVARBPROC pglUniform3ivARB=0;
PFNGLUNIFORM4IVARBPROC pglUniform4ivARB=0;
PFNGLUNIFORMMATRIX2FVARBPROC pglUniformMatrix2fvARB=0;
PFNGLUNIFORMMATRIX3FVARBPROC pglUniformMatrix3fvARB=0;
PFNGLUNIFORMMATRIX4FVARBPROC pglUniformMatrix4fvARB=0;
PFNGLGETOBJECTPARAMETERFVARBPROC pglGetObjectParameterfvARB=0;
PFNGLGETOBJECTPARAMETERIVARBPROC pglGetObjectParameterivARB=0;
PFNGLGETINFOLOGARBPROC pglGetInfoLogARB=0;
PFNGLGETATTACHEDOBJECTSARBPROC pglGetAttachedObjectsARB=0;
PFNGLGETUNIFORMLOCATIONARBPROC pglGetUniformLocationARB=0;
PFNGLGETACTIVEUNIFORMARBPROC pglGetActiveUniformARB=0;
PFNGLGETUNIFORMFVARBPROC pglGetUniformfvARB=0;
PFNGLGETUNIFORMIVARBPROC pglGetUniformivARB=0;
PFNGLGETSHADERSOURCEARBPROC pglGetShaderSourceARB=0;
#endif 

//GL_ARB_vertex_shader

#ifdef __GLEE_GL_ARB_vertex_shader
PFNGLBINDATTRIBLOCATIONARBPROC pglBindAttribLocationARB=0;
PFNGLGETACTIVEATTRIBARBPROC pglGetActiveAttribARB=0;
PFNGLGETATTRIBLOCATIONARBPROC pglGetAttribLocationARB=0;
#endif 

//GL_ARB_fragment_shader

#ifdef __GLEE_GL_ARB_fragment_shader
#endif 

//GL_ARB_shading_language_100

#ifdef __GLEE_GL_ARB_shading_language_100
#endif 

//GL_ARB_texture_non_power_of_two

#ifdef __GLEE_GL_ARB_texture_non_power_of_two
#endif 

//GL_ARB_point_sprite

#ifdef __GLEE_GL_ARB_point_sprite
#endif 

//GL_EXT_abgr

#ifdef __GLEE_GL_EXT_abgr
#endif 

//GL_EXT_blend_color

#ifdef __GLEE_GL_EXT_blend_color
PFNGLBLENDCOLOREXTPROC pglBlendColorEXT=0;
#endif 

//GL_EXT_polygon_offset

#ifdef __GLEE_GL_EXT_polygon_offset
PFNGLPOLYGONOFFSETEXTPROC pglPolygonOffsetEXT=0;
#endif 

//GL_EXT_texture

#ifdef __GLEE_GL_EXT_texture
#endif 

//GL_EXT_texture3D

#ifdef __GLEE_GL_EXT_texture3D
PFNGLTEXIMAGE3DEXTPROC pglTexImage3DEXT=0;
PFNGLTEXSUBIMAGE3DEXTPROC pglTexSubImage3DEXT=0;
#endif 

//GL_SGIS_texture_filter4

#ifdef __GLEE_GL_SGIS_texture_filter4
PFNGLGETTEXFILTERFUNCSGISPROC pglGetTexFilterFuncSGIS=0;
PFNGLTEXFILTERFUNCSGISPROC pglTexFilterFuncSGIS=0;
#endif 

//GL_EXT_subtexture

#ifdef __GLEE_GL_EXT_subtexture
PFNGLTEXSUBIMAGE1DEXTPROC pglTexSubImage1DEXT=0;
PFNGLTEXSUBIMAGE2DEXTPROC pglTexSubImage2DEXT=0;
#endif 

//GL_EXT_copy_texture

#ifdef __GLEE_GL_EXT_copy_texture
PFNGLCOPYTEXIMAGE1DEXTPROC pglCopyTexImage1DEXT=0;
PFNGLCOPYTEXIMAGE2DEXTPROC pglCopyTexImage2DEXT=0;
PFNGLCOPYTEXSUBIMAGE1DEXTPROC pglCopyTexSubImage1DEXT=0;
PFNGLCOPYTEXSUBIMAGE2DEXTPROC pglCopyTexSubImage2DEXT=0;
PFNGLCOPYTEXSUBIMAGE3DEXTPROC pglCopyTexSubImage3DEXT=0;
#endif 

//GL_EXT_histogram

#ifdef __GLEE_GL_EXT_histogram
PFNGLGETHISTOGRAMEXTPROC pglGetHistogramEXT=0;
PFNGLGETHISTOGRAMPARAMETERFVEXTPROC pglGetHistogramParameterfvEXT=0;
PFNGLGETHISTOGRAMPARAMETERIVEXTPROC pglGetHistogramParameterivEXT=0;
PFNGLGETMINMAXEXTPROC pglGetMinmaxEXT=0;
PFNGLGETMINMAXPARAMETERFVEXTPROC pglGetMinmaxParameterfvEXT=0;
PFNGLGETMINMAXPARAMETERIVEXTPROC pglGetMinmaxParameterivEXT=0;
PFNGLHISTOGRAMEXTPROC pglHistogramEXT=0;
PFNGLMINMAXEXTPROC pglMinmaxEXT=0;
PFNGLRESETHISTOGRAMEXTPROC pglResetHistogramEXT=0;
PFNGLRESETMINMAXEXTPROC pglResetMinmaxEXT=0;
#endif 

//GL_EXT_convolution

#ifdef __GLEE_GL_EXT_convolution
PFNGLCONVOLUTIONFILTER1DEXTPROC pglConvolutionFilter1DEXT=0;
PFNGLCONVOLUTIONFILTER2DEXTPROC pglConvolutionFilter2DEXT=0;
PFNGLCONVOLUTIONPARAMETERFEXTPROC pglConvolutionParameterfEXT=0;
PFNGLCONVOLUTIONPARAMETERFVEXTPROC pglConvolutionParameterfvEXT=0;
PFNGLCONVOLUTIONPARAMETERIEXTPROC pglConvolutionParameteriEXT=0;
PFNGLCONVOLUTIONPARAMETERIVEXTPROC pglConvolutionParameterivEXT=0;
PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC pglCopyConvolutionFilter1DEXT=0;
PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC pglCopyConvolutionFilter2DEXT=0;
PFNGLGETCONVOLUTIONFILTEREXTPROC pglGetConvolutionFilterEXT=0;
PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC pglGetConvolutionParameterfvEXT=0;
PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC pglGetConvolutionParameterivEXT=0;
PFNGLGETSEPARABLEFILTEREXTPROC pglGetSeparableFilterEXT=0;
PFNGLSEPARABLEFILTER2DEXTPROC pglSeparableFilter2DEXT=0;
#endif 

//GL_SGI_color_matrix

#ifdef __GLEE_GL_SGI_color_matrix
#endif 

//GL_SGI_color_table

#ifdef __GLEE_GL_SGI_color_table
PFNGLCOLORTABLESGIPROC pglColorTableSGI=0;
PFNGLCOLORTABLEPARAMETERFVSGIPROC pglColorTableParameterfvSGI=0;
PFNGLCOLORTABLEPARAMETERIVSGIPROC pglColorTableParameterivSGI=0;
PFNGLCOPYCOLORTABLESGIPROC pglCopyColorTableSGI=0;
PFNGLGETCOLORTABLESGIPROC pglGetColorTableSGI=0;
PFNGLGETCOLORTABLEPARAMETERFVSGIPROC pglGetColorTableParameterfvSGI=0;
PFNGLGETCOLORTABLEPARAMETERIVSGIPROC pglGetColorTableParameterivSGI=0;
#endif 

//GL_SGIS_pixel_texture

#ifdef __GLEE_GL_SGIS_pixel_texture
PFNGLPIXELTEXGENPARAMETERISGISPROC pglPixelTexGenParameteriSGIS=0;
PFNGLPIXELTEXGENPARAMETERIVSGISPROC pglPixelTexGenParameterivSGIS=0;
PFNGLPIXELTEXGENPARAMETERFSGISPROC pglPixelTexGenParameterfSGIS=0;
PFNGLPIXELTEXGENPARAMETERFVSGISPROC pglPixelTexGenParameterfvSGIS=0;
PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC pglGetPixelTexGenParameterivSGIS=0;
PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC pglGetPixelTexGenParameterfvSGIS=0;
#endif 

//GL_SGIX_pixel_texture

#ifdef __GLEE_GL_SGIX_pixel_texture
PFNGLPIXELTEXGENSGIXPROC pglPixelTexGenSGIX=0;
#endif 

//GL_SGIS_texture4D

#ifdef __GLEE_GL_SGIS_texture4D
PFNGLTEXIMAGE4DSGISPROC pglTexImage4DSGIS=0;
PFNGLTEXSUBIMAGE4DSGISPROC pglTexSubImage4DSGIS=0;
#endif 

//GL_SGI_texture_color_table

#ifdef __GLEE_GL_SGI_texture_color_table
#endif 

//GL_EXT_cmyka

#ifdef __GLEE_GL_EXT_cmyka
#endif 

//GL_EXT_texture_object

#ifdef __GLEE_GL_EXT_texture_object
PFNGLARETEXTURESRESIDENTEXTPROC pglAreTexturesResidentEXT=0;
PFNGLBINDTEXTUREEXTPROC pglBindTextureEXT=0;
PFNGLDELETETEXTURESEXTPROC pglDeleteTexturesEXT=0;
PFNGLGENTEXTURESEXTPROC pglGenTexturesEXT=0;
PFNGLISTEXTUREEXTPROC pglIsTextureEXT=0;
PFNGLPRIORITIZETEXTURESEXTPROC pglPrioritizeTexturesEXT=0;
#endif 

//GL_SGIS_detail_texture

#ifdef __GLEE_GL_SGIS_detail_texture
PFNGLDETAILTEXFUNCSGISPROC pglDetailTexFuncSGIS=0;
PFNGLGETDETAILTEXFUNCSGISPROC pglGetDetailTexFuncSGIS=0;
#endif 

//GL_SGIS_sharpen_texture

#ifdef __GLEE_GL_SGIS_sharpen_texture
PFNGLSHARPENTEXFUNCSGISPROC pglSharpenTexFuncSGIS=0;
PFNGLGETSHARPENTEXFUNCSGISPROC pglGetSharpenTexFuncSGIS=0;
#endif 

//GL_EXT_packed_pixels

#ifdef __GLEE_GL_EXT_packed_pixels
#endif 

//GL_SGIS_texture_lod

#ifdef __GLEE_GL_SGIS_texture_lod
#endif 

//GL_SGIS_multisample

#ifdef __GLEE_GL_SGIS_multisample
PFNGLSAMPLEMASKSGISPROC pglSampleMaskSGIS=0;
PFNGLSAMPLEPATTERNSGISPROC pglSamplePatternSGIS=0;
#endif 

//GL_EXT_rescale_normal

#ifdef __GLEE_GL_EXT_rescale_normal
#endif 

//GL_EXT_vertex_array

#ifdef __GLEE_GL_EXT_vertex_array
PFNGLARRAYELEMENTEXTPROC pglArrayElementEXT=0;
PFNGLCOLORPOINTEREXTPROC pglColorPointerEXT=0;
PFNGLDRAWARRAYSEXTPROC pglDrawArraysEXT=0;
PFNGLEDGEFLAGPOINTEREXTPROC pglEdgeFlagPointerEXT=0;
PFNGLGETPOINTERVEXTPROC pglGetPointervEXT=0;
PFNGLINDEXPOINTEREXTPROC pglIndexPointerEXT=0;
PFNGLNORMALPOINTEREXTPROC pglNormalPointerEXT=0;
PFNGLTEXCOORDPOINTEREXTPROC pglTexCoordPointerEXT=0;
PFNGLVERTEXPOINTEREXTPROC pglVertexPointerEXT=0;
#endif 

//GL_EXT_misc_attribute

#ifdef __GLEE_GL_EXT_misc_attribute
#endif 

//GL_SGIS_generate_mipmap

#ifdef __GLEE_GL_SGIS_generate_mipmap
#endif 

//GL_SGIX_clipmap

#ifdef __GLEE_GL_SGIX_clipmap
#endif 

//GL_SGIX_shadow

#ifdef __GLEE_GL_SGIX_shadow
#endif 

//GL_SGIS_texture_edge_clamp

#ifdef __GLEE_GL_SGIS_texture_edge_clamp
#endif 

//GL_EXT_blend_minmax

#ifdef __GLEE_GL_EXT_blend_minmax
PFNGLBLENDEQUATIONEXTPROC pglBlendEquationEXT=0;
#endif 

//GL_EXT_blend_subtract

#ifdef __GLEE_GL_EXT_blend_subtract
#endif 

//GL_EXT_blend_logic_op

#ifdef __GLEE_GL_EXT_blend_logic_op
#endif 

//GL_SGIX_interlace

#ifdef __GLEE_GL_SGIX_interlace
#endif 

//GL_SGIX_pixel_tiles

#ifdef __GLEE_GL_SGIX_pixel_tiles
#endif 

//GL_SGIS_texture_select

#ifdef __GLEE_GL_SGIS_texture_select
#endif 

//GL_SGIX_sprite

#ifdef __GLEE_GL_SGIX_sprite
PFNGLSPRITEPARAMETERFSGIXPROC pglSpriteParameterfSGIX=0;
PFNGLSPRITEPARAMETERFVSGIXPROC pglSpriteParameterfvSGIX=0;
PFNGLSPRITEPARAMETERISGIXPROC pglSpriteParameteriSGIX=0;
PFNGLSPRITEPARAMETERIVSGIXPROC pglSpriteParameterivSGIX=0;
#endif 

//GL_SGIX_texture_multi_buffer

#ifdef __GLEE_GL_SGIX_texture_multi_buffer
#endif 

//GL_EXT_point_parameters

#ifdef __GLEE_GL_EXT_point_parameters
PFNGLPOINTPARAMETERFEXTPROC pglPointParameterfEXT=0;
PFNGLPOINTPARAMETERFVEXTPROC pglPointParameterfvEXT=0;
#endif 

//GL_SGIS_point_parameters

#ifdef __GLEE_GL_SGIS_point_parameters
PFNGLPOINTPARAMETERFSGISPROC pglPointParameterfSGIS=0;
PFNGLPOINTPARAMETERFVSGISPROC pglPointParameterfvSGIS=0;
#endif 

//GL_SGIX_instruments

#ifdef __GLEE_GL_SGIX_instruments
PFNGLGETINSTRUMENTSSGIXPROC pglGetInstrumentsSGIX=0;
PFNGLINSTRUMENTSBUFFERSGIXPROC pglInstrumentsBufferSGIX=0;
PFNGLPOLLINSTRUMENTSSGIXPROC pglPollInstrumentsSGIX=0;
PFNGLREADINSTRUMENTSSGIXPROC pglReadInstrumentsSGIX=0;
PFNGLSTARTINSTRUMENTSSGIXPROC pglStartInstrumentsSGIX=0;
PFNGLSTOPINSTRUMENTSSGIXPROC pglStopInstrumentsSGIX=0;
#endif 

//GL_SGIX_texture_scale_bias

#ifdef __GLEE_GL_SGIX_texture_scale_bias
#endif 

//GL_SGIX_framezoom

#ifdef __GLEE_GL_SGIX_framezoom
PFNGLFRAMEZOOMSGIXPROC pglFrameZoomSGIX=0;
#endif 

//GL_SGIX_tag_sample_buffer

#ifdef __GLEE_GL_SGIX_tag_sample_buffer
PFNGLTAGSAMPLEBUFFERSGIXPROC pglTagSampleBufferSGIX=0;
#endif 

//GL_FfdMaskSGIX

#ifdef __GLEE_GL_FfdMaskSGIX
#endif 

//GL_SGIX_polynomial_ffd

#ifdef __GLEE_GL_SGIX_polynomial_ffd
PFNGLDEFORMATIONMAP3DSGIXPROC pglDeformationMap3dSGIX=0;
PFNGLDEFORMATIONMAP3FSGIXPROC pglDeformationMap3fSGIX=0;
PFNGLDEFORMSGIXPROC pglDeformSGIX=0;
PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC pglLoadIdentityDeformationMapSGIX=0;
#endif 

//GL_SGIX_reference_plane

#ifdef __GLEE_GL_SGIX_reference_plane
PFNGLREFERENCEPLANESGIXPROC pglReferencePlaneSGIX=0;
#endif 

//GL_SGIX_flush_raster

#ifdef __GLEE_GL_SGIX_flush_raster
PFNGLFLUSHRASTERSGIXPROC pglFlushRasterSGIX=0;
#endif 

//GL_SGIX_depth_texture

#ifdef __GLEE_GL_SGIX_depth_texture
#endif 

//GL_SGIS_fog_function

#ifdef __GLEE_GL_SGIS_fog_function
PFNGLFOGFUNCSGISPROC pglFogFuncSGIS=0;
PFNGLGETFOGFUNCSGISPROC pglGetFogFuncSGIS=0;
#endif 

//GL_SGIX_fog_offset

#ifdef __GLEE_GL_SGIX_fog_offset
#endif 

//GL_HP_image_transform

#ifdef __GLEE_GL_HP_image_transform
PFNGLIMAGETRANSFORMPARAMETERIHPPROC pglImageTransformParameteriHP=0;
PFNGLIMAGETRANSFORMPARAMETERFHPPROC pglImageTransformParameterfHP=0;
PFNGLIMAGETRANSFORMPARAMETERIVHPPROC pglImageTransformParameterivHP=0;
PFNGLIMAGETRANSFORMPARAMETERFVHPPROC pglImageTransformParameterfvHP=0;
PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC pglGetImageTransformParameterivHP=0;
PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC pglGetImageTransformParameterfvHP=0;
#endif 

//GL_HP_convolution_border_modes

#ifdef __GLEE_GL_HP_convolution_border_modes
#endif 

//GL_INGR_palette_buffer

#ifdef __GLEE_GL_INGR_palette_buffer
#endif 

//GL_SGIX_texture_add_env

#ifdef __GLEE_GL_SGIX_texture_add_env
#endif 

//GL_EXT_color_subtable

#ifdef __GLEE_GL_EXT_color_subtable
PFNGLCOLORSUBTABLEEXTPROC pglColorSubTableEXT=0;
PFNGLCOPYCOLORSUBTABLEEXTPROC pglCopyColorSubTableEXT=0;
#endif 

//GL_PGI_vertex_hints

#ifdef __GLEE_GL_PGI_vertex_hints
#endif 

//GL_PGI_misc_hints

#ifdef __GLEE_GL_PGI_misc_hints
PFNGLHINTPGIPROC pglHintPGI=0;
#endif 

//GL_EXT_paletted_texture

#ifdef __GLEE_GL_EXT_paletted_texture
PFNGLCOLORTABLEEXTPROC pglColorTableEXT=0;
PFNGLGETCOLORTABLEEXTPROC pglGetColorTableEXT=0;
PFNGLGETCOLORTABLEPARAMETERIVEXTPROC pglGetColorTableParameterivEXT=0;
PFNGLGETCOLORTABLEPARAMETERFVEXTPROC pglGetColorTableParameterfvEXT=0;
#endif 

//GL_EXT_clip_volume_hint

#ifdef __GLEE_GL_EXT_clip_volume_hint
#endif 

//GL_SGIX_list_priority

#ifdef __GLEE_GL_SGIX_list_priority
PFNGLGETLISTPARAMETERFVSGIXPROC pglGetListParameterfvSGIX=0;
PFNGLGETLISTPARAMETERIVSGIXPROC pglGetListParameterivSGIX=0;
PFNGLLISTPARAMETERFSGIXPROC pglListParameterfSGIX=0;
PFNGLLISTPARAMETERFVSGIXPROC pglListParameterfvSGIX=0;
PFNGLLISTPARAMETERISGIXPROC pglListParameteriSGIX=0;
PFNGLLISTPARAMETERIVSGIXPROC pglListParameterivSGIX=0;
#endif 

//GL_SGIX_ir_instrument1

#ifdef __GLEE_GL_SGIX_ir_instrument1
#endif 

//GL_SGIX_calligraphic_fragment

#ifdef __GLEE_GL_SGIX_calligraphic_fragment
#endif 

//GL_SGIX_texture_lod_bias

#ifdef __GLEE_GL_SGIX_texture_lod_bias
#endif 

//GL_SGIX_shadow_ambient

#ifdef __GLEE_GL_SGIX_shadow_ambient
#endif 

//GL_EXT_index_texture

#ifdef __GLEE_GL_EXT_index_texture
#endif 

//GL_EXT_index_material

#ifdef __GLEE_GL_EXT_index_material
PFNGLINDEXMATERIALEXTPROC pglIndexMaterialEXT=0;
#endif 

//GL_EXT_index_func

#ifdef __GLEE_GL_EXT_index_func
PFNGLINDEXFUNCEXTPROC pglIndexFuncEXT=0;
#endif 

//GL_EXT_index_array_formats

#ifdef __GLEE_GL_EXT_index_array_formats
#endif 

//GL_EXT_compiled_vertex_array

#ifdef __GLEE_GL_EXT_compiled_vertex_array
PFNGLLOCKARRAYSEXTPROC pglLockArraysEXT=0;
PFNGLUNLOCKARRAYSEXTPROC pglUnlockArraysEXT=0;
#endif 

//GL_EXT_cull_vertex

#ifdef __GLEE_GL_EXT_cull_vertex
PFNGLCULLPARAMETERDVEXTPROC pglCullParameterdvEXT=0;
PFNGLCULLPARAMETERFVEXTPROC pglCullParameterfvEXT=0;
#endif 

//GL_SGIX_ycrcb

#ifdef __GLEE_GL_SGIX_ycrcb
#endif 

//GL_SGIX_fragment_lighting

#ifdef __GLEE_GL_SGIX_fragment_lighting
PFNGLFRAGMENTCOLORMATERIALSGIXPROC pglFragmentColorMaterialSGIX=0;
PFNGLFRAGMENTLIGHTFSGIXPROC pglFragmentLightfSGIX=0;
PFNGLFRAGMENTLIGHTFVSGIXPROC pglFragmentLightfvSGIX=0;
PFNGLFRAGMENTLIGHTISGIXPROC pglFragmentLightiSGIX=0;
PFNGLFRAGMENTLIGHTIVSGIXPROC pglFragmentLightivSGIX=0;
PFNGLFRAGMENTLIGHTMODELFSGIXPROC pglFragmentLightModelfSGIX=0;
PFNGLFRAGMENTLIGHTMODELFVSGIXPROC pglFragmentLightModelfvSGIX=0;
PFNGLFRAGMENTLIGHTMODELISGIXPROC pglFragmentLightModeliSGIX=0;
PFNGLFRAGMENTLIGHTMODELIVSGIXPROC pglFragmentLightModelivSGIX=0;
PFNGLFRAGMENTMATERIALFSGIXPROC pglFragmentMaterialfSGIX=0;
PFNGLFRAGMENTMATERIALFVSGIXPROC pglFragmentMaterialfvSGIX=0;
PFNGLFRAGMENTMATERIALISGIXPROC pglFragmentMaterialiSGIX=0;
PFNGLFRAGMENTMATERIALIVSGIXPROC pglFragmentMaterialivSGIX=0;
PFNGLGETFRAGMENTLIGHTFVSGIXPROC pglGetFragmentLightfvSGIX=0;
PFNGLGETFRAGMENTLIGHTIVSGIXPROC pglGetFragmentLightivSGIX=0;
PFNGLGETFRAGMENTMATERIALFVSGIXPROC pglGetFragmentMaterialfvSGIX=0;
PFNGLGETFRAGMENTMATERIALIVSGIXPROC pglGetFragmentMaterialivSGIX=0;
PFNGLLIGHTENVISGIXPROC pglLightEnviSGIX=0;
#endif 

//GL_IBM_rasterpos_clip

#ifdef __GLEE_GL_IBM_rasterpos_clip
#endif 

//GL_HP_texture_lighting

#ifdef __GLEE_GL_HP_texture_lighting
#endif 

//GL_EXT_draw_range_elements

#ifdef __GLEE_GL_EXT_draw_range_elements
PFNGLDRAWRANGEELEMENTSEXTPROC pglDrawRangeElementsEXT=0;
#endif 

//GL_WIN_phong_shading

#ifdef __GLEE_GL_WIN_phong_shading
#endif 

//GL_WIN_specular_fog

#ifdef __GLEE_GL_WIN_specular_fog
#endif 

//GL_EXT_light_texture

#ifdef __GLEE_GL_EXT_light_texture
PFNGLAPPLYTEXTUREEXTPROC pglApplyTextureEXT=0;
PFNGLTEXTURELIGHTEXTPROC pglTextureLightEXT=0;
PFNGLTEXTUREMATERIALEXTPROC pglTextureMaterialEXT=0;
#endif 

//GL_SGIX_blend_alpha_minmax

#ifdef __GLEE_GL_SGIX_blend_alpha_minmax
#endif 

//GL_SGIX_impact_pixel_texture

#ifdef __GLEE_GL_SGIX_impact_pixel_texture
#endif 

//GL_EXT_bgra

#ifdef __GLEE_GL_EXT_bgra
#endif 

//GL_SGIX_async

#ifdef __GLEE_GL_SGIX_async
PFNGLASYNCMARKERSGIXPROC pglAsyncMarkerSGIX=0;
PFNGLFINISHASYNCSGIXPROC pglFinishAsyncSGIX=0;
PFNGLPOLLASYNCSGIXPROC pglPollAsyncSGIX=0;
PFNGLGENASYNCMARKERSSGIXPROC pglGenAsyncMarkersSGIX=0;
PFNGLDELETEASYNCMARKERSSGIXPROC pglDeleteAsyncMarkersSGIX=0;
PFNGLISASYNCMARKERSGIXPROC pglIsAsyncMarkerSGIX=0;
#endif 

//GL_SGIX_async_pixel

#ifdef __GLEE_GL_SGIX_async_pixel
#endif 

//GL_SGIX_async_histogram

#ifdef __GLEE_GL_SGIX_async_histogram
#endif 

//GL_INTEL_texture_scissor

#ifdef __GLEE_GL_INTEL_texture_scissor
#endif 

//GL_INTEL_parallel_arrays

#ifdef __GLEE_GL_INTEL_parallel_arrays
PFNGLVERTEXPOINTERVINTELPROC pglVertexPointervINTEL=0;
PFNGLNORMALPOINTERVINTELPROC pglNormalPointervINTEL=0;
PFNGLCOLORPOINTERVINTELPROC pglColorPointervINTEL=0;
PFNGLTEXCOORDPOINTERVINTELPROC pglTexCoordPointervINTEL=0;
#endif 

//GL_HP_occlusion_test

#ifdef __GLEE_GL_HP_occlusion_test
#endif 

//GL_EXT_pixel_transform

#ifdef __GLEE_GL_EXT_pixel_transform
PFNGLPIXELTRANSFORMPARAMETERIEXTPROC pglPixelTransformParameteriEXT=0;
PFNGLPIXELTRANSFORMPARAMETERFEXTPROC pglPixelTransformParameterfEXT=0;
PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC pglPixelTransformParameterivEXT=0;
PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC pglPixelTransformParameterfvEXT=0;
#endif 

//GL_EXT_pixel_transform_color_table

#ifdef __GLEE_GL_EXT_pixel_transform_color_table
#endif 

//GL_EXT_shared_texture_palette

#ifdef __GLEE_GL_EXT_shared_texture_palette
#endif 

//GL_EXT_separate_specular_color

#ifdef __GLEE_GL_EXT_separate_specular_color
#endif 

//GL_EXT_secondary_color

#ifdef __GLEE_GL_EXT_secondary_color
PFNGLSECONDARYCOLOR3BEXTPROC pglSecondaryColor3bEXT=0;
PFNGLSECONDARYCOLOR3BVEXTPROC pglSecondaryColor3bvEXT=0;
PFNGLSECONDARYCOLOR3DEXTPROC pglSecondaryColor3dEXT=0;
PFNGLSECONDARYCOLOR3DVEXTPROC pglSecondaryColor3dvEXT=0;
PFNGLSECONDARYCOLOR3FEXTPROC pglSecondaryColor3fEXT=0;
PFNGLSECONDARYCOLOR3FVEXTPROC pglSecondaryColor3fvEXT=0;
PFNGLSECONDARYCOLOR3IEXTPROC pglSecondaryColor3iEXT=0;
PFNGLSECONDARYCOLOR3IVEXTPROC pglSecondaryColor3ivEXT=0;
PFNGLSECONDARYCOLOR3SEXTPROC pglSecondaryColor3sEXT=0;
PFNGLSECONDARYCOLOR3SVEXTPROC pglSecondaryColor3svEXT=0;
PFNGLSECONDARYCOLOR3UBEXTPROC pglSecondaryColor3ubEXT=0;
PFNGLSECONDARYCOLOR3UBVEXTPROC pglSecondaryColor3ubvEXT=0;
PFNGLSECONDARYCOLOR3UIEXTPROC pglSecondaryColor3uiEXT=0;
PFNGLSECONDARYCOLOR3UIVEXTPROC pglSecondaryColor3uivEXT=0;
PFNGLSECONDARYCOLOR3USEXTPROC pglSecondaryColor3usEXT=0;
PFNGLSECONDARYCOLOR3USVEXTPROC pglSecondaryColor3usvEXT=0;
PFNGLSECONDARYCOLORPOINTEREXTPROC pglSecondaryColorPointerEXT=0;
#endif 

//GL_EXT_texture_perturb_normal

#ifdef __GLEE_GL_EXT_texture_perturb_normal
PFNGLTEXTURENORMALEXTPROC pglTextureNormalEXT=0;
#endif 

//GL_EXT_multi_draw_arrays

#ifdef __GLEE_GL_EXT_multi_draw_arrays
PFNGLMULTIDRAWARRAYSEXTPROC pglMultiDrawArraysEXT=0;
PFNGLMULTIDRAWELEMENTSEXTPROC pglMultiDrawElementsEXT=0;
#endif 

//GL_EXT_fog_coord

#ifdef __GLEE_GL_EXT_fog_coord
PFNGLFOGCOORDFEXTPROC pglFogCoordfEXT=0;
PFNGLFOGCOORDFVEXTPROC pglFogCoordfvEXT=0;
PFNGLFOGCOORDDEXTPROC pglFogCoorddEXT=0;
PFNGLFOGCOORDDVEXTPROC pglFogCoorddvEXT=0;
PFNGLFOGCOORDPOINTEREXTPROC pglFogCoordPointerEXT=0;
#endif 

//GL_REND_screen_coordinates

#ifdef __GLEE_GL_REND_screen_coordinates
#endif 

//GL_EXT_coordinate_frame

#ifdef __GLEE_GL_EXT_coordinate_frame
PFNGLTANGENT3BEXTPROC pglTangent3bEXT=0;
PFNGLTANGENT3BVEXTPROC pglTangent3bvEXT=0;
PFNGLTANGENT3DEXTPROC pglTangent3dEXT=0;
PFNGLTANGENT3DVEXTPROC pglTangent3dvEXT=0;
PFNGLTANGENT3FEXTPROC pglTangent3fEXT=0;
PFNGLTANGENT3FVEXTPROC pglTangent3fvEXT=0;
PFNGLTANGENT3IEXTPROC pglTangent3iEXT=0;
PFNGLTANGENT3IVEXTPROC pglTangent3ivEXT=0;
PFNGLTANGENT3SEXTPROC pglTangent3sEXT=0;
PFNGLTANGENT3SVEXTPROC pglTangent3svEXT=0;
PFNGLBINORMAL3BEXTPROC pglBinormal3bEXT=0;
PFNGLBINORMAL3BVEXTPROC pglBinormal3bvEXT=0;
PFNGLBINORMAL3DEXTPROC pglBinormal3dEXT=0;
PFNGLBINORMAL3DVEXTPROC pglBinormal3dvEXT=0;
PFNGLBINORMAL3FEXTPROC pglBinormal3fEXT=0;
PFNGLBINORMAL3FVEXTPROC pglBinormal3fvEXT=0;
PFNGLBINORMAL3IEXTPROC pglBinormal3iEXT=0;
PFNGLBINORMAL3IVEXTPROC pglBinormal3ivEXT=0;
PFNGLBINORMAL3SEXTPROC pglBinormal3sEXT=0;
PFNGLBINORMAL3SVEXTPROC pglBinormal3svEXT=0;
PFNGLTANGENTPOINTEREXTPROC pglTangentPointerEXT=0;
PFNGLBINORMALPOINTEREXTPROC pglBinormalPointerEXT=0;
#endif 

//GL_EXT_texture_env_combine

#ifdef __GLEE_GL_EXT_texture_env_combine
#endif 

//GL_APPLE_specular_vector

#ifdef __GLEE_GL_APPLE_specular_vector
#endif 

//GL_APPLE_transform_hint

#ifdef __GLEE_GL_APPLE_transform_hint
#endif 

//GL_SGIX_fog_scale

#ifdef __GLEE_GL_SGIX_fog_scale
#endif 

//GL_SUNX_constant_data

#ifdef __GLEE_GL_SUNX_constant_data
PFNGLFINISHTEXTURESUNXPROC pglFinishTextureSUNX=0;
#endif 

//GL_SUN_global_alpha

#ifdef __GLEE_GL_SUN_global_alpha
PFNGLGLOBALALPHAFACTORBSUNPROC pglGlobalAlphaFactorbSUN=0;
PFNGLGLOBALALPHAFACTORSSUNPROC pglGlobalAlphaFactorsSUN=0;
PFNGLGLOBALALPHAFACTORISUNPROC pglGlobalAlphaFactoriSUN=0;
PFNGLGLOBALALPHAFACTORFSUNPROC pglGlobalAlphaFactorfSUN=0;
PFNGLGLOBALALPHAFACTORDSUNPROC pglGlobalAlphaFactordSUN=0;
PFNGLGLOBALALPHAFACTORUBSUNPROC pglGlobalAlphaFactorubSUN=0;
PFNGLGLOBALALPHAFACTORUSSUNPROC pglGlobalAlphaFactorusSUN=0;
PFNGLGLOBALALPHAFACTORUISUNPROC pglGlobalAlphaFactoruiSUN=0;
#endif 

//GL_SUN_triangle_list

#ifdef __GLEE_GL_SUN_triangle_list
PFNGLREPLACEMENTCODEUISUNPROC pglReplacementCodeuiSUN=0;
PFNGLREPLACEMENTCODEUSSUNPROC pglReplacementCodeusSUN=0;
PFNGLREPLACEMENTCODEUBSUNPROC pglReplacementCodeubSUN=0;
PFNGLREPLACEMENTCODEUIVSUNPROC pglReplacementCodeuivSUN=0;
PFNGLREPLACEMENTCODEUSVSUNPROC pglReplacementCodeusvSUN=0;
PFNGLREPLACEMENTCODEUBVSUNPROC pglReplacementCodeubvSUN=0;
PFNGLREPLACEMENTCODEPOINTERSUNPROC pglReplacementCodePointerSUN=0;
#endif 

//GL_SUN_vertex

#ifdef __GLEE_GL_SUN_vertex
PFNGLCOLOR4UBVERTEX2FSUNPROC pglColor4ubVertex2fSUN=0;
PFNGLCOLOR4UBVERTEX2FVSUNPROC pglColor4ubVertex2fvSUN=0;
PFNGLCOLOR4UBVERTEX3FSUNPROC pglColor4ubVertex3fSUN=0;
PFNGLCOLOR4UBVERTEX3FVSUNPROC pglColor4ubVertex3fvSUN=0;
PFNGLCOLOR3FVERTEX3FSUNPROC pglColor3fVertex3fSUN=0;
PFNGLCOLOR3FVERTEX3FVSUNPROC pglColor3fVertex3fvSUN=0;
PFNGLNORMAL3FVERTEX3FSUNPROC pglNormal3fVertex3fSUN=0;
PFNGLNORMAL3FVERTEX3FVSUNPROC pglNormal3fVertex3fvSUN=0;
PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC pglColor4fNormal3fVertex3fSUN=0;
PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC pglColor4fNormal3fVertex3fvSUN=0;
PFNGLTEXCOORD2FVERTEX3FSUNPROC pglTexCoord2fVertex3fSUN=0;
PFNGLTEXCOORD2FVERTEX3FVSUNPROC pglTexCoord2fVertex3fvSUN=0;
PFNGLTEXCOORD4FVERTEX4FSUNPROC pglTexCoord4fVertex4fSUN=0;
PFNGLTEXCOORD4FVERTEX4FVSUNPROC pglTexCoord4fVertex4fvSUN=0;
PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC pglTexCoord2fColor4ubVertex3fSUN=0;
PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC pglTexCoord2fColor4ubVertex3fvSUN=0;
PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC pglTexCoord2fColor3fVertex3fSUN=0;
PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC pglTexCoord2fColor3fVertex3fvSUN=0;
PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC pglTexCoord2fNormal3fVertex3fSUN=0;
PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC pglTexCoord2fNormal3fVertex3fvSUN=0;
PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC pglTexCoord2fColor4fNormal3fVertex3fSUN=0;
PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC pglTexCoord2fColor4fNormal3fVertex3fvSUN=0;
PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC pglTexCoord4fColor4fNormal3fVertex4fSUN=0;
PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC pglTexCoord4fColor4fNormal3fVertex4fvSUN=0;
PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC pglReplacementCodeuiVertex3fSUN=0;
PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC pglReplacementCodeuiVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC pglReplacementCodeuiColor4ubVertex3fSUN=0;
PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC pglReplacementCodeuiColor4ubVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC pglReplacementCodeuiColor3fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC pglReplacementCodeuiColor3fVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC pglReplacementCodeuiNormal3fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC pglReplacementCodeuiNormal3fVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC pglReplacementCodeuiColor4fNormal3fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC pglReplacementCodeuiColor4fNormal3fVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC pglReplacementCodeuiTexCoord2fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC pglReplacementCodeuiTexCoord2fVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC pglReplacementCodeuiTexCoord2fNormal3fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC pglReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC pglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN=0;
PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC pglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN=0;
#endif 

//GL_EXT_blend_func_separate

#ifdef __GLEE_GL_EXT_blend_func_separate
PFNGLBLENDFUNCSEPARATEEXTPROC pglBlendFuncSeparateEXT=0;
#endif 

//GL_INGR_color_clamp

#ifdef __GLEE_GL_INGR_color_clamp
#endif 

//GL_INGR_interlace_read

#ifdef __GLEE_GL_INGR_interlace_read
#endif 

//GL_EXT_stencil_wrap

#ifdef __GLEE_GL_EXT_stencil_wrap
#endif 

//GL_EXT_422_pixels

#ifdef __GLEE_GL_EXT_422_pixels
#endif 

//GL_NV_texgen_reflection

#ifdef __GLEE_GL_NV_texgen_reflection
#endif 

//GL_EXT_texture_cube_map

#ifdef __GLEE_GL_EXT_texture_cube_map
#endif 

//GL_SUN_convolution_border_modes

#ifdef __GLEE_GL_SUN_convolution_border_modes
#endif 

//GL_EXT_texture_env_add

#ifdef __GLEE_GL_EXT_texture_env_add
#endif 

//GL_EXT_texture_lod_bias

#ifdef __GLEE_GL_EXT_texture_lod_bias
#endif 

//GL_EXT_texture_filter_anisotropic

#ifdef __GLEE_GL_EXT_texture_filter_anisotropic
#endif 

//GL_EXT_vertex_weighting

#ifdef __GLEE_GL_EXT_vertex_weighting
PFNGLVERTEXWEIGHTFEXTPROC pglVertexWeightfEXT=0;
PFNGLVERTEXWEIGHTFVEXTPROC pglVertexWeightfvEXT=0;
PFNGLVERTEXWEIGHTPOINTEREXTPROC pglVertexWeightPointerEXT=0;
#endif 

//GL_NV_light_max_exponent

#ifdef __GLEE_GL_NV_light_max_exponent
#endif 

//GL_NV_vertex_array_range

#ifdef __GLEE_GL_NV_vertex_array_range
PFNGLFLUSHVERTEXARRAYRANGENVPROC pglFlushVertexArrayRangeNV=0;
PFNGLVERTEXARRAYRANGENVPROC pglVertexArrayRangeNV=0;
#endif 

//GL_NV_register_combiners

#ifdef __GLEE_GL_NV_register_combiners
PFNGLCOMBINERPARAMETERFVNVPROC pglCombinerParameterfvNV=0;
PFNGLCOMBINERPARAMETERFNVPROC pglCombinerParameterfNV=0;
PFNGLCOMBINERPARAMETERIVNVPROC pglCombinerParameterivNV=0;
PFNGLCOMBINERPARAMETERINVPROC pglCombinerParameteriNV=0;
PFNGLCOMBINERINPUTNVPROC pglCombinerInputNV=0;
PFNGLCOMBINEROUTPUTNVPROC pglCombinerOutputNV=0;
PFNGLFINALCOMBINERINPUTNVPROC pglFinalCombinerInputNV=0;
PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC pglGetCombinerInputParameterfvNV=0;
PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC pglGetCombinerInputParameterivNV=0;
PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC pglGetCombinerOutputParameterfvNV=0;
PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC pglGetCombinerOutputParameterivNV=0;
PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC pglGetFinalCombinerInputParameterfvNV=0;
PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC pglGetFinalCombinerInputParameterivNV=0;
#endif 

//GL_NV_fog_distance

#ifdef __GLEE_GL_NV_fog_distance
#endif 

//GL_NV_texgen_emboss

#ifdef __GLEE_GL_NV_texgen_emboss
#endif 

//GL_NV_blend_square

#ifdef __GLEE_GL_NV_blend_square
#endif 

//GL_NV_texture_env_combine4

#ifdef __GLEE_GL_NV_texture_env_combine4
#endif 

//GL_MESA_resize_buffers

#ifdef __GLEE_GL_MESA_resize_buffers
PFNGLRESIZEBUFFERSMESAPROC pglResizeBuffersMESA=0;
#endif 

//GL_MESA_window_pos

#ifdef __GLEE_GL_MESA_window_pos
PFNGLWINDOWPOS2DMESAPROC pglWindowPos2dMESA=0;
PFNGLWINDOWPOS2DVMESAPROC pglWindowPos2dvMESA=0;
PFNGLWINDOWPOS2FMESAPROC pglWindowPos2fMESA=0;
PFNGLWINDOWPOS2FVMESAPROC pglWindowPos2fvMESA=0;
PFNGLWINDOWPOS2IMESAPROC pglWindowPos2iMESA=0;
PFNGLWINDOWPOS2IVMESAPROC pglWindowPos2ivMESA=0;
PFNGLWINDOWPOS2SMESAPROC pglWindowPos2sMESA=0;
PFNGLWINDOWPOS2SVMESAPROC pglWindowPos2svMESA=0;
PFNGLWINDOWPOS3DMESAPROC pglWindowPos3dMESA=0;
PFNGLWINDOWPOS3DVMESAPROC pglWindowPos3dvMESA=0;
PFNGLWINDOWPOS3FMESAPROC pglWindowPos3fMESA=0;
PFNGLWINDOWPOS3FVMESAPROC pglWindowPos3fvMESA=0;
PFNGLWINDOWPOS3IMESAPROC pglWindowPos3iMESA=0;
PFNGLWINDOWPOS3IVMESAPROC pglWindowPos3ivMESA=0;
PFNGLWINDOWPOS3SMESAPROC pglWindowPos3sMESA=0;
PFNGLWINDOWPOS3SVMESAPROC pglWindowPos3svMESA=0;
PFNGLWINDOWPOS4DMESAPROC pglWindowPos4dMESA=0;
PFNGLWINDOWPOS4DVMESAPROC pglWindowPos4dvMESA=0;
PFNGLWINDOWPOS4FMESAPROC pglWindowPos4fMESA=0;
PFNGLWINDOWPOS4FVMESAPROC pglWindowPos4fvMESA=0;
PFNGLWINDOWPOS4IMESAPROC pglWindowPos4iMESA=0;
PFNGLWINDOWPOS4IVMESAPROC pglWindowPos4ivMESA=0;
PFNGLWINDOWPOS4SMESAPROC pglWindowPos4sMESA=0;
PFNGLWINDOWPOS4SVMESAPROC pglWindowPos4svMESA=0;
#endif 

//GL_EXT_texture_compression_s3tc

#ifdef __GLEE_GL_EXT_texture_compression_s3tc
#endif 

//GL_IBM_cull_vertex

#ifdef __GLEE_GL_IBM_cull_vertex
#endif 

//GL_IBM_multimode_draw_arrays

#ifdef __GLEE_GL_IBM_multimode_draw_arrays
PFNGLMULTIMODEDRAWARRAYSIBMPROC pglMultiModeDrawArraysIBM=0;
PFNGLMULTIMODEDRAWELEMENTSIBMPROC pglMultiModeDrawElementsIBM=0;
#endif 

//GL_IBM_vertex_array_lists

#ifdef __GLEE_GL_IBM_vertex_array_lists
PFNGLCOLORPOINTERLISTIBMPROC pglColorPointerListIBM=0;
PFNGLSECONDARYCOLORPOINTERLISTIBMPROC pglSecondaryColorPointerListIBM=0;
PFNGLEDGEFLAGPOINTERLISTIBMPROC pglEdgeFlagPointerListIBM=0;
PFNGLFOGCOORDPOINTERLISTIBMPROC pglFogCoordPointerListIBM=0;
PFNGLINDEXPOINTERLISTIBMPROC pglIndexPointerListIBM=0;
PFNGLNORMALPOINTERLISTIBMPROC pglNormalPointerListIBM=0;
PFNGLTEXCOORDPOINTERLISTIBMPROC pglTexCoordPointerListIBM=0;
PFNGLVERTEXPOINTERLISTIBMPROC pglVertexPointerListIBM=0;
#endif 

//GL_SGIX_subsample

#ifdef __GLEE_GL_SGIX_subsample
#endif 

//GL_SGIX_ycrcb_subsample

#ifdef __GLEE_GL_SGIX_ycrcb_subsample
#endif 

//GL_SGIX_ycrcba

#ifdef __GLEE_GL_SGIX_ycrcba
#endif 

//GL_SGI_depth_pass_instrument

#ifdef __GLEE_GL_SGI_depth_pass_instrument
#endif 

//GL_3DFX_texture_compression_FXT1

#ifdef __GLEE_GL_3DFX_texture_compression_FXT1
#endif 

//GL_3DFX_multisample

#ifdef __GLEE_GL_3DFX_multisample
#endif 

//GL_3DFX_tbuffer

#ifdef __GLEE_GL_3DFX_tbuffer
PFNGLTBUFFERMASK3DFXPROC pglTbufferMask3DFX=0;
#endif 

//GL_EXT_multisample

#ifdef __GLEE_GL_EXT_multisample
PFNGLSAMPLEMASKEXTPROC pglSampleMaskEXT=0;
PFNGLSAMPLEPATTERNEXTPROC pglSamplePatternEXT=0;
#endif 

//GL_SGIX_vertex_preclip

#ifdef __GLEE_GL_SGIX_vertex_preclip
#endif 

//GL_SGIX_convolution_accuracy

#ifdef __GLEE_GL_SGIX_convolution_accuracy
#endif 

//GL_SGIX_resample

#ifdef __GLEE_GL_SGIX_resample
#endif 

//GL_SGIS_point_line_texgen

#ifdef __GLEE_GL_SGIS_point_line_texgen
#endif 

//GL_SGIS_texture_color_mask

#ifdef __GLEE_GL_SGIS_texture_color_mask
PFNGLTEXTURECOLORMASKSGISPROC pglTextureColorMaskSGIS=0;
#endif 

//GL_EXT_texture_env_dot3

#ifdef __GLEE_GL_EXT_texture_env_dot3
#endif 

//GL_ATI_texture_mirror_once

#ifdef __GLEE_GL_ATI_texture_mirror_once
#endif 

//GL_NV_fence

#ifdef __GLEE_GL_NV_fence
PFNGLDELETEFENCESNVPROC pglDeleteFencesNV=0;
PFNGLGENFENCESNVPROC pglGenFencesNV=0;
PFNGLISFENCENVPROC pglIsFenceNV=0;
PFNGLTESTFENCENVPROC pglTestFenceNV=0;
PFNGLGETFENCEIVNVPROC pglGetFenceivNV=0;
PFNGLFINISHFENCENVPROC pglFinishFenceNV=0;
PFNGLSETFENCENVPROC pglSetFenceNV=0;
#endif 

//GL_IBM_texture_mirrored_repeat

#ifdef __GLEE_GL_IBM_texture_mirrored_repeat
#endif 

//GL_NV_evaluators

#ifdef __GLEE_GL_NV_evaluators
PFNGLMAPCONTROLPOINTSNVPROC pglMapControlPointsNV=0;
PFNGLMAPPARAMETERIVNVPROC pglMapParameterivNV=0;
PFNGLMAPPARAMETERFVNVPROC pglMapParameterfvNV=0;
PFNGLGETMAPCONTROLPOINTSNVPROC pglGetMapControlPointsNV=0;
PFNGLGETMAPPARAMETERIVNVPROC pglGetMapParameterivNV=0;
PFNGLGETMAPPARAMETERFVNVPROC pglGetMapParameterfvNV=0;
PFNGLGETMAPATTRIBPARAMETERIVNVPROC pglGetMapAttribParameterivNV=0;
PFNGLGETMAPATTRIBPARAMETERFVNVPROC pglGetMapAttribParameterfvNV=0;
PFNGLEVALMAPSNVPROC pglEvalMapsNV=0;
#endif 

//GL_NV_packed_depth_stencil

#ifdef __GLEE_GL_NV_packed_depth_stencil
#endif 

//GL_NV_register_combiners2

#ifdef __GLEE_GL_NV_register_combiners2
PFNGLCOMBINERSTAGEPARAMETERFVNVPROC pglCombinerStageParameterfvNV=0;
PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC pglGetCombinerStageParameterfvNV=0;
#endif 

//GL_NV_texture_compression_vtc

#ifdef __GLEE_GL_NV_texture_compression_vtc
#endif 

//GL_NV_texture_rectangle

#ifdef __GLEE_GL_NV_texture_rectangle
#endif 

//GL_NV_texture_shader

#ifdef __GLEE_GL_NV_texture_shader
#endif 

//GL_NV_texture_shader2

#ifdef __GLEE_GL_NV_texture_shader2
#endif 

//GL_NV_vertex_array_range2

#ifdef __GLEE_GL_NV_vertex_array_range2
#endif 

//GL_NV_vertex_program

#ifdef __GLEE_GL_NV_vertex_program
PFNGLAREPROGRAMSRESIDENTNVPROC pglAreProgramsResidentNV=0;
PFNGLBINDPROGRAMNVPROC pglBindProgramNV=0;
PFNGLDELETEPROGRAMSNVPROC pglDeleteProgramsNV=0;
PFNGLEXECUTEPROGRAMNVPROC pglExecuteProgramNV=0;
PFNGLGENPROGRAMSNVPROC pglGenProgramsNV=0;
PFNGLGETPROGRAMPARAMETERDVNVPROC pglGetProgramParameterdvNV=0;
PFNGLGETPROGRAMPARAMETERFVNVPROC pglGetProgramParameterfvNV=0;
PFNGLGETPROGRAMIVNVPROC pglGetProgramivNV=0;
PFNGLGETPROGRAMSTRINGNVPROC pglGetProgramStringNV=0;
PFNGLGETTRACKMATRIXIVNVPROC pglGetTrackMatrixivNV=0;
PFNGLGETVERTEXATTRIBDVNVPROC pglGetVertexAttribdvNV=0;
PFNGLGETVERTEXATTRIBFVNVPROC pglGetVertexAttribfvNV=0;
PFNGLGETVERTEXATTRIBIVNVPROC pglGetVertexAttribivNV=0;
PFNGLGETVERTEXATTRIBPOINTERVNVPROC pglGetVertexAttribPointervNV=0;
PFNGLISPROGRAMNVPROC pglIsProgramNV=0;
PFNGLLOADPROGRAMNVPROC pglLoadProgramNV=0;
PFNGLPROGRAMPARAMETER4DNVPROC pglProgramParameter4dNV=0;
PFNGLPROGRAMPARAMETER4DVNVPROC pglProgramParameter4dvNV=0;
PFNGLPROGRAMPARAMETER4FNVPROC pglProgramParameter4fNV=0;
PFNGLPROGRAMPARAMETER4FVNVPROC pglProgramParameter4fvNV=0;
PFNGLPROGRAMPARAMETERS4DVNVPROC pglProgramParameters4dvNV=0;
PFNGLPROGRAMPARAMETERS4FVNVPROC pglProgramParameters4fvNV=0;
PFNGLREQUESTRESIDENTPROGRAMSNVPROC pglRequestResidentProgramsNV=0;
PFNGLTRACKMATRIXNVPROC pglTrackMatrixNV=0;
PFNGLVERTEXATTRIBPOINTERNVPROC pglVertexAttribPointerNV=0;
PFNGLVERTEXATTRIB1DNVPROC pglVertexAttrib1dNV=0;
PFNGLVERTEXATTRIB1DVNVPROC pglVertexAttrib1dvNV=0;
PFNGLVERTEXATTRIB1FNVPROC pglVertexAttrib1fNV=0;
PFNGLVERTEXATTRIB1FVNVPROC pglVertexAttrib1fvNV=0;
PFNGLVERTEXATTRIB1SNVPROC pglVertexAttrib1sNV=0;
PFNGLVERTEXATTRIB1SVNVPROC pglVertexAttrib1svNV=0;
PFNGLVERTEXATTRIB2DNVPROC pglVertexAttrib2dNV=0;
PFNGLVERTEXATTRIB2DVNVPROC pglVertexAttrib2dvNV=0;
PFNGLVERTEXATTRIB2FNVPROC pglVertexAttrib2fNV=0;
PFNGLVERTEXATTRIB2FVNVPROC pglVertexAttrib2fvNV=0;
PFNGLVERTEXATTRIB2SNVPROC pglVertexAttrib2sNV=0;
PFNGLVERTEXATTRIB2SVNVPROC pglVertexAttrib2svNV=0;
PFNGLVERTEXATTRIB3DNVPROC pglVertexAttrib3dNV=0;
PFNGLVERTEXATTRIB3DVNVPROC pglVertexAttrib3dvNV=0;
PFNGLVERTEXATTRIB3FNVPROC pglVertexAttrib3fNV=0;
PFNGLVERTEXATTRIB3FVNVPROC pglVertexAttrib3fvNV=0;
PFNGLVERTEXATTRIB3SNVPROC pglVertexAttrib3sNV=0;
PFNGLVERTEXATTRIB3SVNVPROC pglVertexAttrib3svNV=0;
PFNGLVERTEXATTRIB4DNVPROC pglVertexAttrib4dNV=0;
PFNGLVERTEXATTRIB4DVNVPROC pglVertexAttrib4dvNV=0;
PFNGLVERTEXATTRIB4FNVPROC pglVertexAttrib4fNV=0;
PFNGLVERTEXATTRIB4FVNVPROC pglVertexAttrib4fvNV=0;
PFNGLVERTEXATTRIB4SNVPROC pglVertexAttrib4sNV=0;
PFNGLVERTEXATTRIB4SVNVPROC pglVertexAttrib4svNV=0;
PFNGLVERTEXATTRIB4UBNVPROC pglVertexAttrib4ubNV=0;
PFNGLVERTEXATTRIB4UBVNVPROC pglVertexAttrib4ubvNV=0;
PFNGLVERTEXATTRIBS1DVNVPROC pglVertexAttribs1dvNV=0;
PFNGLVERTEXATTRIBS1FVNVPROC pglVertexAttribs1fvNV=0;
PFNGLVERTEXATTRIBS1SVNVPROC pglVertexAttribs1svNV=0;
PFNGLVERTEXATTRIBS2DVNVPROC pglVertexAttribs2dvNV=0;
PFNGLVERTEXATTRIBS2FVNVPROC pglVertexAttribs2fvNV=0;
PFNGLVERTEXATTRIBS2SVNVPROC pglVertexAttribs2svNV=0;
PFNGLVERTEXATTRIBS3DVNVPROC pglVertexAttribs3dvNV=0;
PFNGLVERTEXATTRIBS3FVNVPROC pglVertexAttribs3fvNV=0;
PFNGLVERTEXATTRIBS3SVNVPROC pglVertexAttribs3svNV=0;
PFNGLVERTEXATTRIBS4DVNVPROC pglVertexAttribs4dvNV=0;
PFNGLVERTEXATTRIBS4FVNVPROC pglVertexAttribs4fvNV=0;
PFNGLVERTEXATTRIBS4SVNVPROC pglVertexAttribs4svNV=0;
PFNGLVERTEXATTRIBS4UBVNVPROC pglVertexAttribs4ubvNV=0;
#endif 

//GL_SGIX_texture_coordinate_clamp

#ifdef __GLEE_GL_SGIX_texture_coordinate_clamp
#endif 

//GL_SGIX_scalebias_hint

#ifdef __GLEE_GL_SGIX_scalebias_hint
#endif 

//GL_OML_interlace

#ifdef __GLEE_GL_OML_interlace
#endif 

//GL_OML_subsample

#ifdef __GLEE_GL_OML_subsample
#endif 

//GL_OML_resample

#ifdef __GLEE_GL_OML_resample
#endif 

//GL_NV_copy_depth_to_color

#ifdef __GLEE_GL_NV_copy_depth_to_color
#endif 

//GL_ATI_envmap_bumpmap

#ifdef __GLEE_GL_ATI_envmap_bumpmap
PFNGLTEXBUMPPARAMETERIVATIPROC pglTexBumpParameterivATI=0;
PFNGLTEXBUMPPARAMETERFVATIPROC pglTexBumpParameterfvATI=0;
PFNGLGETTEXBUMPPARAMETERIVATIPROC pglGetTexBumpParameterivATI=0;
PFNGLGETTEXBUMPPARAMETERFVATIPROC pglGetTexBumpParameterfvATI=0;
#endif 

//GL_ATI_fragment_shader

#ifdef __GLEE_GL_ATI_fragment_shader
PFNGLGENFRAGMENTSHADERSATIPROC pglGenFragmentShadersATI=0;
PFNGLBINDFRAGMENTSHADERATIPROC pglBindFragmentShaderATI=0;
PFNGLDELETEFRAGMENTSHADERATIPROC pglDeleteFragmentShaderATI=0;
PFNGLBEGINFRAGMENTSHADERATIPROC pglBeginFragmentShaderATI=0;
PFNGLENDFRAGMENTSHADERATIPROC pglEndFragmentShaderATI=0;
PFNGLPASSTEXCOORDATIPROC pglPassTexCoordATI=0;
PFNGLSAMPLEMAPATIPROC pglSampleMapATI=0;
PFNGLCOLORFRAGMENTOP1ATIPROC pglColorFragmentOp1ATI=0;
PFNGLCOLORFRAGMENTOP2ATIPROC pglColorFragmentOp2ATI=0;
PFNGLCOLORFRAGMENTOP3ATIPROC pglColorFragmentOp3ATI=0;
PFNGLALPHAFRAGMENTOP1ATIPROC pglAlphaFragmentOp1ATI=0;
PFNGLALPHAFRAGMENTOP2ATIPROC pglAlphaFragmentOp2ATI=0;
PFNGLALPHAFRAGMENTOP3ATIPROC pglAlphaFragmentOp3ATI=0;
PFNGLSETFRAGMENTSHADERCONSTANTATIPROC pglSetFragmentShaderConstantATI=0;
#endif 

//GL_ATI_pn_triangles

#ifdef __GLEE_GL_ATI_pn_triangles
PFNGLPNTRIANGLESIATIPROC pglPNTrianglesiATI=0;
PFNGLPNTRIANGLESFATIPROC pglPNTrianglesfATI=0;
#endif 

//GL_ATI_vertex_array_object

#ifdef __GLEE_GL_ATI_vertex_array_object
PFNGLNEWOBJECTBUFFERATIPROC pglNewObjectBufferATI=0;
PFNGLISOBJECTBUFFERATIPROC pglIsObjectBufferATI=0;
PFNGLUPDATEOBJECTBUFFERATIPROC pglUpdateObjectBufferATI=0;
PFNGLGETOBJECTBUFFERFVATIPROC pglGetObjectBufferfvATI=0;
PFNGLGETOBJECTBUFFERIVATIPROC pglGetObjectBufferivATI=0;
PFNGLFREEOBJECTBUFFERATIPROC pglFreeObjectBufferATI=0;
PFNGLARRAYOBJECTATIPROC pglArrayObjectATI=0;
PFNGLGETARRAYOBJECTFVATIPROC pglGetArrayObjectfvATI=0;
PFNGLGETARRAYOBJECTIVATIPROC pglGetArrayObjectivATI=0;
PFNGLVARIANTARRAYOBJECTATIPROC pglVariantArrayObjectATI=0;
PFNGLGETVARIANTARRAYOBJECTFVATIPROC pglGetVariantArrayObjectfvATI=0;
PFNGLGETVARIANTARRAYOBJECTIVATIPROC pglGetVariantArrayObjectivATI=0;
#endif 

//GL_EXT_vertex_shader

#ifdef __GLEE_GL_EXT_vertex_shader
PFNGLBEGINVERTEXSHADEREXTPROC pglBeginVertexShaderEXT=0;
PFNGLENDVERTEXSHADEREXTPROC pglEndVertexShaderEXT=0;
PFNGLBINDVERTEXSHADEREXTPROC pglBindVertexShaderEXT=0;
PFNGLGENVERTEXSHADERSEXTPROC pglGenVertexShadersEXT=0;
PFNGLDELETEVERTEXSHADEREXTPROC pglDeleteVertexShaderEXT=0;
PFNGLSHADEROP1EXTPROC pglShaderOp1EXT=0;
PFNGLSHADEROP2EXTPROC pglShaderOp2EXT=0;
PFNGLSHADEROP3EXTPROC pglShaderOp3EXT=0;
PFNGLSWIZZLEEXTPROC pglSwizzleEXT=0;
PFNGLWRITEMASKEXTPROC pglWriteMaskEXT=0;
PFNGLINSERTCOMPONENTEXTPROC pglInsertComponentEXT=0;
PFNGLEXTRACTCOMPONENTEXTPROC pglExtractComponentEXT=0;
PFNGLGENSYMBOLSEXTPROC pglGenSymbolsEXT=0;
PFNGLSETINVARIANTEXTPROC pglSetInvariantEXT=0;
PFNGLSETLOCALCONSTANTEXTPROC pglSetLocalConstantEXT=0;
PFNGLVARIANTBVEXTPROC pglVariantbvEXT=0;
PFNGLVARIANTSVEXTPROC pglVariantsvEXT=0;
PFNGLVARIANTIVEXTPROC pglVariantivEXT=0;
PFNGLVARIANTFVEXTPROC pglVariantfvEXT=0;
PFNGLVARIANTDVEXTPROC pglVariantdvEXT=0;
PFNGLVARIANTUBVEXTPROC pglVariantubvEXT=0;
PFNGLVARIANTUSVEXTPROC pglVariantusvEXT=0;
PFNGLVARIANTUIVEXTPROC pglVariantuivEXT=0;
PFNGLVARIANTPOINTEREXTPROC pglVariantPointerEXT=0;
PFNGLENABLEVARIANTCLIENTSTATEEXTPROC pglEnableVariantClientStateEXT=0;
PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC pglDisableVariantClientStateEXT=0;
PFNGLBINDLIGHTPARAMETEREXTPROC pglBindLightParameterEXT=0;
PFNGLBINDMATERIALPARAMETEREXTPROC pglBindMaterialParameterEXT=0;
PFNGLBINDTEXGENPARAMETEREXTPROC pglBindTexGenParameterEXT=0;
PFNGLBINDTEXTUREUNITPARAMETEREXTPROC pglBindTextureUnitParameterEXT=0;
PFNGLBINDPARAMETEREXTPROC pglBindParameterEXT=0;
PFNGLISVARIANTENABLEDEXTPROC pglIsVariantEnabledEXT=0;
PFNGLGETVARIANTBOOLEANVEXTPROC pglGetVariantBooleanvEXT=0;
PFNGLGETVARIANTINTEGERVEXTPROC pglGetVariantIntegervEXT=0;
PFNGLGETVARIANTFLOATVEXTPROC pglGetVariantFloatvEXT=0;
PFNGLGETVARIANTPOINTERVEXTPROC pglGetVariantPointervEXT=0;
PFNGLGETINVARIANTBOOLEANVEXTPROC pglGetInvariantBooleanvEXT=0;
PFNGLGETINVARIANTINTEGERVEXTPROC pglGetInvariantIntegervEXT=0;
PFNGLGETINVARIANTFLOATVEXTPROC pglGetInvariantFloatvEXT=0;
PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC pglGetLocalConstantBooleanvEXT=0;
PFNGLGETLOCALCONSTANTINTEGERVEXTPROC pglGetLocalConstantIntegervEXT=0;
PFNGLGETLOCALCONSTANTFLOATVEXTPROC pglGetLocalConstantFloatvEXT=0;
#endif 

//GL_ATI_vertex_streams

#ifdef __GLEE_GL_ATI_vertex_streams
PFNGLVERTEXSTREAM1SATIPROC pglVertexStream1sATI=0;
PFNGLVERTEXSTREAM1SVATIPROC pglVertexStream1svATI=0;
PFNGLVERTEXSTREAM1IATIPROC pglVertexStream1iATI=0;
PFNGLVERTEXSTREAM1IVATIPROC pglVertexStream1ivATI=0;
PFNGLVERTEXSTREAM1FATIPROC pglVertexStream1fATI=0;
PFNGLVERTEXSTREAM1FVATIPROC pglVertexStream1fvATI=0;
PFNGLVERTEXSTREAM1DATIPROC pglVertexStream1dATI=0;
PFNGLVERTEXSTREAM1DVATIPROC pglVertexStream1dvATI=0;
PFNGLVERTEXSTREAM2SATIPROC pglVertexStream2sATI=0;
PFNGLVERTEXSTREAM2SVATIPROC pglVertexStream2svATI=0;
PFNGLVERTEXSTREAM2IATIPROC pglVertexStream2iATI=0;
PFNGLVERTEXSTREAM2IVATIPROC pglVertexStream2ivATI=0;
PFNGLVERTEXSTREAM2FATIPROC pglVertexStream2fATI=0;
PFNGLVERTEXSTREAM2FVATIPROC pglVertexStream2fvATI=0;
PFNGLVERTEXSTREAM2DATIPROC pglVertexStream2dATI=0;
PFNGLVERTEXSTREAM2DVATIPROC pglVertexStream2dvATI=0;
PFNGLVERTEXSTREAM3SATIPROC pglVertexStream3sATI=0;
PFNGLVERTEXSTREAM3SVATIPROC pglVertexStream3svATI=0;
PFNGLVERTEXSTREAM3IATIPROC pglVertexStream3iATI=0;
PFNGLVERTEXSTREAM3IVATIPROC pglVertexStream3ivATI=0;
PFNGLVERTEXSTREAM3FATIPROC pglVertexStream3fATI=0;
PFNGLVERTEXSTREAM3FVATIPROC pglVertexStream3fvATI=0;
PFNGLVERTEXSTREAM3DATIPROC pglVertexStream3dATI=0;
PFNGLVERTEXSTREAM3DVATIPROC pglVertexStream3dvATI=0;
PFNGLVERTEXSTREAM4SATIPROC pglVertexStream4sATI=0;
PFNGLVERTEXSTREAM4SVATIPROC pglVertexStream4svATI=0;
PFNGLVERTEXSTREAM4IATIPROC pglVertexStream4iATI=0;
PFNGLVERTEXSTREAM4IVATIPROC pglVertexStream4ivATI=0;
PFNGLVERTEXSTREAM4FATIPROC pglVertexStream4fATI=0;
PFNGLVERTEXSTREAM4FVATIPROC pglVertexStream4fvATI=0;
PFNGLVERTEXSTREAM4DATIPROC pglVertexStream4dATI=0;
PFNGLVERTEXSTREAM4DVATIPROC pglVertexStream4dvATI=0;
PFNGLNORMALSTREAM3BATIPROC pglNormalStream3bATI=0;
PFNGLNORMALSTREAM3BVATIPROC pglNormalStream3bvATI=0;
PFNGLNORMALSTREAM3SATIPROC pglNormalStream3sATI=0;
PFNGLNORMALSTREAM3SVATIPROC pglNormalStream3svATI=0;
PFNGLNORMALSTREAM3IATIPROC pglNormalStream3iATI=0;
PFNGLNORMALSTREAM3IVATIPROC pglNormalStream3ivATI=0;
PFNGLNORMALSTREAM3FATIPROC pglNormalStream3fATI=0;
PFNGLNORMALSTREAM3FVATIPROC pglNormalStream3fvATI=0;
PFNGLNORMALSTREAM3DATIPROC pglNormalStream3dATI=0;
PFNGLNORMALSTREAM3DVATIPROC pglNormalStream3dvATI=0;
PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC pglClientActiveVertexStreamATI=0;
PFNGLVERTEXBLENDENVIATIPROC pglVertexBlendEnviATI=0;
PFNGLVERTEXBLENDENVFATIPROC pglVertexBlendEnvfATI=0;
#endif 

//GL_ATI_element_array

#ifdef __GLEE_GL_ATI_element_array
PFNGLELEMENTPOINTERATIPROC pglElementPointerATI=0;
PFNGLDRAWELEMENTARRAYATIPROC pglDrawElementArrayATI=0;
PFNGLDRAWRANGEELEMENTARRAYATIPROC pglDrawRangeElementArrayATI=0;
#endif 

//GL_SUN_mesh_array

#ifdef __GLEE_GL_SUN_mesh_array
PFNGLDRAWMESHARRAYSSUNPROC pglDrawMeshArraysSUN=0;
#endif 

//GL_SUN_slice_accum

#ifdef __GLEE_GL_SUN_slice_accum
#endif 

//GL_NV_multisample_filter_hint

#ifdef __GLEE_GL_NV_multisample_filter_hint
#endif 

//GL_NV_depth_clamp

#ifdef __GLEE_GL_NV_depth_clamp
#endif 

//GL_NV_occlusion_query

#ifdef __GLEE_GL_NV_occlusion_query
PFNGLGENOCCLUSIONQUERIESNVPROC pglGenOcclusionQueriesNV=0;
PFNGLDELETEOCCLUSIONQUERIESNVPROC pglDeleteOcclusionQueriesNV=0;
PFNGLISOCCLUSIONQUERYNVPROC pglIsOcclusionQueryNV=0;
PFNGLBEGINOCCLUSIONQUERYNVPROC pglBeginOcclusionQueryNV=0;
PFNGLENDOCCLUSIONQUERYNVPROC pglEndOcclusionQueryNV=0;
PFNGLGETOCCLUSIONQUERYIVNVPROC pglGetOcclusionQueryivNV=0;
PFNGLGETOCCLUSIONQUERYUIVNVPROC pglGetOcclusionQueryuivNV=0;
#endif 

//GL_NV_point_sprite

#ifdef __GLEE_GL_NV_point_sprite
PFNGLPOINTPARAMETERINVPROC pglPointParameteriNV=0;
PFNGLPOINTPARAMETERIVNVPROC pglPointParameterivNV=0;
#endif 

//GL_NV_texture_shader3

#ifdef __GLEE_GL_NV_texture_shader3
#endif 

//GL_NV_vertex_program1_1

#ifdef __GLEE_GL_NV_vertex_program1_1
#endif 

//GL_EXT_shadow_funcs

#ifdef __GLEE_GL_EXT_shadow_funcs
#endif 

//GL_EXT_stencil_two_side

#ifdef __GLEE_GL_EXT_stencil_two_side
PFNGLACTIVESTENCILFACEEXTPROC pglActiveStencilFaceEXT=0;
#endif 

//GL_ATI_text_fragment_shader

#ifdef __GLEE_GL_ATI_text_fragment_shader
#endif 

//GL_APPLE_client_storage

#ifdef __GLEE_GL_APPLE_client_storage
#endif 

//GL_APPLE_element_array

#ifdef __GLEE_GL_APPLE_element_array
PFNGLELEMENTPOINTERAPPLEPROC pglElementPointerAPPLE=0;
PFNGLDRAWELEMENTARRAYAPPLEPROC pglDrawElementArrayAPPLE=0;
PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC pglDrawRangeElementArrayAPPLE=0;
PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC pglMultiDrawElementArrayAPPLE=0;
PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC pglMultiDrawRangeElementArrayAPPLE=0;
#endif 

//GL_APPLE_fence

#ifdef __GLEE_GL_APPLE_fence
PFNGLGENFENCESAPPLEPROC pglGenFencesAPPLE=0;
PFNGLDELETEFENCESAPPLEPROC pglDeleteFencesAPPLE=0;
PFNGLSETFENCEAPPLEPROC pglSetFenceAPPLE=0;
PFNGLISFENCEAPPLEPROC pglIsFenceAPPLE=0;
PFNGLTESTFENCEAPPLEPROC pglTestFenceAPPLE=0;
PFNGLFINISHFENCEAPPLEPROC pglFinishFenceAPPLE=0;
PFNGLTESTOBJECTAPPLEPROC pglTestObjectAPPLE=0;
PFNGLFINISHOBJECTAPPLEPROC pglFinishObjectAPPLE=0;
#endif 

//GL_APPLE_vertex_array_object

#ifdef __GLEE_GL_APPLE_vertex_array_object
PFNGLBINDVERTEXARRAYAPPLEPROC pglBindVertexArrayAPPLE=0;
PFNGLDELETEVERTEXARRAYSAPPLEPROC pglDeleteVertexArraysAPPLE=0;
PFNGLGENVERTEXARRAYSAPPLEPROC pglGenVertexArraysAPPLE=0;
PFNGLISVERTEXARRAYAPPLEPROC pglIsVertexArrayAPPLE=0;
#endif 

//GL_APPLE_vertex_array_range

#ifdef __GLEE_GL_APPLE_vertex_array_range
PFNGLVERTEXARRAYRANGEAPPLEPROC pglVertexArrayRangeAPPLE=0;
PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC pglFlushVertexArrayRangeAPPLE=0;
PFNGLVERTEXARRAYPARAMETERIAPPLEPROC pglVertexArrayParameteriAPPLE=0;
#endif 

//GL_APPLE_ycbcr_422

#ifdef __GLEE_GL_APPLE_ycbcr_422
#endif 

//GL_S3_s3tc

#ifdef __GLEE_GL_S3_s3tc
#endif 

//GL_ATI_draw_buffers

#ifdef __GLEE_GL_ATI_draw_buffers
PFNGLDRAWBUFFERSATIPROC pglDrawBuffersATI=0;
#endif 

//GL_ATI_texture_env_combine3

#ifdef __GLEE_GL_ATI_texture_env_combine3
#endif 

//GL_ATI_texture_float

#ifdef __GLEE_GL_ATI_texture_float
#endif 

//GL_NV_float_buffer

#ifdef __GLEE_GL_NV_float_buffer
#endif 

//GL_NV_fragment_program

#ifdef __GLEE_GL_NV_fragment_program
PFNGLPROGRAMNAMEDPARAMETER4FNVPROC pglProgramNamedParameter4fNV=0;
PFNGLPROGRAMNAMEDPARAMETER4DNVPROC pglProgramNamedParameter4dNV=0;
PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC pglProgramNamedParameter4fvNV=0;
PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC pglProgramNamedParameter4dvNV=0;
PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC pglGetProgramNamedParameterfvNV=0;
PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC pglGetProgramNamedParameterdvNV=0;
#endif 

//GL_NV_half_float

#ifdef __GLEE_GL_NV_half_float
PFNGLVERTEX2HNVPROC pglVertex2hNV=0;
PFNGLVERTEX2HVNVPROC pglVertex2hvNV=0;
PFNGLVERTEX3HNVPROC pglVertex3hNV=0;
PFNGLVERTEX3HVNVPROC pglVertex3hvNV=0;
PFNGLVERTEX4HNVPROC pglVertex4hNV=0;
PFNGLVERTEX4HVNVPROC pglVertex4hvNV=0;
PFNGLNORMAL3HNVPROC pglNormal3hNV=0;
PFNGLNORMAL3HVNVPROC pglNormal3hvNV=0;
PFNGLCOLOR3HNVPROC pglColor3hNV=0;
PFNGLCOLOR3HVNVPROC pglColor3hvNV=0;
PFNGLCOLOR4HNVPROC pglColor4hNV=0;
PFNGLCOLOR4HVNVPROC pglColor4hvNV=0;
PFNGLTEXCOORD1HNVPROC pglTexCoord1hNV=0;
PFNGLTEXCOORD1HVNVPROC pglTexCoord1hvNV=0;
PFNGLTEXCOORD2HNVPROC pglTexCoord2hNV=0;
PFNGLTEXCOORD2HVNVPROC pglTexCoord2hvNV=0;
PFNGLTEXCOORD3HNVPROC pglTexCoord3hNV=0;
PFNGLTEXCOORD3HVNVPROC pglTexCoord3hvNV=0;
PFNGLTEXCOORD4HNVPROC pglTexCoord4hNV=0;
PFNGLTEXCOORD4HVNVPROC pglTexCoord4hvNV=0;
PFNGLMULTITEXCOORD1HNVPROC pglMultiTexCoord1hNV=0;
PFNGLMULTITEXCOORD1HVNVPROC pglMultiTexCoord1hvNV=0;
PFNGLMULTITEXCOORD2HNVPROC pglMultiTexCoord2hNV=0;
PFNGLMULTITEXCOORD2HVNVPROC pglMultiTexCoord2hvNV=0;
PFNGLMULTITEXCOORD3HNVPROC pglMultiTexCoord3hNV=0;
PFNGLMULTITEXCOORD3HVNVPROC pglMultiTexCoord3hvNV=0;
PFNGLMULTITEXCOORD4HNVPROC pglMultiTexCoord4hNV=0;
PFNGLMULTITEXCOORD4HVNVPROC pglMultiTexCoord4hvNV=0;
PFNGLFOGCOORDHNVPROC pglFogCoordhNV=0;
PFNGLFOGCOORDHVNVPROC pglFogCoordhvNV=0;
PFNGLSECONDARYCOLOR3HNVPROC pglSecondaryColor3hNV=0;
PFNGLSECONDARYCOLOR3HVNVPROC pglSecondaryColor3hvNV=0;
PFNGLVERTEXWEIGHTHNVPROC pglVertexWeighthNV=0;
PFNGLVERTEXWEIGHTHVNVPROC pglVertexWeighthvNV=0;
PFNGLVERTEXATTRIB1HNVPROC pglVertexAttrib1hNV=0;
PFNGLVERTEXATTRIB1HVNVPROC pglVertexAttrib1hvNV=0;
PFNGLVERTEXATTRIB2HNVPROC pglVertexAttrib2hNV=0;
PFNGLVERTEXATTRIB2HVNVPROC pglVertexAttrib2hvNV=0;
PFNGLVERTEXATTRIB3HNVPROC pglVertexAttrib3hNV=0;
PFNGLVERTEXATTRIB3HVNVPROC pglVertexAttrib3hvNV=0;
PFNGLVERTEXATTRIB4HNVPROC pglVertexAttrib4hNV=0;
PFNGLVERTEXATTRIB4HVNVPROC pglVertexAttrib4hvNV=0;
PFNGLVERTEXATTRIBS1HVNVPROC pglVertexAttribs1hvNV=0;
PFNGLVERTEXATTRIBS2HVNVPROC pglVertexAttribs2hvNV=0;
PFNGLVERTEXATTRIBS3HVNVPROC pglVertexAttribs3hvNV=0;
PFNGLVERTEXATTRIBS4HVNVPROC pglVertexAttribs4hvNV=0;
#endif 

//GL_NV_pixel_data_range

#ifdef __GLEE_GL_NV_pixel_data_range
PFNGLPIXELDATARANGENVPROC pglPixelDataRangeNV=0;
PFNGLFLUSHPIXELDATARANGENVPROC pglFlushPixelDataRangeNV=0;
#endif 

//GL_NV_primitive_restart

#ifdef __GLEE_GL_NV_primitive_restart
PFNGLPRIMITIVERESTARTNVPROC pglPrimitiveRestartNV=0;
PFNGLPRIMITIVERESTARTINDEXNVPROC pglPrimitiveRestartIndexNV=0;
#endif 

//GL_NV_texture_expand_normal

#ifdef __GLEE_GL_NV_texture_expand_normal
#endif 

//GL_NV_vertex_program2

#ifdef __GLEE_GL_NV_vertex_program2
#endif 

//GL_ATI_map_object_buffer

#ifdef __GLEE_GL_ATI_map_object_buffer
PFNGLMAPOBJECTBUFFERATIPROC pglMapObjectBufferATI=0;
PFNGLUNMAPOBJECTBUFFERATIPROC pglUnmapObjectBufferATI=0;
#endif 

//GL_ATI_separate_stencil

#ifdef __GLEE_GL_ATI_separate_stencil
PFNGLSTENCILOPSEPARATEATIPROC pglStencilOpSeparateATI=0;
PFNGLSTENCILFUNCSEPARATEATIPROC pglStencilFuncSeparateATI=0;
#endif 

//GL_ATI_vertex_attrib_array_object

#ifdef __GLEE_GL_ATI_vertex_attrib_array_object
PFNGLVERTEXATTRIBARRAYOBJECTATIPROC pglVertexAttribArrayObjectATI=0;
PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC pglGetVertexAttribArrayObjectfvATI=0;
PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC pglGetVertexAttribArrayObjectivATI=0;
#endif 

//GL_EXT_depth_bounds_test

#ifdef __GLEE_GL_EXT_depth_bounds_test
PFNGLDEPTHBOUNDSEXTPROC pglDepthBoundsEXT=0;
#endif 

//GL_EXT_texture_mirror_clamp

#ifdef __GLEE_GL_EXT_texture_mirror_clamp
#endif 

//GL_EXT_blend_equation_separate

#ifdef __GLEE_GL_EXT_blend_equation_separate
PFNGLBLENDEQUATIONSEPARATEEXTPROC pglBlendEquationSeparateEXT=0;
#endif 

//GL_MESA_pack_invert

#ifdef __GLEE_GL_MESA_pack_invert
#endif 

//GL_MESA_ycbcr_texture

#ifdef __GLEE_GL_MESA_ycbcr_texture
#endif 

//GL_EXT_color_matrix

#ifdef __GLEE_GL_EXT_color_matrix
#endif 

//GL_SGIS_texture_border_clamp

#ifdef __GLEE_GL_SGIS_texture_border_clamp
#endif 

//GL_SGIX_texture_select

#ifdef __GLEE_GL_SGIX_texture_select
#endif 

//GL_INGR_blend_func_separate

#ifdef __GLEE_GL_INGR_blend_func_separate
PFNGLBLENDFUNCSEPARATEINGRPROC pglBlendFuncSeparateINGR=0;
#endif 

//GL_SGIX_depth_pass_instrument

#ifdef __GLEE_GL_SGIX_depth_pass_instrument
#endif 

//GL_SGIX_igloo_interface

#ifdef __GLEE_GL_SGIX_igloo_interface
PFNGLIGLOOINTERFACESGIXPROC pglIglooInterfaceSGIX=0;
#endif 

//WIN32 SPECIFIC

#ifdef WIN32
// Extension querying variables

GLboolean GLEE_WGL_ARB_buffer_region = GL_FALSE;
GLboolean GLEE_WGL_ARB_multisample = GL_FALSE;
GLboolean GLEE_WGL_ARB_extensions_string = GL_FALSE;
GLboolean GLEE_WGL_ARB_pixel_format = GL_FALSE;
GLboolean GLEE_WGL_ARB_make_current_read = GL_FALSE;
GLboolean GLEE_WGL_ARB_pbuffer = GL_FALSE;
GLboolean GLEE_WGL_ARB_render_texture = GL_FALSE;
GLboolean GLEE_WGL_EXT_make_current_read = GL_FALSE;
GLboolean GLEE_WGL_EXT_pixel_format = GL_FALSE;
GLboolean GLEE_WGL_EXT_pbuffer = GL_FALSE;
GLboolean GLEE_WGL_EXT_depth_float = GL_FALSE;
GLboolean GLEE_WGL_3DFX_multisample = GL_FALSE;
GLboolean GLEE_WGL_EXT_multisample = GL_FALSE;
GLboolean GLEE_WGL_I3D_digital_video_control = GL_FALSE;
GLboolean GLEE_WGL_I3D_gamma = GL_FALSE;
GLboolean GLEE_WGL_I3D_genlock = GL_FALSE;
GLboolean GLEE_WGL_I3D_image_buffer = GL_FALSE;
GLboolean GLEE_WGL_I3D_swap_frame_lock = GL_FALSE;
GLboolean GLEE_WGL_NV_render_depth_texture = GL_FALSE;
GLboolean GLEE_WGL_NV_render_texture_rectangle = GL_FALSE;
GLboolean GLEE_WGL_NV_float_buffer = GL_FALSE;
GLboolean GLEE_WGL_EXT_display_color_table = GL_FALSE;
GLboolean GLEE_WGL_EXT_extensions_string = GL_FALSE;
GLboolean GLEE_WGL_EXT_swap_control = GL_FALSE;
GLboolean GLEE_WGL_NV_vertex_array_range = GL_FALSE;
GLboolean GLEE_WGL_OML_sync_control = GL_FALSE;
GLboolean GLEE_WGL_I3D_swap_frame_usage = GL_FALSE;

//WGL_ARB_buffer_region

#ifdef __GLEE_WGL_ARB_buffer_region
PFNWGLCREATEBUFFERREGIONARBPROC pwglCreateBufferRegionARB=0;
PFNWGLDELETEBUFFERREGIONARBPROC pwglDeleteBufferRegionARB=0;
PFNWGLSAVEBUFFERREGIONARBPROC pwglSaveBufferRegionARB=0;
PFNWGLRESTOREBUFFERREGIONARBPROC pwglRestoreBufferRegionARB=0;
#endif 

//WGL_ARB_multisample

#ifdef __GLEE_WGL_ARB_multisample
#endif 

//WGL_ARB_extensions_string

#ifdef __GLEE_WGL_ARB_extensions_string
PFNWGLGETEXTENSIONSSTRINGARBPROC pwglGetExtensionsStringARB=0;
#endif 

//WGL_ARB_pixel_format

#ifdef __GLEE_WGL_ARB_pixel_format
PFNWGLGETPIXELFORMATATTRIBIVARBPROC pwglGetPixelFormatAttribivARB=0;
PFNWGLGETPIXELFORMATATTRIBFVARBPROC pwglGetPixelFormatAttribfvARB=0;
PFNWGLCHOOSEPIXELFORMATARBPROC pwglChoosePixelFormatARB=0;
#endif 

//WGL_ARB_make_current_read

#ifdef __GLEE_WGL_ARB_make_current_read
PFNWGLMAKECONTEXTCURRENTARBPROC pwglMakeContextCurrentARB=0;
PFNWGLGETCURRENTREADDCARBPROC pwglGetCurrentReadDCARB=0;
#endif 

//WGL_ARB_pbuffer

#ifdef __GLEE_WGL_ARB_pbuffer
PFNWGLCREATEPBUFFERARBPROC pwglCreatePbufferARB=0;
PFNWGLGETPBUFFERDCARBPROC pwglGetPbufferDCARB=0;
PFNWGLRELEASEPBUFFERDCARBPROC pwglReleasePbufferDCARB=0;
PFNWGLDESTROYPBUFFERARBPROC pwglDestroyPbufferARB=0;
PFNWGLQUERYPBUFFERARBPROC pwglQueryPbufferARB=0;
#endif 

//WGL_ARB_render_texture

#ifdef __GLEE_WGL_ARB_render_texture
PFNWGLBINDTEXIMAGEARBPROC pwglBindTexImageARB=0;
PFNWGLRELEASETEXIMAGEARBPROC pwglReleaseTexImageARB=0;
PFNWGLSETPBUFFERATTRIBARBPROC pwglSetPbufferAttribARB=0;
#endif 

//WGL_EXT_make_current_read

#ifdef __GLEE_WGL_EXT_make_current_read
PFNWGLMAKECONTEXTCURRENTEXTPROC pwglMakeContextCurrentEXT=0;
PFNWGLGETCURRENTREADDCEXTPROC pwglGetCurrentReadDCEXT=0;
#endif 

//WGL_EXT_pixel_format

#ifdef __GLEE_WGL_EXT_pixel_format
PFNWGLGETPIXELFORMATATTRIBIVEXTPROC pwglGetPixelFormatAttribivEXT=0;
PFNWGLGETPIXELFORMATATTRIBFVEXTPROC pwglGetPixelFormatAttribfvEXT=0;
PFNWGLCHOOSEPIXELFORMATEXTPROC pwglChoosePixelFormatEXT=0;
#endif 

//WGL_EXT_pbuffer

#ifdef __GLEE_WGL_EXT_pbuffer
PFNWGLCREATEPBUFFEREXTPROC pwglCreatePbufferEXT=0;
PFNWGLGETPBUFFERDCEXTPROC pwglGetPbufferDCEXT=0;
PFNWGLRELEASEPBUFFERDCEXTPROC pwglReleasePbufferDCEXT=0;
PFNWGLDESTROYPBUFFEREXTPROC pwglDestroyPbufferEXT=0;
PFNWGLQUERYPBUFFEREXTPROC pwglQueryPbufferEXT=0;
#endif 

//WGL_EXT_depth_float

#ifdef __GLEE_WGL_EXT_depth_float
#endif 

//WGL_3DFX_multisample

#ifdef __GLEE_WGL_3DFX_multisample
#endif 

//WGL_EXT_multisample

#ifdef __GLEE_WGL_EXT_multisample
#endif 

//WGL_I3D_digital_video_control

#ifdef __GLEE_WGL_I3D_digital_video_control
PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC pwglGetDigitalVideoParametersI3D=0;
PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC pwglSetDigitalVideoParametersI3D=0;
#endif 

//WGL_I3D_gamma

#ifdef __GLEE_WGL_I3D_gamma
PFNWGLGETGAMMATABLEPARAMETERSI3DPROC pwglGetGammaTableParametersI3D=0;
PFNWGLSETGAMMATABLEPARAMETERSI3DPROC pwglSetGammaTableParametersI3D=0;
PFNWGLGETGAMMATABLEI3DPROC pwglGetGammaTableI3D=0;
PFNWGLSETGAMMATABLEI3DPROC pwglSetGammaTableI3D=0;
#endif 

//WGL_I3D_genlock

#ifdef __GLEE_WGL_I3D_genlock
PFNWGLENABLEGENLOCKI3DPROC pwglEnableGenlockI3D=0;
PFNWGLDISABLEGENLOCKI3DPROC pwglDisableGenlockI3D=0;
PFNWGLISENABLEDGENLOCKI3DPROC pwglIsEnabledGenlockI3D=0;
PFNWGLGENLOCKSOURCEI3DPROC pwglGenlockSourceI3D=0;
PFNWGLGETGENLOCKSOURCEI3DPROC pwglGetGenlockSourceI3D=0;
PFNWGLGENLOCKSOURCEEDGEI3DPROC pwglGenlockSourceEdgeI3D=0;
PFNWGLGETGENLOCKSOURCEEDGEI3DPROC pwglGetGenlockSourceEdgeI3D=0;
PFNWGLGENLOCKSAMPLERATEI3DPROC pwglGenlockSampleRateI3D=0;
PFNWGLGETGENLOCKSAMPLERATEI3DPROC pwglGetGenlockSampleRateI3D=0;
PFNWGLGENLOCKSOURCEDELAYI3DPROC pwglGenlockSourceDelayI3D=0;
PFNWGLGETGENLOCKSOURCEDELAYI3DPROC pwglGetGenlockSourceDelayI3D=0;
PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC pwglQueryGenlockMaxSourceDelayI3D=0;
#endif 

//WGL_I3D_image_buffer

#ifdef __GLEE_WGL_I3D_image_buffer
PFNWGLCREATEIMAGEBUFFERI3DPROC pwglCreateImageBufferI3D=0;
PFNWGLDESTROYIMAGEBUFFERI3DPROC pwglDestroyImageBufferI3D=0;
PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC pwglAssociateImageBufferEventsI3D=0;
PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC pwglReleaseImageBufferEventsI3D=0;
#endif 

//WGL_I3D_swap_frame_lock

#ifdef __GLEE_WGL_I3D_swap_frame_lock
PFNWGLENABLEFRAMELOCKI3DPROC pwglEnableFrameLockI3D=0;
PFNWGLDISABLEFRAMELOCKI3DPROC pwglDisableFrameLockI3D=0;
PFNWGLISENABLEDFRAMELOCKI3DPROC pwglIsEnabledFrameLockI3D=0;
PFNWGLQUERYFRAMELOCKMASTERI3DPROC pwglQueryFrameLockMasterI3D=0;
#endif 

//WGL_NV_render_depth_texture

#ifdef __GLEE_WGL_NV_render_depth_texture
#endif 

//WGL_NV_render_texture_rectangle

#ifdef __GLEE_WGL_NV_render_texture_rectangle
#endif 

//WGL_NV_float_buffer

#ifdef __GLEE_WGL_NV_float_buffer
#endif 

//WGL_EXT_display_color_table

#ifdef __GLEE_WGL_EXT_display_color_table
PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC pwglCreateDisplayColorTableEXT=0;
PFNWGLLOADDISPLAYCOLORTABLEEXTPROC pwglLoadDisplayColorTableEXT=0;
PFNWGLBINDDISPLAYCOLORTABLEEXTPROC pwglBindDisplayColorTableEXT=0;
PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC pwglDestroyDisplayColorTableEXT=0;
#endif 

//WGL_EXT_extensions_string

#ifdef __GLEE_WGL_EXT_extensions_string
PFNWGLGETEXTENSIONSSTRINGEXTPROC pwglGetExtensionsStringEXT=0;
#endif 

//WGL_EXT_swap_control

#ifdef __GLEE_WGL_EXT_swap_control
PFNWGLSWAPINTERVALEXTPROC pwglSwapIntervalEXT=0;
PFNWGLGETSWAPINTERVALEXTPROC pwglGetSwapIntervalEXT=0;
#endif 

//WGL_NV_vertex_array_range

#ifdef __GLEE_WGL_NV_vertex_array_range
PFNWGLALLOCATEMEMORYNVPROC pwglAllocateMemoryNV=0;
PFNWGLFREEMEMORYNVPROC pwglFreeMemoryNV=0;
#endif 

//WGL_OML_sync_control

#ifdef __GLEE_WGL_OML_sync_control
PFNWGLGETSYNCVALUESOMLPROC pwglGetSyncValuesOML=0;
PFNWGLGETMSCRATEOMLPROC pwglGetMscRateOML=0;
PFNWGLSWAPBUFFERSMSCOMLPROC pwglSwapBuffersMscOML=0;
PFNWGLSWAPLAYERBUFFERSMSCOMLPROC pwglSwapLayerBuffersMscOML=0;
PFNWGLWAITFORMSCOMLPROC pwglWaitForMscOML=0;
PFNWGLWAITFORSBCOMLPROC pwglWaitForSbcOML=0;
#endif 

//WGL_I3D_swap_frame_usage

#ifdef __GLEE_WGL_I3D_swap_frame_usage
PFNWGLGETFRAMEUSAGEI3DPROC pwglGetFrameUsageI3D=0;
PFNWGLBEGINFRAMETRACKINGI3DPROC pwglBeginFrameTrackingI3D=0;
PFNWGLENDFRAMETRACKINGI3DPROC pwglEndFrameTrackingI3D=0;
PFNWGLQUERYFRAMETRACKINGI3DPROC pwglQueryFrameTrackingI3D=0;
#endif 
#else //WIN32 defined
// Extension querying variables

GLboolean GLEE_GLX_VERSION_1_3 = GL_FALSE;
GLboolean GLEE_GLX_VERSION_1_4 = GL_FALSE;
GLboolean GLEE_GLX_ARB_multisample = GL_FALSE;
GLboolean GLEE_GLX_SGIS_multisample = GL_FALSE;
GLboolean GLEE_GLX_EXT_visual_info = GL_FALSE;
GLboolean GLEE_GLX_SGI_swap_control = GL_FALSE;
GLboolean GLEE_GLX_SGI_video_sync = GL_FALSE;
GLboolean GLEE_GLX_SGI_make_current_read = GL_FALSE;
GLboolean GLEE_GLX_EXT_visual_rating = GL_FALSE;
GLboolean GLEE_GLX_EXT_import_context = GL_FALSE;
GLboolean GLEE_GLX_SGIX_fbconfig = GL_FALSE;
GLboolean GLEE_GLX_SGIX_pbuffer = GL_FALSE;
GLboolean GLEE_GLX_SGI_cushion = GL_FALSE;
GLboolean GLEE_GLX_SGIX_video_resize = GL_FALSE;
GLboolean GLEE_GLX_SGIX_swap_group = GL_FALSE;
GLboolean GLEE_GLX_SGIX_swap_barrier = GL_FALSE;
GLboolean GLEE_GLX_SGIS_blended_overlay = GL_FALSE;
GLboolean GLEE_GLX_SGIS_shared_multisample = GL_FALSE;
GLboolean GLEE_GLX_SUN_get_transparent_index = GL_FALSE;
GLboolean GLEE_GLX_3DFX_multisample = GL_FALSE;
GLboolean GLEE_GLX_MESA_copy_sub_buffer = GL_FALSE;
GLboolean GLEE_GLX_MESA_pixmap_colormap = GL_FALSE;
GLboolean GLEE_GLX_MESA_release_buffers = GL_FALSE;
GLboolean GLEE_GLX_MESA_set_3dfx_mode = GL_FALSE;
GLboolean GLEE_GLX_SGIX_visual_select_group = GL_FALSE;
GLboolean GLEE_GLX_OML_swap_method = GL_FALSE;
GLboolean GLEE_GLX_OML_sync_control = GL_FALSE;

//GLX_VERSION_1_3

#ifdef __GLEE_GLX_VERSION_1_3
PFNGLXGETFBCONFIGSPROC pglXGetFBConfigs=0;
PFNGLXCHOOSEFBCONFIGPROC pglXChooseFBConfig=0;
PFNGLXGETFBCONFIGATTRIBPROC pglXGetFBConfigAttrib=0;
PFNGLXGETVISUALFROMFBCONFIGPROC pglXGetVisualFromFBConfig=0;
PFNGLXCREATEWINDOWPROC pglXCreateWindow=0;
PFNGLXDESTROYWINDOWPROC pglXDestroyWindow=0;
PFNGLXCREATEPIXMAPPROC pglXCreatePixmap=0;
PFNGLXDESTROYPIXMAPPROC pglXDestroyPixmap=0;
PFNGLXCREATEPBUFFERPROC pglXCreatePbuffer=0;
PFNGLXDESTROYPBUFFERPROC pglXDestroyPbuffer=0;
PFNGLXQUERYDRAWABLEPROC pglXQueryDrawable=0;
PFNGLXCREATENEWCONTEXTPROC pglXCreateNewContext=0;
PFNGLXMAKECONTEXTCURRENTPROC pglXMakeContextCurrent=0;
PFNGLXGETCURRENTREADDRAWABLEPROC pglXGetCurrentReadDrawable=0;
PFNGLXGETCURRENTDISPLAYPROC pglXGetCurrentDisplay=0;
PFNGLXQUERYCONTEXTPROC pglXQueryContext=0;
PFNGLXSELECTEVENTPROC pglXSelectEvent=0;
PFNGLXGETSELECTEDEVENTPROC pglXGetSelectedEvent=0;
#endif 

//GLX_VERSION_1_4

#ifdef __GLEE_GLX_VERSION_1_4
PFNGLXGETPROCADDRESSPROC pglXGetProcAddress=0;
#endif 

//GLX_ARB_multisample

#ifdef __GLEE_GLX_ARB_multisample
#endif 

//GLX_SGIS_multisample

#ifdef __GLEE_GLX_SGIS_multisample
#endif 

//GLX_EXT_visual_info

#ifdef __GLEE_GLX_EXT_visual_info
#endif 

//GLX_SGI_swap_control

#ifdef __GLEE_GLX_SGI_swap_control
PFNGLXSWAPINTERVALSGIPROC pglXSwapIntervalSGI=0;
#endif 

//GLX_SGI_video_sync

#ifdef __GLEE_GLX_SGI_video_sync
PFNGLXGETVIDEOSYNCSGIPROC pglXGetVideoSyncSGI=0;
PFNGLXWAITVIDEOSYNCSGIPROC pglXWaitVideoSyncSGI=0;
#endif 

//GLX_SGI_make_current_read

#ifdef __GLEE_GLX_SGI_make_current_read
PFNGLXMAKECURRENTREADSGIPROC pglXMakeCurrentReadSGI=0;
PFNGLXGETCURRENTREADDRAWABLESGIPROC pglXGetCurrentReadDrawableSGI=0;
#endif 

//GLX_EXT_visual_rating

#ifdef __GLEE_GLX_EXT_visual_rating
#endif 

//GLX_EXT_import_context

#ifdef __GLEE_GLX_EXT_import_context
PFNGLXGETCURRENTDISPLAYEXTPROC pglXGetCurrentDisplayEXT=0;
PFNGLXQUERYCONTEXTINFOEXTPROC pglXQueryContextInfoEXT=0;
PFNGLXGETCONTEXTIDEXTPROC pglXGetContextIDEXT=0;
PFNGLXIMPORTCONTEXTEXTPROC pglXImportContextEXT=0;
PFNGLXFREECONTEXTEXTPROC pglXFreeContextEXT=0;
#endif 

//GLX_SGIX_fbconfig

#ifdef __GLEE_GLX_SGIX_fbconfig
PFNGLXGETFBCONFIGATTRIBSGIXPROC pglXGetFBConfigAttribSGIX=0;
PFNGLXCHOOSEFBCONFIGSGIXPROC pglXChooseFBConfigSGIX=0;
PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC pglXCreateGLXPixmapWithConfigSGIX=0;
PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC pglXCreateContextWithConfigSGIX=0;
PFNGLXGETVISUALFROMFBCONFIGSGIXPROC pglXGetVisualFromFBConfigSGIX=0;
PFNGLXGETFBCONFIGFROMVISUALSGIXPROC pglXGetFBConfigFromVisualSGIX=0;
#endif 

//GLX_SGIX_pbuffer

#ifdef __GLEE_GLX_SGIX_pbuffer
PFNGLXCREATEGLXPBUFFERSGIXPROC pglXCreateGLXPbufferSGIX=0;
PFNGLXDESTROYGLXPBUFFERSGIXPROC pglXDestroyGLXPbufferSGIX=0;
PFNGLXQUERYGLXPBUFFERSGIXPROC pglXQueryGLXPbufferSGIX=0;
PFNGLXSELECTEVENTSGIXPROC pglXSelectEventSGIX=0;
PFNGLXGETSELECTEDEVENTSGIXPROC pglXGetSelectedEventSGIX=0;
#endif 

//GLX_SGI_cushion

#ifdef __GLEE_GLX_SGI_cushion
PFNGLXCUSHIONSGIPROC pglXCushionSGI=0;
#endif 

//GLX_SGIX_video_resize

#ifdef __GLEE_GLX_SGIX_video_resize
PFNGLXBINDCHANNELTOWINDOWSGIXPROC pglXBindChannelToWindowSGIX=0;
PFNGLXCHANNELRECTSGIXPROC pglXChannelRectSGIX=0;
PFNGLXQUERYCHANNELRECTSGIXPROC pglXQueryChannelRectSGIX=0;
PFNGLXQUERYCHANNELDELTASSGIXPROC pglXQueryChannelDeltasSGIX=0;
PFNGLXCHANNELRECTSYNCSGIXPROC pglXChannelRectSyncSGIX=0;
#endif 

//GLX_SGIX_swap_group

#ifdef __GLEE_GLX_SGIX_swap_group
PFNGLXJOINSWAPGROUPSGIXPROC pglXJoinSwapGroupSGIX=0;
#endif 

//GLX_SGIX_swap_barrier

#ifdef __GLEE_GLX_SGIX_swap_barrier
PFNGLXBINDSWAPBARRIERSGIXPROC pglXBindSwapBarrierSGIX=0;
PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC pglXQueryMaxSwapBarriersSGIX=0;
#endif 

//GLX_SGIS_blended_overlay

#ifdef __GLEE_GLX_SGIS_blended_overlay
#endif 

//GLX_SGIS_shared_multisample

#ifdef __GLEE_GLX_SGIS_shared_multisample
#endif 

//GLX_SUN_get_transparent_index

#ifdef __GLEE_GLX_SUN_get_transparent_index
PFNGLXGETTRANSPARENTINDEXSUNPROC pglXGetTransparentIndexSUN=0;
#endif 

//GLX_3DFX_multisample

#ifdef __GLEE_GLX_3DFX_multisample
#endif 

//GLX_MESA_copy_sub_buffer

#ifdef __GLEE_GLX_MESA_copy_sub_buffer
PFNGLXCOPYSUBBUFFERMESAPROC pglXCopySubBufferMESA=0;
#endif 

//GLX_MESA_pixmap_colormap

#ifdef __GLEE_GLX_MESA_pixmap_colormap
PFNGLXCREATEGLXPIXMAPMESAPROC pglXCreateGLXPixmapMESA=0;
#endif 

//GLX_MESA_release_buffers

#ifdef __GLEE_GLX_MESA_release_buffers
PFNGLXRELEASEBUFFERSMESAPROC pglXReleaseBuffersMESA=0;
#endif 

//GLX_MESA_set_3dfx_mode

#ifdef __GLEE_GLX_MESA_set_3dfx_mode
PFNGLXSET3DFXMODEMESAPROC pglXSet3DfxModeMESA=0;
#endif 

//GLX_SGIX_visual_select_group

#ifdef __GLEE_GLX_SGIX_visual_select_group
#endif 

//GLX_OML_swap_method

#ifdef __GLEE_GLX_OML_swap_method
#endif 

//GLX_OML_sync_control

#ifdef __GLEE_GLX_OML_sync_control
PFNGLXGETSYNCVALUESOMLPROC pglXGetSyncValuesOML=0;
PFNGLXGETMSCRATEOMLPROC pglXGetMscRateOML=0;
PFNGLXSWAPBUFFERSMSCOMLPROC pglXSwapBuffersMscOML=0;
PFNGLXWAITFORMSCOMLPROC pglXWaitForMscOML=0;
PFNGLXWAITFORSBCOMLPROC pglXWaitForSbcOML=0;
#endif 
#endif //end linux//////////////////////////////////////////////////////////////////
//GLee internal types
//////////////////////////////////////////////////////////////////
typedef struct 
{
	char ** names;
	int * lengths;
	int numNames;
}ExtensionList;


//////////////////////////////////////////////////////////////////
//GLee internal variables
//////////////////////////////////////////////////////////////////
char GLeeErrorString[256]="";


//////////////////////////////////////////////////////////////////
//GLee internal functions
//////////////////////////////////////////////////////////////////

//////////////////////////
//ExtensionList functions
//////////////////////////
void __GLeeExtList_init(ExtensionList *extList)
{
	extList->names=0;
	extList->lengths=0;
	extList->numNames=0;
}

void __GLeeExtList_clean(ExtensionList *extList)
{
	int a;
	for (a=0;a<extList->numNames;a++)
	{
		if (extList->names[a]!=0) free((void *)extList->names[a]);
	}
	if (extList->names!=0) free((void *)extList->names);
	if (extList->lengths!=0) free((void *)extList->lengths);
	extList->names=0;
	extList->lengths=0;
	extList->numNames=0;
}

void __GLeeExtList_add(ExtensionList *extList, const char * extName)
{
	int length=strlen(extName)+1;
	int i=extList->numNames;
	int n=i+1;
	if (i==0)
	{
		extList->lengths=(int *)malloc(sizeof(int));
		extList->names=(char **)malloc(sizeof(char *));
	}else
	{
		extList->lengths=(int *)realloc((void *)extList->lengths, n*sizeof(int));
		extList->names=(char **)realloc((void *)extList->names, n*sizeof(char *));
	}
	extList->names[i]=(char *)malloc(length*sizeof(char));
	strcpy(extList->names[i],extName);
	extList->lengths[i]=length;
	extList->numNames++;
}
///////////////////////////

const char *__GLeeGetExtStrPlat()
{
#ifdef WIN32
	if (!pwglGetExtensionsStringARB)
		pwglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC) wglGetProcAddress("wglGetExtensionsStringARB");

	if (pwglGetExtensionsStringARB)
		return (const char *)pwglGetExtensionsStringARB(wglGetCurrentDC());
#else
	Display *dpy=glXGetCurrentDisplay();
	if(dpy)
	{
		int dpynr=DefaultScreen(dpy);
		return (const char*)glXQueryExtensionsString(dpy,dpynr);
	}
#endif
	return 0;
}

void __GLeeWriteError(const char * errorStr)
{
	int a=0;
	for (a=0;a<256;a++)
	{
		GLeeErrorString[a]=errorStr[a];
	}
	GLeeErrorString[255]='\0';
}

double __GLeeGetVersionNumber(char *versionStr)
{
	char *endPtr=&versionStr[strlen(versionStr)-1];
	return strtod(versionStr,&endPtr)+0.01;
}

GLboolean __GLeeGetExtensions(ExtensionList* extList)
{
	const char * platExtStr;
	const char * glExtStr;
	char * extStr;
	int l;
	char extensionName[1024];
	int a,b;
	int numExtensions;
	int eNum;
	
	platExtStr=__GLeeGetExtStrPlat(); //platform specific extension string
	if (platExtStr==0) 
	{
		__GLeeWriteError("Couldn't get platform specific extensions");
		return GL_FALSE;
	}
	
	glExtStr=(const char *)glGetString(GL_EXTENSIONS);
	if (glExtStr==0) 
	{
		__GLeeWriteError("glGetString(GL_EXTENSIONS) failed.");
		return GL_FALSE;
	}

	l=strlen(platExtStr);
	
	//allocate the extension string
	extStr=(char *)malloc( (strlen(platExtStr)+strlen(glExtStr)+10) * sizeof(char) );

	//concatenate the two extension strings
	sprintf(extStr,"%s" "%s",platExtStr,glExtStr);
	l=strlen(extStr);

	//count the extensions
	numExtensions=0;
	for (a=0;extStr[a]!='\0';++a)
	{
		if (extStr[a]==' ') ++numExtensions;
	}

	//extract the extensions
	eNum=0;
	a=0;
	while (extStr[a]!='\0')
	{
		//read an extension name
		b=0;
		while (extStr[a]!=' ' && extStr[a]!='\0' && b<1022)
		{
			extensionName[b]=extStr[a];
			b++; a++;
		}
		if (b==1023)
		{
			__GLeeWriteError("Extension name exceeds 1023 characters.");
			free((void *)extStr);
			return GL_FALSE;
		}

		extensionName[b]='\0'; //null-terminate the extension name string

		//add the extension
		__GLeeExtList_add(extList,extensionName);

		eNum++;	a++; 
	}
	free((void *)extStr);
	return GL_TRUE;
}

GLboolean __GLeeCheckExtension(const char * name, ExtensionList *extensionNames)
{
	int n=extensionNames->numNames;
	int a;
    for (a=0;a<n;a++)
	{
		if (strcmp(extensionNames->names[a],name)==0)
			return GL_TRUE;
	}
	return GL_FALSE;
}


void * __GLeeGetProcAddress(const char *extname)
{
#ifdef WIN32
	return (void*)wglGetProcAddress(extname);
#else
	return (void*)glXGetProcAddressARB((const GLubyte *)extname);
#endif
}


///////////////////////////////////////////////////////////////////////////
// GLee external functions
///////////////////////////////////////////////////////////////////////////

#ifdef WIN32
GLEE_EXTERN const char * GLeeGetExtStrWGL()
{
	return __GLeeGetExtStrPlat();
}
#else
GLEE_EXTERN const char * GLeeGetExtStrGLX()	
{
	return __GLeeGetExtStrPlat();
}
#endif

GLEE_EXTERN const char * GLeeGetExtStrGL()
{
	return (const char *)glGetString(GL_EXTENSIONS);
}

GLEE_EXTERN const char * GLeeGetErrorString()
{
	return GLeeErrorString;
}

GLEE_EXTERN GLboolean GLeeInit()
{
	double version=1.1;
	ExtensionList extensionNames;
	__GLeeExtList_init(&extensionNames);
	if (!__GLeeGetExtensions(&extensionNames)) 
	{
		__GLeeWriteError("GL extension querying failed.");
		__GLeeExtList_clean(&extensionNames);
		return GL_FALSE;
	}

	version=__GLeeGetVersionNumber((char *)glGetString(GL_VERSION));

	//autogenerated linking follows
    if (version>=1.200000)
    {
        GLEE_VERSION_1_2 = GL_TRUE;
#ifdef __GLEE_GL_VERSION_1_2
        pglBlendColor = (PFNGLBLENDCOLORPROC) __GLeeGetProcAddress("glBlendColor");
        pglBlendEquation = (PFNGLBLENDEQUATIONPROC) __GLeeGetProcAddress("glBlendEquation");
        pglDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC) __GLeeGetProcAddress("glDrawRangeElements");
        pglColorTable = (PFNGLCOLORTABLEPROC) __GLeeGetProcAddress("glColorTable");
        pglColorTableParameterfv = (PFNGLCOLORTABLEPARAMETERFVPROC) __GLeeGetProcAddress("glColorTableParameterfv");
        pglColorTableParameteriv = (PFNGLCOLORTABLEPARAMETERIVPROC) __GLeeGetProcAddress("glColorTableParameteriv");
        pglCopyColorTable = (PFNGLCOPYCOLORTABLEPROC) __GLeeGetProcAddress("glCopyColorTable");
        pglGetColorTable = (PFNGLGETCOLORTABLEPROC) __GLeeGetProcAddress("glGetColorTable");
        pglGetColorTableParameterfv = (PFNGLGETCOLORTABLEPARAMETERFVPROC) __GLeeGetProcAddress("glGetColorTableParameterfv");
        pglGetColorTableParameteriv = (PFNGLGETCOLORTABLEPARAMETERIVPROC) __GLeeGetProcAddress("glGetColorTableParameteriv");
        pglColorSubTable = (PFNGLCOLORSUBTABLEPROC) __GLeeGetProcAddress("glColorSubTable");
        pglCopyColorSubTable = (PFNGLCOPYCOLORSUBTABLEPROC) __GLeeGetProcAddress("glCopyColorSubTable");
        pglConvolutionFilter1D = (PFNGLCONVOLUTIONFILTER1DPROC) __GLeeGetProcAddress("glConvolutionFilter1D");
        pglConvolutionFilter2D = (PFNGLCONVOLUTIONFILTER2DPROC) __GLeeGetProcAddress("glConvolutionFilter2D");
        pglConvolutionParameterf = (PFNGLCONVOLUTIONPARAMETERFPROC) __GLeeGetProcAddress("glConvolutionParameterf");
        pglConvolutionParameterfv = (PFNGLCONVOLUTIONPARAMETERFVPROC) __GLeeGetProcAddress("glConvolutionParameterfv");
        pglConvolutionParameteri = (PFNGLCONVOLUTIONPARAMETERIPROC) __GLeeGetProcAddress("glConvolutionParameteri");
        pglConvolutionParameteriv = (PFNGLCONVOLUTIONPARAMETERIVPROC) __GLeeGetProcAddress("glConvolutionParameteriv");
        pglCopyConvolutionFilter1D = (PFNGLCOPYCONVOLUTIONFILTER1DPROC) __GLeeGetProcAddress("glCopyConvolutionFilter1D");
        pglCopyConvolutionFilter2D = (PFNGLCOPYCONVOLUTIONFILTER2DPROC) __GLeeGetProcAddress("glCopyConvolutionFilter2D");
        pglGetConvolutionFilter = (PFNGLGETCONVOLUTIONFILTERPROC) __GLeeGetProcAddress("glGetConvolutionFilter");
        pglGetConvolutionParameterfv = (PFNGLGETCONVOLUTIONPARAMETERFVPROC) __GLeeGetProcAddress("glGetConvolutionParameterfv");
        pglGetConvolutionParameteriv = (PFNGLGETCONVOLUTIONPARAMETERIVPROC) __GLeeGetProcAddress("glGetConvolutionParameteriv");
        pglGetSeparableFilter = (PFNGLGETSEPARABLEFILTERPROC) __GLeeGetProcAddress("glGetSeparableFilter");
        pglSeparableFilter2D = (PFNGLSEPARABLEFILTER2DPROC) __GLeeGetProcAddress("glSeparableFilter2D");
        pglGetHistogram = (PFNGLGETHISTOGRAMPROC) __GLeeGetProcAddress("glGetHistogram");
        pglGetHistogramParameterfv = (PFNGLGETHISTOGRAMPARAMETERFVPROC) __GLeeGetProcAddress("glGetHistogramParameterfv");
        pglGetHistogramParameteriv = (PFNGLGETHISTOGRAMPARAMETERIVPROC) __GLeeGetProcAddress("glGetHistogramParameteriv");
        pglGetMinmax = (PFNGLGETMINMAXPROC) __GLeeGetProcAddress("glGetMinmax");
        pglGetMinmaxParameterfv = (PFNGLGETMINMAXPARAMETERFVPROC) __GLeeGetProcAddress("glGetMinmaxParameterfv");
        pglGetMinmaxParameteriv = (PFNGLGETMINMAXPARAMETERIVPROC) __GLeeGetProcAddress("glGetMinmaxParameteriv");
        pglHistogram = (PFNGLHISTOGRAMPROC) __GLeeGetProcAddress("glHistogram");
        pglMinmax = (PFNGLMINMAXPROC) __GLeeGetProcAddress("glMinmax");
        pglResetHistogram = (PFNGLRESETHISTOGRAMPROC) __GLeeGetProcAddress("glResetHistogram");
        pglResetMinmax = (PFNGLRESETMINMAXPROC) __GLeeGetProcAddress("glResetMinmax");
        pglTexImage3D = (PFNGLTEXIMAGE3DPROC) __GLeeGetProcAddress("glTexImage3D");
        pglTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC) __GLeeGetProcAddress("glTexSubImage3D");
        pglCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC) __GLeeGetProcAddress("glCopyTexSubImage3D");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_imaging", &extensionNames) )
    {
        GLEE_ARB_imaging = GL_TRUE;
#ifdef __GLEE_GL_ARB_imaging
#endif
    }
    if (version>=1.300000)
    {
        GLEE_VERSION_1_3 = GL_TRUE;
#ifdef __GLEE_GL_VERSION_1_3
        pglActiveTexture = (PFNGLACTIVETEXTUREPROC) __GLeeGetProcAddress("glActiveTexture");
        pglClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC) __GLeeGetProcAddress("glClientActiveTexture");
        pglMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC) __GLeeGetProcAddress("glMultiTexCoord1d");
        pglMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC) __GLeeGetProcAddress("glMultiTexCoord1dv");
        pglMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC) __GLeeGetProcAddress("glMultiTexCoord1f");
        pglMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC) __GLeeGetProcAddress("glMultiTexCoord1fv");
        pglMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC) __GLeeGetProcAddress("glMultiTexCoord1i");
        pglMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC) __GLeeGetProcAddress("glMultiTexCoord1iv");
        pglMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC) __GLeeGetProcAddress("glMultiTexCoord1s");
        pglMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC) __GLeeGetProcAddress("glMultiTexCoord1sv");
        pglMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC) __GLeeGetProcAddress("glMultiTexCoord2d");
        pglMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC) __GLeeGetProcAddress("glMultiTexCoord2dv");
        pglMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC) __GLeeGetProcAddress("glMultiTexCoord2f");
        pglMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC) __GLeeGetProcAddress("glMultiTexCoord2fv");
        pglMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC) __GLeeGetProcAddress("glMultiTexCoord2i");
        pglMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC) __GLeeGetProcAddress("glMultiTexCoord2iv");
        pglMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC) __GLeeGetProcAddress("glMultiTexCoord2s");
        pglMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC) __GLeeGetProcAddress("glMultiTexCoord2sv");
        pglMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC) __GLeeGetProcAddress("glMultiTexCoord3d");
        pglMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC) __GLeeGetProcAddress("glMultiTexCoord3dv");
        pglMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC) __GLeeGetProcAddress("glMultiTexCoord3f");
        pglMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC) __GLeeGetProcAddress("glMultiTexCoord3fv");
        pglMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC) __GLeeGetProcAddress("glMultiTexCoord3i");
        pglMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC) __GLeeGetProcAddress("glMultiTexCoord3iv");
        pglMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC) __GLeeGetProcAddress("glMultiTexCoord3s");
        pglMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC) __GLeeGetProcAddress("glMultiTexCoord3sv");
        pglMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC) __GLeeGetProcAddress("glMultiTexCoord4d");
        pglMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC) __GLeeGetProcAddress("glMultiTexCoord4dv");
        pglMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC) __GLeeGetProcAddress("glMultiTexCoord4f");
        pglMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC) __GLeeGetProcAddress("glMultiTexCoord4fv");
        pglMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC) __GLeeGetProcAddress("glMultiTexCoord4i");
        pglMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC) __GLeeGetProcAddress("glMultiTexCoord4iv");
        pglMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC) __GLeeGetProcAddress("glMultiTexCoord4s");
        pglMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC) __GLeeGetProcAddress("glMultiTexCoord4sv");
        pglLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC) __GLeeGetProcAddress("glLoadTransposeMatrixf");
        pglLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC) __GLeeGetProcAddress("glLoadTransposeMatrixd");
        pglMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC) __GLeeGetProcAddress("glMultTransposeMatrixf");
        pglMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC) __GLeeGetProcAddress("glMultTransposeMatrixd");
        pglSampleCoverage = (PFNGLSAMPLECOVERAGEPROC) __GLeeGetProcAddress("glSampleCoverage");
        pglCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC) __GLeeGetProcAddress("glCompressedTexImage3D");
        pglCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC) __GLeeGetProcAddress("glCompressedTexImage2D");
        pglCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC) __GLeeGetProcAddress("glCompressedTexImage1D");
        pglCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) __GLeeGetProcAddress("glCompressedTexSubImage3D");
        pglCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) __GLeeGetProcAddress("glCompressedTexSubImage2D");
        pglCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) __GLeeGetProcAddress("glCompressedTexSubImage1D");
        pglGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC) __GLeeGetProcAddress("glGetCompressedTexImage");
#endif
    }
    if (version>=1.400000)
    {
        GLEE_VERSION_1_4 = GL_TRUE;
#ifdef __GLEE_GL_VERSION_1_4
        pglBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC) __GLeeGetProcAddress("glBlendFuncSeparate");
        pglFogCoordf = (PFNGLFOGCOORDFPROC) __GLeeGetProcAddress("glFogCoordf");
        pglFogCoordfv = (PFNGLFOGCOORDFVPROC) __GLeeGetProcAddress("glFogCoordfv");
        pglFogCoordd = (PFNGLFOGCOORDDPROC) __GLeeGetProcAddress("glFogCoordd");
        pglFogCoorddv = (PFNGLFOGCOORDDVPROC) __GLeeGetProcAddress("glFogCoorddv");
        pglFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC) __GLeeGetProcAddress("glFogCoordPointer");
        pglMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC) __GLeeGetProcAddress("glMultiDrawArrays");
        pglMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC) __GLeeGetProcAddress("glMultiDrawElements");
        pglPointParameterf = (PFNGLPOINTPARAMETERFPROC) __GLeeGetProcAddress("glPointParameterf");
        pglPointParameterfv = (PFNGLPOINTPARAMETERFVPROC) __GLeeGetProcAddress("glPointParameterfv");
        pglPointParameteri = (PFNGLPOINTPARAMETERIPROC) __GLeeGetProcAddress("glPointParameteri");
        pglPointParameteriv = (PFNGLPOINTPARAMETERIVPROC) __GLeeGetProcAddress("glPointParameteriv");
        pglSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC) __GLeeGetProcAddress("glSecondaryColor3b");
        pglSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC) __GLeeGetProcAddress("glSecondaryColor3bv");
        pglSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC) __GLeeGetProcAddress("glSecondaryColor3d");
        pglSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC) __GLeeGetProcAddress("glSecondaryColor3dv");
        pglSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC) __GLeeGetProcAddress("glSecondaryColor3f");
        pglSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC) __GLeeGetProcAddress("glSecondaryColor3fv");
        pglSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC) __GLeeGetProcAddress("glSecondaryColor3i");
        pglSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC) __GLeeGetProcAddress("glSecondaryColor3iv");
        pglSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC) __GLeeGetProcAddress("glSecondaryColor3s");
        pglSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC) __GLeeGetProcAddress("glSecondaryColor3sv");
        pglSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC) __GLeeGetProcAddress("glSecondaryColor3ub");
        pglSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC) __GLeeGetProcAddress("glSecondaryColor3ubv");
        pglSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC) __GLeeGetProcAddress("glSecondaryColor3ui");
        pglSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC) __GLeeGetProcAddress("glSecondaryColor3uiv");
        pglSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC) __GLeeGetProcAddress("glSecondaryColor3us");
        pglSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC) __GLeeGetProcAddress("glSecondaryColor3usv");
        pglSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC) __GLeeGetProcAddress("glSecondaryColorPointer");
        pglWindowPos2d = (PFNGLWINDOWPOS2DPROC) __GLeeGetProcAddress("glWindowPos2d");
        pglWindowPos2dv = (PFNGLWINDOWPOS2DVPROC) __GLeeGetProcAddress("glWindowPos2dv");
        pglWindowPos2f = (PFNGLWINDOWPOS2FPROC) __GLeeGetProcAddress("glWindowPos2f");
        pglWindowPos2fv = (PFNGLWINDOWPOS2FVPROC) __GLeeGetProcAddress("glWindowPos2fv");
        pglWindowPos2i = (PFNGLWINDOWPOS2IPROC) __GLeeGetProcAddress("glWindowPos2i");
        pglWindowPos2iv = (PFNGLWINDOWPOS2IVPROC) __GLeeGetProcAddress("glWindowPos2iv");
        pglWindowPos2s = (PFNGLWINDOWPOS2SPROC) __GLeeGetProcAddress("glWindowPos2s");
        pglWindowPos2sv = (PFNGLWINDOWPOS2SVPROC) __GLeeGetProcAddress("glWindowPos2sv");
        pglWindowPos3d = (PFNGLWINDOWPOS3DPROC) __GLeeGetProcAddress("glWindowPos3d");
        pglWindowPos3dv = (PFNGLWINDOWPOS3DVPROC) __GLeeGetProcAddress("glWindowPos3dv");
        pglWindowPos3f = (PFNGLWINDOWPOS3FPROC) __GLeeGetProcAddress("glWindowPos3f");
        pglWindowPos3fv = (PFNGLWINDOWPOS3FVPROC) __GLeeGetProcAddress("glWindowPos3fv");
        pglWindowPos3i = (PFNGLWINDOWPOS3IPROC) __GLeeGetProcAddress("glWindowPos3i");
        pglWindowPos3iv = (PFNGLWINDOWPOS3IVPROC) __GLeeGetProcAddress("glWindowPos3iv");
        pglWindowPos3s = (PFNGLWINDOWPOS3SPROC) __GLeeGetProcAddress("glWindowPos3s");
        pglWindowPos3sv = (PFNGLWINDOWPOS3SVPROC) __GLeeGetProcAddress("glWindowPos3sv");
#endif
    }
    if (version>=1.500000)
    {
        GLEE_VERSION_1_5 = GL_TRUE;
#ifdef __GLEE_GL_VERSION_1_5
        pglGenQueries = (PFNGLGENQUERIESPROC) __GLeeGetProcAddress("glGenQueries");
        pglDeleteQueries = (PFNGLDELETEQUERIESPROC) __GLeeGetProcAddress("glDeleteQueries");
        pglIsQuery = (PFNGLISQUERYPROC) __GLeeGetProcAddress("glIsQuery");
        pglBeginQuery = (PFNGLBEGINQUERYPROC) __GLeeGetProcAddress("glBeginQuery");
        pglEndQuery = (PFNGLENDQUERYPROC) __GLeeGetProcAddress("glEndQuery");
        pglGetQueryiv = (PFNGLGETQUERYIVPROC) __GLeeGetProcAddress("glGetQueryiv");
        pglGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC) __GLeeGetProcAddress("glGetQueryObjectiv");
        pglGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC) __GLeeGetProcAddress("glGetQueryObjectuiv");
        pglBindBuffer = (PFNGLBINDBUFFERPROC) __GLeeGetProcAddress("glBindBuffer");
        pglDeleteBuffers = (PFNGLDELETEBUFFERSPROC) __GLeeGetProcAddress("glDeleteBuffers");
        pglGenBuffers = (PFNGLGENBUFFERSPROC) __GLeeGetProcAddress("glGenBuffers");
        pglIsBuffer = (PFNGLISBUFFERPROC) __GLeeGetProcAddress("glIsBuffer");
        pglBufferData = (PFNGLBUFFERDATAPROC) __GLeeGetProcAddress("glBufferData");
        pglBufferSubData = (PFNGLBUFFERSUBDATAPROC) __GLeeGetProcAddress("glBufferSubData");
        pglGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC) __GLeeGetProcAddress("glGetBufferSubData");
        pglMapBuffer = (PFNGLMAPBUFFERPROC) __GLeeGetProcAddress("glMapBuffer");
        pglUnmapBuffer = (PFNGLUNMAPBUFFERPROC) __GLeeGetProcAddress("glUnmapBuffer");
        pglGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC) __GLeeGetProcAddress("glGetBufferParameteriv");
        pglGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC) __GLeeGetProcAddress("glGetBufferPointerv");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_multitexture", &extensionNames) )
    {
        GLEE_ARB_multitexture = GL_TRUE;
#ifdef __GLEE_GL_ARB_multitexture
        pglActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC) __GLeeGetProcAddress("glActiveTextureARB");
        pglClientActiveTextureARB = (PFNGLCLIENTACTIVETEXTUREARBPROC) __GLeeGetProcAddress("glClientActiveTextureARB");
        pglMultiTexCoord1dARB = (PFNGLMULTITEXCOORD1DARBPROC) __GLeeGetProcAddress("glMultiTexCoord1dARB");
        pglMultiTexCoord1dvARB = (PFNGLMULTITEXCOORD1DVARBPROC) __GLeeGetProcAddress("glMultiTexCoord1dvARB");
        pglMultiTexCoord1fARB = (PFNGLMULTITEXCOORD1FARBPROC) __GLeeGetProcAddress("glMultiTexCoord1fARB");
        pglMultiTexCoord1fvARB = (PFNGLMULTITEXCOORD1FVARBPROC) __GLeeGetProcAddress("glMultiTexCoord1fvARB");
        pglMultiTexCoord1iARB = (PFNGLMULTITEXCOORD1IARBPROC) __GLeeGetProcAddress("glMultiTexCoord1iARB");
        pglMultiTexCoord1ivARB = (PFNGLMULTITEXCOORD1IVARBPROC) __GLeeGetProcAddress("glMultiTexCoord1ivARB");
        pglMultiTexCoord1sARB = (PFNGLMULTITEXCOORD1SARBPROC) __GLeeGetProcAddress("glMultiTexCoord1sARB");
        pglMultiTexCoord1svARB = (PFNGLMULTITEXCOORD1SVARBPROC) __GLeeGetProcAddress("glMultiTexCoord1svARB");
        pglMultiTexCoord2dARB = (PFNGLMULTITEXCOORD2DARBPROC) __GLeeGetProcAddress("glMultiTexCoord2dARB");
        pglMultiTexCoord2dvARB = (PFNGLMULTITEXCOORD2DVARBPROC) __GLeeGetProcAddress("glMultiTexCoord2dvARB");
        pglMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC) __GLeeGetProcAddress("glMultiTexCoord2fARB");
        pglMultiTexCoord2fvARB = (PFNGLMULTITEXCOORD2FVARBPROC) __GLeeGetProcAddress("glMultiTexCoord2fvARB");
        pglMultiTexCoord2iARB = (PFNGLMULTITEXCOORD2IARBPROC) __GLeeGetProcAddress("glMultiTexCoord2iARB");
        pglMultiTexCoord2ivARB = (PFNGLMULTITEXCOORD2IVARBPROC) __GLeeGetProcAddress("glMultiTexCoord2ivARB");
        pglMultiTexCoord2sARB = (PFNGLMULTITEXCOORD2SARBPROC) __GLeeGetProcAddress("glMultiTexCoord2sARB");
        pglMultiTexCoord2svARB = (PFNGLMULTITEXCOORD2SVARBPROC) __GLeeGetProcAddress("glMultiTexCoord2svARB");
        pglMultiTexCoord3dARB = (PFNGLMULTITEXCOORD3DARBPROC) __GLeeGetProcAddress("glMultiTexCoord3dARB");
        pglMultiTexCoord3dvARB = (PFNGLMULTITEXCOORD3DVARBPROC) __GLeeGetProcAddress("glMultiTexCoord3dvARB");
        pglMultiTexCoord3fARB = (PFNGLMULTITEXCOORD3FARBPROC) __GLeeGetProcAddress("glMultiTexCoord3fARB");
        pglMultiTexCoord3fvARB = (PFNGLMULTITEXCOORD3FVARBPROC) __GLeeGetProcAddress("glMultiTexCoord3fvARB");
        pglMultiTexCoord3iARB = (PFNGLMULTITEXCOORD3IARBPROC) __GLeeGetProcAddress("glMultiTexCoord3iARB");
        pglMultiTexCoord3ivARB = (PFNGLMULTITEXCOORD3IVARBPROC) __GLeeGetProcAddress("glMultiTexCoord3ivARB");
        pglMultiTexCoord3sARB = (PFNGLMULTITEXCOORD3SARBPROC) __GLeeGetProcAddress("glMultiTexCoord3sARB");
        pglMultiTexCoord3svARB = (PFNGLMULTITEXCOORD3SVARBPROC) __GLeeGetProcAddress("glMultiTexCoord3svARB");
        pglMultiTexCoord4dARB = (PFNGLMULTITEXCOORD4DARBPROC) __GLeeGetProcAddress("glMultiTexCoord4dARB");
        pglMultiTexCoord4dvARB = (PFNGLMULTITEXCOORD4DVARBPROC) __GLeeGetProcAddress("glMultiTexCoord4dvARB");
        pglMultiTexCoord4fARB = (PFNGLMULTITEXCOORD4FARBPROC) __GLeeGetProcAddress("glMultiTexCoord4fARB");
        pglMultiTexCoord4fvARB = (PFNGLMULTITEXCOORD4FVARBPROC) __GLeeGetProcAddress("glMultiTexCoord4fvARB");
        pglMultiTexCoord4iARB = (PFNGLMULTITEXCOORD4IARBPROC) __GLeeGetProcAddress("glMultiTexCoord4iARB");
        pglMultiTexCoord4ivARB = (PFNGLMULTITEXCOORD4IVARBPROC) __GLeeGetProcAddress("glMultiTexCoord4ivARB");
        pglMultiTexCoord4sARB = (PFNGLMULTITEXCOORD4SARBPROC) __GLeeGetProcAddress("glMultiTexCoord4sARB");
        pglMultiTexCoord4svARB = (PFNGLMULTITEXCOORD4SVARBPROC) __GLeeGetProcAddress("glMultiTexCoord4svARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_transpose_matrix", &extensionNames) )
    {
        GLEE_ARB_transpose_matrix = GL_TRUE;
#ifdef __GLEE_GL_ARB_transpose_matrix
        pglLoadTransposeMatrixfARB = (PFNGLLOADTRANSPOSEMATRIXFARBPROC) __GLeeGetProcAddress("glLoadTransposeMatrixfARB");
        pglLoadTransposeMatrixdARB = (PFNGLLOADTRANSPOSEMATRIXDARBPROC) __GLeeGetProcAddress("glLoadTransposeMatrixdARB");
        pglMultTransposeMatrixfARB = (PFNGLMULTTRANSPOSEMATRIXFARBPROC) __GLeeGetProcAddress("glMultTransposeMatrixfARB");
        pglMultTransposeMatrixdARB = (PFNGLMULTTRANSPOSEMATRIXDARBPROC) __GLeeGetProcAddress("glMultTransposeMatrixdARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_multisample", &extensionNames) )
    {
        GLEE_ARB_multisample = GL_TRUE;
#ifdef __GLEE_GL_ARB_multisample
        pglSampleCoverageARB = (PFNGLSAMPLECOVERAGEARBPROC) __GLeeGetProcAddress("glSampleCoverageARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_env_add", &extensionNames) )
    {
        GLEE_ARB_texture_env_add = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_env_add
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_cube_map", &extensionNames) )
    {
        GLEE_ARB_texture_cube_map = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_cube_map
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_compression", &extensionNames) )
    {
        GLEE_ARB_texture_compression = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_compression
        pglCompressedTexImage3DARB = (PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) __GLeeGetProcAddress("glCompressedTexImage3DARB");
        pglCompressedTexImage2DARB = (PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) __GLeeGetProcAddress("glCompressedTexImage2DARB");
        pglCompressedTexImage1DARB = (PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) __GLeeGetProcAddress("glCompressedTexImage1DARB");
        pglCompressedTexSubImage3DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) __GLeeGetProcAddress("glCompressedTexSubImage3DARB");
        pglCompressedTexSubImage2DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) __GLeeGetProcAddress("glCompressedTexSubImage2DARB");
        pglCompressedTexSubImage1DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) __GLeeGetProcAddress("glCompressedTexSubImage1DARB");
        pglGetCompressedTexImageARB = (PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) __GLeeGetProcAddress("glGetCompressedTexImageARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_border_clamp", &extensionNames) )
    {
        GLEE_ARB_texture_border_clamp = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_border_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_point_parameters", &extensionNames) )
    {
        GLEE_ARB_point_parameters = GL_TRUE;
#ifdef __GLEE_GL_ARB_point_parameters
        pglPointParameterfARB = (PFNGLPOINTPARAMETERFARBPROC) __GLeeGetProcAddress("glPointParameterfARB");
        pglPointParameterfvARB = (PFNGLPOINTPARAMETERFVARBPROC) __GLeeGetProcAddress("glPointParameterfvARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_vertex_blend", &extensionNames) )
    {
        GLEE_ARB_vertex_blend = GL_TRUE;
#ifdef __GLEE_GL_ARB_vertex_blend
        pglWeightbvARB = (PFNGLWEIGHTBVARBPROC) __GLeeGetProcAddress("glWeightbvARB");
        pglWeightsvARB = (PFNGLWEIGHTSVARBPROC) __GLeeGetProcAddress("glWeightsvARB");
        pglWeightivARB = (PFNGLWEIGHTIVARBPROC) __GLeeGetProcAddress("glWeightivARB");
        pglWeightfvARB = (PFNGLWEIGHTFVARBPROC) __GLeeGetProcAddress("glWeightfvARB");
        pglWeightdvARB = (PFNGLWEIGHTDVARBPROC) __GLeeGetProcAddress("glWeightdvARB");
        pglWeightubvARB = (PFNGLWEIGHTUBVARBPROC) __GLeeGetProcAddress("glWeightubvARB");
        pglWeightusvARB = (PFNGLWEIGHTUSVARBPROC) __GLeeGetProcAddress("glWeightusvARB");
        pglWeightuivARB = (PFNGLWEIGHTUIVARBPROC) __GLeeGetProcAddress("glWeightuivARB");
        pglWeightPointerARB = (PFNGLWEIGHTPOINTERARBPROC) __GLeeGetProcAddress("glWeightPointerARB");
        pglVertexBlendARB = (PFNGLVERTEXBLENDARBPROC) __GLeeGetProcAddress("glVertexBlendARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_matrix_palette", &extensionNames) )
    {
        GLEE_ARB_matrix_palette = GL_TRUE;
#ifdef __GLEE_GL_ARB_matrix_palette
        pglCurrentPaletteMatrixARB = (PFNGLCURRENTPALETTEMATRIXARBPROC) __GLeeGetProcAddress("glCurrentPaletteMatrixARB");
        pglMatrixIndexubvARB = (PFNGLMATRIXINDEXUBVARBPROC) __GLeeGetProcAddress("glMatrixIndexubvARB");
        pglMatrixIndexusvARB = (PFNGLMATRIXINDEXUSVARBPROC) __GLeeGetProcAddress("glMatrixIndexusvARB");
        pglMatrixIndexuivARB = (PFNGLMATRIXINDEXUIVARBPROC) __GLeeGetProcAddress("glMatrixIndexuivARB");
        pglMatrixIndexPointerARB = (PFNGLMATRIXINDEXPOINTERARBPROC) __GLeeGetProcAddress("glMatrixIndexPointerARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_env_combine", &extensionNames) )
    {
        GLEE_ARB_texture_env_combine = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_env_combine
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_env_crossbar", &extensionNames) )
    {
        GLEE_ARB_texture_env_crossbar = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_env_crossbar
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_env_dot3", &extensionNames) )
    {
        GLEE_ARB_texture_env_dot3 = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_env_dot3
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_mirrored_repeat", &extensionNames) )
    {
        GLEE_ARB_texture_mirrored_repeat = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_mirrored_repeat
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_depth_texture", &extensionNames) )
    {
        GLEE_ARB_depth_texture = GL_TRUE;
#ifdef __GLEE_GL_ARB_depth_texture
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_shadow", &extensionNames) )
    {
        GLEE_ARB_shadow = GL_TRUE;
#ifdef __GLEE_GL_ARB_shadow
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_shadow_ambient", &extensionNames) )
    {
        GLEE_ARB_shadow_ambient = GL_TRUE;
#ifdef __GLEE_GL_ARB_shadow_ambient
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_window_pos", &extensionNames) )
    {
        GLEE_ARB_window_pos = GL_TRUE;
#ifdef __GLEE_GL_ARB_window_pos
        pglWindowPos2dARB = (PFNGLWINDOWPOS2DARBPROC) __GLeeGetProcAddress("glWindowPos2dARB");
        pglWindowPos2dvARB = (PFNGLWINDOWPOS2DVARBPROC) __GLeeGetProcAddress("glWindowPos2dvARB");
        pglWindowPos2fARB = (PFNGLWINDOWPOS2FARBPROC) __GLeeGetProcAddress("glWindowPos2fARB");
        pglWindowPos2fvARB = (PFNGLWINDOWPOS2FVARBPROC) __GLeeGetProcAddress("glWindowPos2fvARB");
        pglWindowPos2iARB = (PFNGLWINDOWPOS2IARBPROC) __GLeeGetProcAddress("glWindowPos2iARB");
        pglWindowPos2ivARB = (PFNGLWINDOWPOS2IVARBPROC) __GLeeGetProcAddress("glWindowPos2ivARB");
        pglWindowPos2sARB = (PFNGLWINDOWPOS2SARBPROC) __GLeeGetProcAddress("glWindowPos2sARB");
        pglWindowPos2svARB = (PFNGLWINDOWPOS2SVARBPROC) __GLeeGetProcAddress("glWindowPos2svARB");
        pglWindowPos3dARB = (PFNGLWINDOWPOS3DARBPROC) __GLeeGetProcAddress("glWindowPos3dARB");
        pglWindowPos3dvARB = (PFNGLWINDOWPOS3DVARBPROC) __GLeeGetProcAddress("glWindowPos3dvARB");
        pglWindowPos3fARB = (PFNGLWINDOWPOS3FARBPROC) __GLeeGetProcAddress("glWindowPos3fARB");
        pglWindowPos3fvARB = (PFNGLWINDOWPOS3FVARBPROC) __GLeeGetProcAddress("glWindowPos3fvARB");
        pglWindowPos3iARB = (PFNGLWINDOWPOS3IARBPROC) __GLeeGetProcAddress("glWindowPos3iARB");
        pglWindowPos3ivARB = (PFNGLWINDOWPOS3IVARBPROC) __GLeeGetProcAddress("glWindowPos3ivARB");
        pglWindowPos3sARB = (PFNGLWINDOWPOS3SARBPROC) __GLeeGetProcAddress("glWindowPos3sARB");
        pglWindowPos3svARB = (PFNGLWINDOWPOS3SVARBPROC) __GLeeGetProcAddress("glWindowPos3svARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_vertex_program", &extensionNames) )
    {
        GLEE_ARB_vertex_program = GL_TRUE;
#ifdef __GLEE_GL_ARB_vertex_program
        pglVertexAttrib1dARB = (PFNGLVERTEXATTRIB1DARBPROC) __GLeeGetProcAddress("glVertexAttrib1dARB");
        pglVertexAttrib1dvARB = (PFNGLVERTEXATTRIB1DVARBPROC) __GLeeGetProcAddress("glVertexAttrib1dvARB");
        pglVertexAttrib1fARB = (PFNGLVERTEXATTRIB1FARBPROC) __GLeeGetProcAddress("glVertexAttrib1fARB");
        pglVertexAttrib1fvARB = (PFNGLVERTEXATTRIB1FVARBPROC) __GLeeGetProcAddress("glVertexAttrib1fvARB");
        pglVertexAttrib1sARB = (PFNGLVERTEXATTRIB1SARBPROC) __GLeeGetProcAddress("glVertexAttrib1sARB");
        pglVertexAttrib1svARB = (PFNGLVERTEXATTRIB1SVARBPROC) __GLeeGetProcAddress("glVertexAttrib1svARB");
        pglVertexAttrib2dARB = (PFNGLVERTEXATTRIB2DARBPROC) __GLeeGetProcAddress("glVertexAttrib2dARB");
        pglVertexAttrib2dvARB = (PFNGLVERTEXATTRIB2DVARBPROC) __GLeeGetProcAddress("glVertexAttrib2dvARB");
        pglVertexAttrib2fARB = (PFNGLVERTEXATTRIB2FARBPROC) __GLeeGetProcAddress("glVertexAttrib2fARB");
        pglVertexAttrib2fvARB = (PFNGLVERTEXATTRIB2FVARBPROC) __GLeeGetProcAddress("glVertexAttrib2fvARB");
        pglVertexAttrib2sARB = (PFNGLVERTEXATTRIB2SARBPROC) __GLeeGetProcAddress("glVertexAttrib2sARB");
        pglVertexAttrib2svARB = (PFNGLVERTEXATTRIB2SVARBPROC) __GLeeGetProcAddress("glVertexAttrib2svARB");
        pglVertexAttrib3dARB = (PFNGLVERTEXATTRIB3DARBPROC) __GLeeGetProcAddress("glVertexAttrib3dARB");
        pglVertexAttrib3dvARB = (PFNGLVERTEXATTRIB3DVARBPROC) __GLeeGetProcAddress("glVertexAttrib3dvARB");
        pglVertexAttrib3fARB = (PFNGLVERTEXATTRIB3FARBPROC) __GLeeGetProcAddress("glVertexAttrib3fARB");
        pglVertexAttrib3fvARB = (PFNGLVERTEXATTRIB3FVARBPROC) __GLeeGetProcAddress("glVertexAttrib3fvARB");
        pglVertexAttrib3sARB = (PFNGLVERTEXATTRIB3SARBPROC) __GLeeGetProcAddress("glVertexAttrib3sARB");
        pglVertexAttrib3svARB = (PFNGLVERTEXATTRIB3SVARBPROC) __GLeeGetProcAddress("glVertexAttrib3svARB");
        pglVertexAttrib4NbvARB = (PFNGLVERTEXATTRIB4NBVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NbvARB");
        pglVertexAttrib4NivARB = (PFNGLVERTEXATTRIB4NIVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NivARB");
        pglVertexAttrib4NsvARB = (PFNGLVERTEXATTRIB4NSVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NsvARB");
        pglVertexAttrib4NubARB = (PFNGLVERTEXATTRIB4NUBARBPROC) __GLeeGetProcAddress("glVertexAttrib4NubARB");
        pglVertexAttrib4NubvARB = (PFNGLVERTEXATTRIB4NUBVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NubvARB");
        pglVertexAttrib4NuivARB = (PFNGLVERTEXATTRIB4NUIVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NuivARB");
        pglVertexAttrib4NusvARB = (PFNGLVERTEXATTRIB4NUSVARBPROC) __GLeeGetProcAddress("glVertexAttrib4NusvARB");
        pglVertexAttrib4bvARB = (PFNGLVERTEXATTRIB4BVARBPROC) __GLeeGetProcAddress("glVertexAttrib4bvARB");
        pglVertexAttrib4dARB = (PFNGLVERTEXATTRIB4DARBPROC) __GLeeGetProcAddress("glVertexAttrib4dARB");
        pglVertexAttrib4dvARB = (PFNGLVERTEXATTRIB4DVARBPROC) __GLeeGetProcAddress("glVertexAttrib4dvARB");
        pglVertexAttrib4fARB = (PFNGLVERTEXATTRIB4FARBPROC) __GLeeGetProcAddress("glVertexAttrib4fARB");
        pglVertexAttrib4fvARB = (PFNGLVERTEXATTRIB4FVARBPROC) __GLeeGetProcAddress("glVertexAttrib4fvARB");
        pglVertexAttrib4ivARB = (PFNGLVERTEXATTRIB4IVARBPROC) __GLeeGetProcAddress("glVertexAttrib4ivARB");
        pglVertexAttrib4sARB = (PFNGLVERTEXATTRIB4SARBPROC) __GLeeGetProcAddress("glVertexAttrib4sARB");
        pglVertexAttrib4svARB = (PFNGLVERTEXATTRIB4SVARBPROC) __GLeeGetProcAddress("glVertexAttrib4svARB");
        pglVertexAttrib4ubvARB = (PFNGLVERTEXATTRIB4UBVARBPROC) __GLeeGetProcAddress("glVertexAttrib4ubvARB");
        pglVertexAttrib4uivARB = (PFNGLVERTEXATTRIB4UIVARBPROC) __GLeeGetProcAddress("glVertexAttrib4uivARB");
        pglVertexAttrib4usvARB = (PFNGLVERTEXATTRIB4USVARBPROC) __GLeeGetProcAddress("glVertexAttrib4usvARB");
        pglVertexAttribPointerARB = (PFNGLVERTEXATTRIBPOINTERARBPROC) __GLeeGetProcAddress("glVertexAttribPointerARB");
        pglEnableVertexAttribArrayARB = (PFNGLENABLEVERTEXATTRIBARRAYARBPROC) __GLeeGetProcAddress("glEnableVertexAttribArrayARB");
        pglDisableVertexAttribArrayARB = (PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) __GLeeGetProcAddress("glDisableVertexAttribArrayARB");
        pglProgramStringARB = (PFNGLPROGRAMSTRINGARBPROC) __GLeeGetProcAddress("glProgramStringARB");
        pglBindProgramARB = (PFNGLBINDPROGRAMARBPROC) __GLeeGetProcAddress("glBindProgramARB");
        pglDeleteProgramsARB = (PFNGLDELETEPROGRAMSARBPROC) __GLeeGetProcAddress("glDeleteProgramsARB");
        pglGenProgramsARB = (PFNGLGENPROGRAMSARBPROC) __GLeeGetProcAddress("glGenProgramsARB");
        pglProgramEnvParameter4dARB = (PFNGLPROGRAMENVPARAMETER4DARBPROC) __GLeeGetProcAddress("glProgramEnvParameter4dARB");
        pglProgramEnvParameter4dvARB = (PFNGLPROGRAMENVPARAMETER4DVARBPROC) __GLeeGetProcAddress("glProgramEnvParameter4dvARB");
        pglProgramEnvParameter4fARB = (PFNGLPROGRAMENVPARAMETER4FARBPROC) __GLeeGetProcAddress("glProgramEnvParameter4fARB");
        pglProgramEnvParameter4fvARB = (PFNGLPROGRAMENVPARAMETER4FVARBPROC) __GLeeGetProcAddress("glProgramEnvParameter4fvARB");
        pglProgramLocalParameter4dARB = (PFNGLPROGRAMLOCALPARAMETER4DARBPROC) __GLeeGetProcAddress("glProgramLocalParameter4dARB");
        pglProgramLocalParameter4dvARB = (PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) __GLeeGetProcAddress("glProgramLocalParameter4dvARB");
        pglProgramLocalParameter4fARB = (PFNGLPROGRAMLOCALPARAMETER4FARBPROC) __GLeeGetProcAddress("glProgramLocalParameter4fARB");
        pglProgramLocalParameter4fvARB = (PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) __GLeeGetProcAddress("glProgramLocalParameter4fvARB");
        pglGetProgramEnvParameterdvARB = (PFNGLGETPROGRAMENVPARAMETERDVARBPROC) __GLeeGetProcAddress("glGetProgramEnvParameterdvARB");
        pglGetProgramEnvParameterfvARB = (PFNGLGETPROGRAMENVPARAMETERFVARBPROC) __GLeeGetProcAddress("glGetProgramEnvParameterfvARB");
        pglGetProgramLocalParameterdvARB = (PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) __GLeeGetProcAddress("glGetProgramLocalParameterdvARB");
        pglGetProgramLocalParameterfvARB = (PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) __GLeeGetProcAddress("glGetProgramLocalParameterfvARB");
        pglGetProgramivARB = (PFNGLGETPROGRAMIVARBPROC) __GLeeGetProcAddress("glGetProgramivARB");
        pglGetProgramStringARB = (PFNGLGETPROGRAMSTRINGARBPROC) __GLeeGetProcAddress("glGetProgramStringARB");
        pglGetVertexAttribdvARB = (PFNGLGETVERTEXATTRIBDVARBPROC) __GLeeGetProcAddress("glGetVertexAttribdvARB");
        pglGetVertexAttribfvARB = (PFNGLGETVERTEXATTRIBFVARBPROC) __GLeeGetProcAddress("glGetVertexAttribfvARB");
        pglGetVertexAttribivARB = (PFNGLGETVERTEXATTRIBIVARBPROC) __GLeeGetProcAddress("glGetVertexAttribivARB");
        pglGetVertexAttribPointervARB = (PFNGLGETVERTEXATTRIBPOINTERVARBPROC) __GLeeGetProcAddress("glGetVertexAttribPointervARB");
        pglIsProgramARB = (PFNGLISPROGRAMARBPROC) __GLeeGetProcAddress("glIsProgramARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_fragment_program", &extensionNames) )
    {
        GLEE_ARB_fragment_program = GL_TRUE;
#ifdef __GLEE_GL_ARB_fragment_program
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_vertex_buffer_object", &extensionNames) )
    {
        GLEE_ARB_vertex_buffer_object = GL_TRUE;
#ifdef __GLEE_GL_ARB_vertex_buffer_object
        pglBindBufferARB = (PFNGLBINDBUFFERARBPROC) __GLeeGetProcAddress("glBindBufferARB");
        pglDeleteBuffersARB = (PFNGLDELETEBUFFERSARBPROC) __GLeeGetProcAddress("glDeleteBuffersARB");
        pglGenBuffersARB = (PFNGLGENBUFFERSARBPROC) __GLeeGetProcAddress("glGenBuffersARB");
        pglIsBufferARB = (PFNGLISBUFFERARBPROC) __GLeeGetProcAddress("glIsBufferARB");
        pglBufferDataARB = (PFNGLBUFFERDATAARBPROC) __GLeeGetProcAddress("glBufferDataARB");
        pglBufferSubDataARB = (PFNGLBUFFERSUBDATAARBPROC) __GLeeGetProcAddress("glBufferSubDataARB");
        pglGetBufferSubDataARB = (PFNGLGETBUFFERSUBDATAARBPROC) __GLeeGetProcAddress("glGetBufferSubDataARB");
        pglMapBufferARB = (PFNGLMAPBUFFERARBPROC) __GLeeGetProcAddress("glMapBufferARB");
        pglUnmapBufferARB = (PFNGLUNMAPBUFFERARBPROC) __GLeeGetProcAddress("glUnmapBufferARB");
        pglGetBufferParameterivARB = (PFNGLGETBUFFERPARAMETERIVARBPROC) __GLeeGetProcAddress("glGetBufferParameterivARB");
        pglGetBufferPointervARB = (PFNGLGETBUFFERPOINTERVARBPROC) __GLeeGetProcAddress("glGetBufferPointervARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_occlusion_query", &extensionNames) )
    {
        GLEE_ARB_occlusion_query = GL_TRUE;
#ifdef __GLEE_GL_ARB_occlusion_query
        pglGenQueriesARB = (PFNGLGENQUERIESARBPROC) __GLeeGetProcAddress("glGenQueriesARB");
        pglDeleteQueriesARB = (PFNGLDELETEQUERIESARBPROC) __GLeeGetProcAddress("glDeleteQueriesARB");
        pglIsQueryARB = (PFNGLISQUERYARBPROC) __GLeeGetProcAddress("glIsQueryARB");
        pglBeginQueryARB = (PFNGLBEGINQUERYARBPROC) __GLeeGetProcAddress("glBeginQueryARB");
        pglEndQueryARB = (PFNGLENDQUERYARBPROC) __GLeeGetProcAddress("glEndQueryARB");
        pglGetQueryivARB = (PFNGLGETQUERYIVARBPROC) __GLeeGetProcAddress("glGetQueryivARB");
        pglGetQueryObjectivARB = (PFNGLGETQUERYOBJECTIVARBPROC) __GLeeGetProcAddress("glGetQueryObjectivARB");
        pglGetQueryObjectuivARB = (PFNGLGETQUERYOBJECTUIVARBPROC) __GLeeGetProcAddress("glGetQueryObjectuivARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_shader_objects", &extensionNames) )
    {
        GLEE_ARB_shader_objects = GL_TRUE;
#ifdef __GLEE_GL_ARB_shader_objects
        pglDeleteObjectARB = (PFNGLDELETEOBJECTARBPROC) __GLeeGetProcAddress("glDeleteObjectARB");
        pglGetHandleARB = (PFNGLGETHANDLEARBPROC) __GLeeGetProcAddress("glGetHandleARB");
        pglDetachObjectARB = (PFNGLDETACHOBJECTARBPROC) __GLeeGetProcAddress("glDetachObjectARB");
        pglCreateShaderObjectARB = (PFNGLCREATESHADEROBJECTARBPROC) __GLeeGetProcAddress("glCreateShaderObjectARB");
        pglShaderSourceARB = (PFNGLSHADERSOURCEARBPROC) __GLeeGetProcAddress("glShaderSourceARB");
        pglCompileShaderARB = (PFNGLCOMPILESHADERARBPROC) __GLeeGetProcAddress("glCompileShaderARB");
        pglCreateProgramObjectARB = (PFNGLCREATEPROGRAMOBJECTARBPROC) __GLeeGetProcAddress("glCreateProgramObjectARB");
        pglAttachObjectARB = (PFNGLATTACHOBJECTARBPROC) __GLeeGetProcAddress("glAttachObjectARB");
        pglLinkProgramARB = (PFNGLLINKPROGRAMARBPROC) __GLeeGetProcAddress("glLinkProgramARB");
        pglUseProgramObjectARB = (PFNGLUSEPROGRAMOBJECTARBPROC) __GLeeGetProcAddress("glUseProgramObjectARB");
        pglValidateProgramARB = (PFNGLVALIDATEPROGRAMARBPROC) __GLeeGetProcAddress("glValidateProgramARB");
        pglUniform1fARB = (PFNGLUNIFORM1FARBPROC) __GLeeGetProcAddress("glUniform1fARB");
        pglUniform2fARB = (PFNGLUNIFORM2FARBPROC) __GLeeGetProcAddress("glUniform2fARB");
        pglUniform3fARB = (PFNGLUNIFORM3FARBPROC) __GLeeGetProcAddress("glUniform3fARB");
        pglUniform4fARB = (PFNGLUNIFORM4FARBPROC) __GLeeGetProcAddress("glUniform4fARB");
        pglUniform1iARB = (PFNGLUNIFORM1IARBPROC) __GLeeGetProcAddress("glUniform1iARB");
        pglUniform2iARB = (PFNGLUNIFORM2IARBPROC) __GLeeGetProcAddress("glUniform2iARB");
        pglUniform3iARB = (PFNGLUNIFORM3IARBPROC) __GLeeGetProcAddress("glUniform3iARB");
        pglUniform4iARB = (PFNGLUNIFORM4IARBPROC) __GLeeGetProcAddress("glUniform4iARB");
        pglUniform1fvARB = (PFNGLUNIFORM1FVARBPROC) __GLeeGetProcAddress("glUniform1fvARB");
        pglUniform2fvARB = (PFNGLUNIFORM2FVARBPROC) __GLeeGetProcAddress("glUniform2fvARB");
        pglUniform3fvARB = (PFNGLUNIFORM3FVARBPROC) __GLeeGetProcAddress("glUniform3fvARB");
        pglUniform4fvARB = (PFNGLUNIFORM4FVARBPROC) __GLeeGetProcAddress("glUniform4fvARB");
        pglUniform1ivARB = (PFNGLUNIFORM1IVARBPROC) __GLeeGetProcAddress("glUniform1ivARB");
        pglUniform2ivARB = (PFNGLUNIFORM2IVARBPROC) __GLeeGetProcAddress("glUniform2ivARB");
        pglUniform3ivARB = (PFNGLUNIFORM3IVARBPROC) __GLeeGetProcAddress("glUniform3ivARB");
        pglUniform4ivARB = (PFNGLUNIFORM4IVARBPROC) __GLeeGetProcAddress("glUniform4ivARB");
        pglUniformMatrix2fvARB = (PFNGLUNIFORMMATRIX2FVARBPROC) __GLeeGetProcAddress("glUniformMatrix2fvARB");
        pglUniformMatrix3fvARB = (PFNGLUNIFORMMATRIX3FVARBPROC) __GLeeGetProcAddress("glUniformMatrix3fvARB");
        pglUniformMatrix4fvARB = (PFNGLUNIFORMMATRIX4FVARBPROC) __GLeeGetProcAddress("glUniformMatrix4fvARB");
        pglGetObjectParameterfvARB = (PFNGLGETOBJECTPARAMETERFVARBPROC) __GLeeGetProcAddress("glGetObjectParameterfvARB");
        pglGetObjectParameterivARB = (PFNGLGETOBJECTPARAMETERIVARBPROC) __GLeeGetProcAddress("glGetObjectParameterivARB");
        pglGetInfoLogARB = (PFNGLGETINFOLOGARBPROC) __GLeeGetProcAddress("glGetInfoLogARB");
        pglGetAttachedObjectsARB = (PFNGLGETATTACHEDOBJECTSARBPROC) __GLeeGetProcAddress("glGetAttachedObjectsARB");
        pglGetUniformLocationARB = (PFNGLGETUNIFORMLOCATIONARBPROC) __GLeeGetProcAddress("glGetUniformLocationARB");
        pglGetActiveUniformARB = (PFNGLGETACTIVEUNIFORMARBPROC) __GLeeGetProcAddress("glGetActiveUniformARB");
        pglGetUniformfvARB = (PFNGLGETUNIFORMFVARBPROC) __GLeeGetProcAddress("glGetUniformfvARB");
        pglGetUniformivARB = (PFNGLGETUNIFORMIVARBPROC) __GLeeGetProcAddress("glGetUniformivARB");
        pglGetShaderSourceARB = (PFNGLGETSHADERSOURCEARBPROC) __GLeeGetProcAddress("glGetShaderSourceARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_vertex_shader", &extensionNames) )
    {
        GLEE_ARB_vertex_shader = GL_TRUE;
#ifdef __GLEE_GL_ARB_vertex_shader
        pglBindAttribLocationARB = (PFNGLBINDATTRIBLOCATIONARBPROC) __GLeeGetProcAddress("glBindAttribLocationARB");
        pglGetActiveAttribARB = (PFNGLGETACTIVEATTRIBARBPROC) __GLeeGetProcAddress("glGetActiveAttribARB");
        pglGetAttribLocationARB = (PFNGLGETATTRIBLOCATIONARBPROC) __GLeeGetProcAddress("glGetAttribLocationARB");
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_fragment_shader", &extensionNames) )
    {
        GLEE_ARB_fragment_shader = GL_TRUE;
#ifdef __GLEE_GL_ARB_fragment_shader
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_shading_language_100", &extensionNames) )
    {
        GLEE_ARB_shading_language_100 = GL_TRUE;
#ifdef __GLEE_GL_ARB_shading_language_100
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_texture_non_power_of_two", &extensionNames) )
    {
        GLEE_ARB_texture_non_power_of_two = GL_TRUE;
#ifdef __GLEE_GL_ARB_texture_non_power_of_two
#endif
    }
    if (__GLeeCheckExtension("GL_ARB_point_sprite", &extensionNames) )
    {
        GLEE_ARB_point_sprite = GL_TRUE;
#ifdef __GLEE_GL_ARB_point_sprite
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_abgr", &extensionNames) )
    {
        GLEE_EXT_abgr = GL_TRUE;
#ifdef __GLEE_GL_EXT_abgr
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_color", &extensionNames) )
    {
        GLEE_EXT_blend_color = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_color
        pglBlendColorEXT = (PFNGLBLENDCOLOREXTPROC) __GLeeGetProcAddress("glBlendColorEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_polygon_offset", &extensionNames) )
    {
        GLEE_EXT_polygon_offset = GL_TRUE;
#ifdef __GLEE_GL_EXT_polygon_offset
        pglPolygonOffsetEXT = (PFNGLPOLYGONOFFSETEXTPROC) __GLeeGetProcAddress("glPolygonOffsetEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture", &extensionNames) )
    {
        GLEE_EXT_texture = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture3D", &extensionNames) )
    {
        GLEE_EXT_texture3D = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture3D
        pglTexImage3DEXT = (PFNGLTEXIMAGE3DEXTPROC) __GLeeGetProcAddress("glTexImage3DEXT");
        pglTexSubImage3DEXT = (PFNGLTEXSUBIMAGE3DEXTPROC) __GLeeGetProcAddress("glTexSubImage3DEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_filter4", &extensionNames) )
    {
        GLEE_SGIS_texture_filter4 = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_filter4
        pglGetTexFilterFuncSGIS = (PFNGLGETTEXFILTERFUNCSGISPROC) __GLeeGetProcAddress("glGetTexFilterFuncSGIS");
        pglTexFilterFuncSGIS = (PFNGLTEXFILTERFUNCSGISPROC) __GLeeGetProcAddress("glTexFilterFuncSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_subtexture", &extensionNames) )
    {
        GLEE_EXT_subtexture = GL_TRUE;
#ifdef __GLEE_GL_EXT_subtexture
        pglTexSubImage1DEXT = (PFNGLTEXSUBIMAGE1DEXTPROC) __GLeeGetProcAddress("glTexSubImage1DEXT");
        pglTexSubImage2DEXT = (PFNGLTEXSUBIMAGE2DEXTPROC) __GLeeGetProcAddress("glTexSubImage2DEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_copy_texture", &extensionNames) )
    {
        GLEE_EXT_copy_texture = GL_TRUE;
#ifdef __GLEE_GL_EXT_copy_texture
        pglCopyTexImage1DEXT = (PFNGLCOPYTEXIMAGE1DEXTPROC) __GLeeGetProcAddress("glCopyTexImage1DEXT");
        pglCopyTexImage2DEXT = (PFNGLCOPYTEXIMAGE2DEXTPROC) __GLeeGetProcAddress("glCopyTexImage2DEXT");
        pglCopyTexSubImage1DEXT = (PFNGLCOPYTEXSUBIMAGE1DEXTPROC) __GLeeGetProcAddress("glCopyTexSubImage1DEXT");
        pglCopyTexSubImage2DEXT = (PFNGLCOPYTEXSUBIMAGE2DEXTPROC) __GLeeGetProcAddress("glCopyTexSubImage2DEXT");
        pglCopyTexSubImage3DEXT = (PFNGLCOPYTEXSUBIMAGE3DEXTPROC) __GLeeGetProcAddress("glCopyTexSubImage3DEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_histogram", &extensionNames) )
    {
        GLEE_EXT_histogram = GL_TRUE;
#ifdef __GLEE_GL_EXT_histogram
        pglGetHistogramEXT = (PFNGLGETHISTOGRAMEXTPROC) __GLeeGetProcAddress("glGetHistogramEXT");
        pglGetHistogramParameterfvEXT = (PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) __GLeeGetProcAddress("glGetHistogramParameterfvEXT");
        pglGetHistogramParameterivEXT = (PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) __GLeeGetProcAddress("glGetHistogramParameterivEXT");
        pglGetMinmaxEXT = (PFNGLGETMINMAXEXTPROC) __GLeeGetProcAddress("glGetMinmaxEXT");
        pglGetMinmaxParameterfvEXT = (PFNGLGETMINMAXPARAMETERFVEXTPROC) __GLeeGetProcAddress("glGetMinmaxParameterfvEXT");
        pglGetMinmaxParameterivEXT = (PFNGLGETMINMAXPARAMETERIVEXTPROC) __GLeeGetProcAddress("glGetMinmaxParameterivEXT");
        pglHistogramEXT = (PFNGLHISTOGRAMEXTPROC) __GLeeGetProcAddress("glHistogramEXT");
        pglMinmaxEXT = (PFNGLMINMAXEXTPROC) __GLeeGetProcAddress("glMinmaxEXT");
        pglResetHistogramEXT = (PFNGLRESETHISTOGRAMEXTPROC) __GLeeGetProcAddress("glResetHistogramEXT");
        pglResetMinmaxEXT = (PFNGLRESETMINMAXEXTPROC) __GLeeGetProcAddress("glResetMinmaxEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_convolution", &extensionNames) )
    {
        GLEE_EXT_convolution = GL_TRUE;
#ifdef __GLEE_GL_EXT_convolution
        pglConvolutionFilter1DEXT = (PFNGLCONVOLUTIONFILTER1DEXTPROC) __GLeeGetProcAddress("glConvolutionFilter1DEXT");
        pglConvolutionFilter2DEXT = (PFNGLCONVOLUTIONFILTER2DEXTPROC) __GLeeGetProcAddress("glConvolutionFilter2DEXT");
        pglConvolutionParameterfEXT = (PFNGLCONVOLUTIONPARAMETERFEXTPROC) __GLeeGetProcAddress("glConvolutionParameterfEXT");
        pglConvolutionParameterfvEXT = (PFNGLCONVOLUTIONPARAMETERFVEXTPROC) __GLeeGetProcAddress("glConvolutionParameterfvEXT");
        pglConvolutionParameteriEXT = (PFNGLCONVOLUTIONPARAMETERIEXTPROC) __GLeeGetProcAddress("glConvolutionParameteriEXT");
        pglConvolutionParameterivEXT = (PFNGLCONVOLUTIONPARAMETERIVEXTPROC) __GLeeGetProcAddress("glConvolutionParameterivEXT");
        pglCopyConvolutionFilter1DEXT = (PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) __GLeeGetProcAddress("glCopyConvolutionFilter1DEXT");
        pglCopyConvolutionFilter2DEXT = (PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) __GLeeGetProcAddress("glCopyConvolutionFilter2DEXT");
        pglGetConvolutionFilterEXT = (PFNGLGETCONVOLUTIONFILTEREXTPROC) __GLeeGetProcAddress("glGetConvolutionFilterEXT");
        pglGetConvolutionParameterfvEXT = (PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) __GLeeGetProcAddress("glGetConvolutionParameterfvEXT");
        pglGetConvolutionParameterivEXT = (PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) __GLeeGetProcAddress("glGetConvolutionParameterivEXT");
        pglGetSeparableFilterEXT = (PFNGLGETSEPARABLEFILTEREXTPROC) __GLeeGetProcAddress("glGetSeparableFilterEXT");
        pglSeparableFilter2DEXT = (PFNGLSEPARABLEFILTER2DEXTPROC) __GLeeGetProcAddress("glSeparableFilter2DEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGI_color_matrix", &extensionNames) )
    {
        GLEE_SGI_color_matrix = GL_TRUE;
#ifdef __GLEE_GL_SGI_color_matrix
#endif
    }
    if (__GLeeCheckExtension("GL_SGI_color_table", &extensionNames) )
    {
        GLEE_SGI_color_table = GL_TRUE;
#ifdef __GLEE_GL_SGI_color_table
        pglColorTableSGI = (PFNGLCOLORTABLESGIPROC) __GLeeGetProcAddress("glColorTableSGI");
        pglColorTableParameterfvSGI = (PFNGLCOLORTABLEPARAMETERFVSGIPROC) __GLeeGetProcAddress("glColorTableParameterfvSGI");
        pglColorTableParameterivSGI = (PFNGLCOLORTABLEPARAMETERIVSGIPROC) __GLeeGetProcAddress("glColorTableParameterivSGI");
        pglCopyColorTableSGI = (PFNGLCOPYCOLORTABLESGIPROC) __GLeeGetProcAddress("glCopyColorTableSGI");
        pglGetColorTableSGI = (PFNGLGETCOLORTABLESGIPROC) __GLeeGetProcAddress("glGetColorTableSGI");
        pglGetColorTableParameterfvSGI = (PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) __GLeeGetProcAddress("glGetColorTableParameterfvSGI");
        pglGetColorTableParameterivSGI = (PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) __GLeeGetProcAddress("glGetColorTableParameterivSGI");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_pixel_texture", &extensionNames) )
    {
        GLEE_SGIS_pixel_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIS_pixel_texture
        pglPixelTexGenParameteriSGIS = (PFNGLPIXELTEXGENPARAMETERISGISPROC) __GLeeGetProcAddress("glPixelTexGenParameteriSGIS");
        pglPixelTexGenParameterivSGIS = (PFNGLPIXELTEXGENPARAMETERIVSGISPROC) __GLeeGetProcAddress("glPixelTexGenParameterivSGIS");
        pglPixelTexGenParameterfSGIS = (PFNGLPIXELTEXGENPARAMETERFSGISPROC) __GLeeGetProcAddress("glPixelTexGenParameterfSGIS");
        pglPixelTexGenParameterfvSGIS = (PFNGLPIXELTEXGENPARAMETERFVSGISPROC) __GLeeGetProcAddress("glPixelTexGenParameterfvSGIS");
        pglGetPixelTexGenParameterivSGIS = (PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC) __GLeeGetProcAddress("glGetPixelTexGenParameterivSGIS");
        pglGetPixelTexGenParameterfvSGIS = (PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC) __GLeeGetProcAddress("glGetPixelTexGenParameterfvSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_pixel_texture", &extensionNames) )
    {
        GLEE_SGIX_pixel_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIX_pixel_texture
        pglPixelTexGenSGIX = (PFNGLPIXELTEXGENSGIXPROC) __GLeeGetProcAddress("glPixelTexGenSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture4D", &extensionNames) )
    {
        GLEE_SGIS_texture4D = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture4D
        pglTexImage4DSGIS = (PFNGLTEXIMAGE4DSGISPROC) __GLeeGetProcAddress("glTexImage4DSGIS");
        pglTexSubImage4DSGIS = (PFNGLTEXSUBIMAGE4DSGISPROC) __GLeeGetProcAddress("glTexSubImage4DSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_SGI_texture_color_table", &extensionNames) )
    {
        GLEE_SGI_texture_color_table = GL_TRUE;
#ifdef __GLEE_GL_SGI_texture_color_table
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_cmyka", &extensionNames) )
    {
        GLEE_EXT_cmyka = GL_TRUE;
#ifdef __GLEE_GL_EXT_cmyka
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_object", &extensionNames) )
    {
        GLEE_EXT_texture_object = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_object
        pglAreTexturesResidentEXT = (PFNGLARETEXTURESRESIDENTEXTPROC) __GLeeGetProcAddress("glAreTexturesResidentEXT");
        pglBindTextureEXT = (PFNGLBINDTEXTUREEXTPROC) __GLeeGetProcAddress("glBindTextureEXT");
        pglDeleteTexturesEXT = (PFNGLDELETETEXTURESEXTPROC) __GLeeGetProcAddress("glDeleteTexturesEXT");
        pglGenTexturesEXT = (PFNGLGENTEXTURESEXTPROC) __GLeeGetProcAddress("glGenTexturesEXT");
        pglIsTextureEXT = (PFNGLISTEXTUREEXTPROC) __GLeeGetProcAddress("glIsTextureEXT");
        pglPrioritizeTexturesEXT = (PFNGLPRIORITIZETEXTURESEXTPROC) __GLeeGetProcAddress("glPrioritizeTexturesEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_detail_texture", &extensionNames) )
    {
        GLEE_SGIS_detail_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIS_detail_texture
        pglDetailTexFuncSGIS = (PFNGLDETAILTEXFUNCSGISPROC) __GLeeGetProcAddress("glDetailTexFuncSGIS");
        pglGetDetailTexFuncSGIS = (PFNGLGETDETAILTEXFUNCSGISPROC) __GLeeGetProcAddress("glGetDetailTexFuncSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_sharpen_texture", &extensionNames) )
    {
        GLEE_SGIS_sharpen_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIS_sharpen_texture
        pglSharpenTexFuncSGIS = (PFNGLSHARPENTEXFUNCSGISPROC) __GLeeGetProcAddress("glSharpenTexFuncSGIS");
        pglGetSharpenTexFuncSGIS = (PFNGLGETSHARPENTEXFUNCSGISPROC) __GLeeGetProcAddress("glGetSharpenTexFuncSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_packed_pixels", &extensionNames) )
    {
        GLEE_EXT_packed_pixels = GL_TRUE;
#ifdef __GLEE_GL_EXT_packed_pixels
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_lod", &extensionNames) )
    {
        GLEE_SGIS_texture_lod = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_lod
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_multisample", &extensionNames) )
    {
        GLEE_SGIS_multisample = GL_TRUE;
#ifdef __GLEE_GL_SGIS_multisample
        pglSampleMaskSGIS = (PFNGLSAMPLEMASKSGISPROC) __GLeeGetProcAddress("glSampleMaskSGIS");
        pglSamplePatternSGIS = (PFNGLSAMPLEPATTERNSGISPROC) __GLeeGetProcAddress("glSamplePatternSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_rescale_normal", &extensionNames) )
    {
        GLEE_EXT_rescale_normal = GL_TRUE;
#ifdef __GLEE_GL_EXT_rescale_normal
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_vertex_array", &extensionNames) )
    {
        GLEE_EXT_vertex_array = GL_TRUE;
#ifdef __GLEE_GL_EXT_vertex_array
        pglArrayElementEXT = (PFNGLARRAYELEMENTEXTPROC) __GLeeGetProcAddress("glArrayElementEXT");
        pglColorPointerEXT = (PFNGLCOLORPOINTEREXTPROC) __GLeeGetProcAddress("glColorPointerEXT");
        pglDrawArraysEXT = (PFNGLDRAWARRAYSEXTPROC) __GLeeGetProcAddress("glDrawArraysEXT");
        pglEdgeFlagPointerEXT = (PFNGLEDGEFLAGPOINTEREXTPROC) __GLeeGetProcAddress("glEdgeFlagPointerEXT");
        pglGetPointervEXT = (PFNGLGETPOINTERVEXTPROC) __GLeeGetProcAddress("glGetPointervEXT");
        pglIndexPointerEXT = (PFNGLINDEXPOINTEREXTPROC) __GLeeGetProcAddress("glIndexPointerEXT");
        pglNormalPointerEXT = (PFNGLNORMALPOINTEREXTPROC) __GLeeGetProcAddress("glNormalPointerEXT");
        pglTexCoordPointerEXT = (PFNGLTEXCOORDPOINTEREXTPROC) __GLeeGetProcAddress("glTexCoordPointerEXT");
        pglVertexPointerEXT = (PFNGLVERTEXPOINTEREXTPROC) __GLeeGetProcAddress("glVertexPointerEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_misc_attribute", &extensionNames) )
    {
        GLEE_EXT_misc_attribute = GL_TRUE;
#ifdef __GLEE_GL_EXT_misc_attribute
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_generate_mipmap", &extensionNames) )
    {
        GLEE_SGIS_generate_mipmap = GL_TRUE;
#ifdef __GLEE_GL_SGIS_generate_mipmap
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_clipmap", &extensionNames) )
    {
        GLEE_SGIX_clipmap = GL_TRUE;
#ifdef __GLEE_GL_SGIX_clipmap
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_shadow", &extensionNames) )
    {
        GLEE_SGIX_shadow = GL_TRUE;
#ifdef __GLEE_GL_SGIX_shadow
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_edge_clamp", &extensionNames) )
    {
        GLEE_SGIS_texture_edge_clamp = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_edge_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_minmax", &extensionNames) )
    {
        GLEE_EXT_blend_minmax = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_minmax
        pglBlendEquationEXT = (PFNGLBLENDEQUATIONEXTPROC) __GLeeGetProcAddress("glBlendEquationEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_subtract", &extensionNames) )
    {
        GLEE_EXT_blend_subtract = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_subtract
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_logic_op", &extensionNames) )
    {
        GLEE_EXT_blend_logic_op = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_logic_op
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_interlace", &extensionNames) )
    {
        GLEE_SGIX_interlace = GL_TRUE;
#ifdef __GLEE_GL_SGIX_interlace
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_pixel_tiles", &extensionNames) )
    {
        GLEE_SGIX_pixel_tiles = GL_TRUE;
#ifdef __GLEE_GL_SGIX_pixel_tiles
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_select", &extensionNames) )
    {
        GLEE_SGIS_texture_select = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_select
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_sprite", &extensionNames) )
    {
        GLEE_SGIX_sprite = GL_TRUE;
#ifdef __GLEE_GL_SGIX_sprite
        pglSpriteParameterfSGIX = (PFNGLSPRITEPARAMETERFSGIXPROC) __GLeeGetProcAddress("glSpriteParameterfSGIX");
        pglSpriteParameterfvSGIX = (PFNGLSPRITEPARAMETERFVSGIXPROC) __GLeeGetProcAddress("glSpriteParameterfvSGIX");
        pglSpriteParameteriSGIX = (PFNGLSPRITEPARAMETERISGIXPROC) __GLeeGetProcAddress("glSpriteParameteriSGIX");
        pglSpriteParameterivSGIX = (PFNGLSPRITEPARAMETERIVSGIXPROC) __GLeeGetProcAddress("glSpriteParameterivSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_multi_buffer", &extensionNames) )
    {
        GLEE_SGIX_texture_multi_buffer = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_multi_buffer
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_point_parameters", &extensionNames) )
    {
        GLEE_EXT_point_parameters = GL_TRUE;
#ifdef __GLEE_GL_EXT_point_parameters
        pglPointParameterfEXT = (PFNGLPOINTPARAMETERFEXTPROC) __GLeeGetProcAddress("glPointParameterfEXT");
        pglPointParameterfvEXT = (PFNGLPOINTPARAMETERFVEXTPROC) __GLeeGetProcAddress("glPointParameterfvEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_point_parameters", &extensionNames) )
    {
        GLEE_SGIS_point_parameters = GL_TRUE;
#ifdef __GLEE_GL_SGIS_point_parameters
        pglPointParameterfSGIS = (PFNGLPOINTPARAMETERFSGISPROC) __GLeeGetProcAddress("glPointParameterfSGIS");
        pglPointParameterfvSGIS = (PFNGLPOINTPARAMETERFVSGISPROC) __GLeeGetProcAddress("glPointParameterfvSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_instruments", &extensionNames) )
    {
        GLEE_SGIX_instruments = GL_TRUE;
#ifdef __GLEE_GL_SGIX_instruments
        pglGetInstrumentsSGIX = (PFNGLGETINSTRUMENTSSGIXPROC) __GLeeGetProcAddress("glGetInstrumentsSGIX");
        pglInstrumentsBufferSGIX = (PFNGLINSTRUMENTSBUFFERSGIXPROC) __GLeeGetProcAddress("glInstrumentsBufferSGIX");
        pglPollInstrumentsSGIX = (PFNGLPOLLINSTRUMENTSSGIXPROC) __GLeeGetProcAddress("glPollInstrumentsSGIX");
        pglReadInstrumentsSGIX = (PFNGLREADINSTRUMENTSSGIXPROC) __GLeeGetProcAddress("glReadInstrumentsSGIX");
        pglStartInstrumentsSGIX = (PFNGLSTARTINSTRUMENTSSGIXPROC) __GLeeGetProcAddress("glStartInstrumentsSGIX");
        pglStopInstrumentsSGIX = (PFNGLSTOPINSTRUMENTSSGIXPROC) __GLeeGetProcAddress("glStopInstrumentsSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_scale_bias", &extensionNames) )
    {
        GLEE_SGIX_texture_scale_bias = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_scale_bias
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_framezoom", &extensionNames) )
    {
        GLEE_SGIX_framezoom = GL_TRUE;
#ifdef __GLEE_GL_SGIX_framezoom
        pglFrameZoomSGIX = (PFNGLFRAMEZOOMSGIXPROC) __GLeeGetProcAddress("glFrameZoomSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_tag_sample_buffer", &extensionNames) )
    {
        GLEE_SGIX_tag_sample_buffer = GL_TRUE;
#ifdef __GLEE_GL_SGIX_tag_sample_buffer
        pglTagSampleBufferSGIX = (PFNGLTAGSAMPLEBUFFERSGIXPROC) __GLeeGetProcAddress("glTagSampleBufferSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_FfdMaskSGIX", &extensionNames) )
    {
        GLEE_FfdMaskSGIX = GL_TRUE;
#ifdef __GLEE_GL_FfdMaskSGIX
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_polynomial_ffd", &extensionNames) )
    {
        GLEE_SGIX_polynomial_ffd = GL_TRUE;
#ifdef __GLEE_GL_SGIX_polynomial_ffd
        pglDeformationMap3dSGIX = (PFNGLDEFORMATIONMAP3DSGIXPROC) __GLeeGetProcAddress("glDeformationMap3dSGIX");
        pglDeformationMap3fSGIX = (PFNGLDEFORMATIONMAP3FSGIXPROC) __GLeeGetProcAddress("glDeformationMap3fSGIX");
        pglDeformSGIX = (PFNGLDEFORMSGIXPROC) __GLeeGetProcAddress("glDeformSGIX");
        pglLoadIdentityDeformationMapSGIX = (PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC) __GLeeGetProcAddress("glLoadIdentityDeformationMapSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_reference_plane", &extensionNames) )
    {
        GLEE_SGIX_reference_plane = GL_TRUE;
#ifdef __GLEE_GL_SGIX_reference_plane
        pglReferencePlaneSGIX = (PFNGLREFERENCEPLANESGIXPROC) __GLeeGetProcAddress("glReferencePlaneSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_flush_raster", &extensionNames) )
    {
        GLEE_SGIX_flush_raster = GL_TRUE;
#ifdef __GLEE_GL_SGIX_flush_raster
        pglFlushRasterSGIX = (PFNGLFLUSHRASTERSGIXPROC) __GLeeGetProcAddress("glFlushRasterSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_depth_texture", &extensionNames) )
    {
        GLEE_SGIX_depth_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIX_depth_texture
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_fog_function", &extensionNames) )
    {
        GLEE_SGIS_fog_function = GL_TRUE;
#ifdef __GLEE_GL_SGIS_fog_function
        pglFogFuncSGIS = (PFNGLFOGFUNCSGISPROC) __GLeeGetProcAddress("glFogFuncSGIS");
        pglGetFogFuncSGIS = (PFNGLGETFOGFUNCSGISPROC) __GLeeGetProcAddress("glGetFogFuncSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_fog_offset", &extensionNames) )
    {
        GLEE_SGIX_fog_offset = GL_TRUE;
#ifdef __GLEE_GL_SGIX_fog_offset
#endif
    }
    if (__GLeeCheckExtension("GL_HP_image_transform", &extensionNames) )
    {
        GLEE_HP_image_transform = GL_TRUE;
#ifdef __GLEE_GL_HP_image_transform
        pglImageTransformParameteriHP = (PFNGLIMAGETRANSFORMPARAMETERIHPPROC) __GLeeGetProcAddress("glImageTransformParameteriHP");
        pglImageTransformParameterfHP = (PFNGLIMAGETRANSFORMPARAMETERFHPPROC) __GLeeGetProcAddress("glImageTransformParameterfHP");
        pglImageTransformParameterivHP = (PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) __GLeeGetProcAddress("glImageTransformParameterivHP");
        pglImageTransformParameterfvHP = (PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) __GLeeGetProcAddress("glImageTransformParameterfvHP");
        pglGetImageTransformParameterivHP = (PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) __GLeeGetProcAddress("glGetImageTransformParameterivHP");
        pglGetImageTransformParameterfvHP = (PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) __GLeeGetProcAddress("glGetImageTransformParameterfvHP");
#endif
    }
    if (__GLeeCheckExtension("GL_HP_convolution_border_modes", &extensionNames) )
    {
        GLEE_HP_convolution_border_modes = GL_TRUE;
#ifdef __GLEE_GL_HP_convolution_border_modes
#endif
    }
    if (__GLeeCheckExtension("GL_INGR_palette_buffer", &extensionNames) )
    {
        GLEE_INGR_palette_buffer = GL_TRUE;
#ifdef __GLEE_GL_INGR_palette_buffer
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_add_env", &extensionNames) )
    {
        GLEE_SGIX_texture_add_env = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_add_env
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_color_subtable", &extensionNames) )
    {
        GLEE_EXT_color_subtable = GL_TRUE;
#ifdef __GLEE_GL_EXT_color_subtable
        pglColorSubTableEXT = (PFNGLCOLORSUBTABLEEXTPROC) __GLeeGetProcAddress("glColorSubTableEXT");
        pglCopyColorSubTableEXT = (PFNGLCOPYCOLORSUBTABLEEXTPROC) __GLeeGetProcAddress("glCopyColorSubTableEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_PGI_vertex_hints", &extensionNames) )
    {
        GLEE_PGI_vertex_hints = GL_TRUE;
#ifdef __GLEE_GL_PGI_vertex_hints
#endif
    }
    if (__GLeeCheckExtension("GL_PGI_misc_hints", &extensionNames) )
    {
        GLEE_PGI_misc_hints = GL_TRUE;
#ifdef __GLEE_GL_PGI_misc_hints
        pglHintPGI = (PFNGLHINTPGIPROC) __GLeeGetProcAddress("glHintPGI");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_paletted_texture", &extensionNames) )
    {
        GLEE_EXT_paletted_texture = GL_TRUE;
#ifdef __GLEE_GL_EXT_paletted_texture
        pglColorTableEXT = (PFNGLCOLORTABLEEXTPROC) __GLeeGetProcAddress("glColorTableEXT");
        pglGetColorTableEXT = (PFNGLGETCOLORTABLEEXTPROC) __GLeeGetProcAddress("glGetColorTableEXT");
        pglGetColorTableParameterivEXT = (PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) __GLeeGetProcAddress("glGetColorTableParameterivEXT");
        pglGetColorTableParameterfvEXT = (PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) __GLeeGetProcAddress("glGetColorTableParameterfvEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_clip_volume_hint", &extensionNames) )
    {
        GLEE_EXT_clip_volume_hint = GL_TRUE;
#ifdef __GLEE_GL_EXT_clip_volume_hint
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_list_priority", &extensionNames) )
    {
        GLEE_SGIX_list_priority = GL_TRUE;
#ifdef __GLEE_GL_SGIX_list_priority
        pglGetListParameterfvSGIX = (PFNGLGETLISTPARAMETERFVSGIXPROC) __GLeeGetProcAddress("glGetListParameterfvSGIX");
        pglGetListParameterivSGIX = (PFNGLGETLISTPARAMETERIVSGIXPROC) __GLeeGetProcAddress("glGetListParameterivSGIX");
        pglListParameterfSGIX = (PFNGLLISTPARAMETERFSGIXPROC) __GLeeGetProcAddress("glListParameterfSGIX");
        pglListParameterfvSGIX = (PFNGLLISTPARAMETERFVSGIXPROC) __GLeeGetProcAddress("glListParameterfvSGIX");
        pglListParameteriSGIX = (PFNGLLISTPARAMETERISGIXPROC) __GLeeGetProcAddress("glListParameteriSGIX");
        pglListParameterivSGIX = (PFNGLLISTPARAMETERIVSGIXPROC) __GLeeGetProcAddress("glListParameterivSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_ir_instrument1", &extensionNames) )
    {
        GLEE_SGIX_ir_instrument1 = GL_TRUE;
#ifdef __GLEE_GL_SGIX_ir_instrument1
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_calligraphic_fragment", &extensionNames) )
    {
        GLEE_SGIX_calligraphic_fragment = GL_TRUE;
#ifdef __GLEE_GL_SGIX_calligraphic_fragment
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_lod_bias", &extensionNames) )
    {
        GLEE_SGIX_texture_lod_bias = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_lod_bias
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_shadow_ambient", &extensionNames) )
    {
        GLEE_SGIX_shadow_ambient = GL_TRUE;
#ifdef __GLEE_GL_SGIX_shadow_ambient
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_index_texture", &extensionNames) )
    {
        GLEE_EXT_index_texture = GL_TRUE;
#ifdef __GLEE_GL_EXT_index_texture
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_index_material", &extensionNames) )
    {
        GLEE_EXT_index_material = GL_TRUE;
#ifdef __GLEE_GL_EXT_index_material
        pglIndexMaterialEXT = (PFNGLINDEXMATERIALEXTPROC) __GLeeGetProcAddress("glIndexMaterialEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_index_func", &extensionNames) )
    {
        GLEE_EXT_index_func = GL_TRUE;
#ifdef __GLEE_GL_EXT_index_func
        pglIndexFuncEXT = (PFNGLINDEXFUNCEXTPROC) __GLeeGetProcAddress("glIndexFuncEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_index_array_formats", &extensionNames) )
    {
        GLEE_EXT_index_array_formats = GL_TRUE;
#ifdef __GLEE_GL_EXT_index_array_formats
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_compiled_vertex_array", &extensionNames) )
    {
        GLEE_EXT_compiled_vertex_array = GL_TRUE;
#ifdef __GLEE_GL_EXT_compiled_vertex_array
        pglLockArraysEXT = (PFNGLLOCKARRAYSEXTPROC) __GLeeGetProcAddress("glLockArraysEXT");
        pglUnlockArraysEXT = (PFNGLUNLOCKARRAYSEXTPROC) __GLeeGetProcAddress("glUnlockArraysEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_cull_vertex", &extensionNames) )
    {
        GLEE_EXT_cull_vertex = GL_TRUE;
#ifdef __GLEE_GL_EXT_cull_vertex
        pglCullParameterdvEXT = (PFNGLCULLPARAMETERDVEXTPROC) __GLeeGetProcAddress("glCullParameterdvEXT");
        pglCullParameterfvEXT = (PFNGLCULLPARAMETERFVEXTPROC) __GLeeGetProcAddress("glCullParameterfvEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_ycrcb", &extensionNames) )
    {
        GLEE_SGIX_ycrcb = GL_TRUE;
#ifdef __GLEE_GL_SGIX_ycrcb
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_fragment_lighting", &extensionNames) )
    {
        GLEE_SGIX_fragment_lighting = GL_TRUE;
#ifdef __GLEE_GL_SGIX_fragment_lighting
        pglFragmentColorMaterialSGIX = (PFNGLFRAGMENTCOLORMATERIALSGIXPROC) __GLeeGetProcAddress("glFragmentColorMaterialSGIX");
        pglFragmentLightfSGIX = (PFNGLFRAGMENTLIGHTFSGIXPROC) __GLeeGetProcAddress("glFragmentLightfSGIX");
        pglFragmentLightfvSGIX = (PFNGLFRAGMENTLIGHTFVSGIXPROC) __GLeeGetProcAddress("glFragmentLightfvSGIX");
        pglFragmentLightiSGIX = (PFNGLFRAGMENTLIGHTISGIXPROC) __GLeeGetProcAddress("glFragmentLightiSGIX");
        pglFragmentLightivSGIX = (PFNGLFRAGMENTLIGHTIVSGIXPROC) __GLeeGetProcAddress("glFragmentLightivSGIX");
        pglFragmentLightModelfSGIX = (PFNGLFRAGMENTLIGHTMODELFSGIXPROC) __GLeeGetProcAddress("glFragmentLightModelfSGIX");
        pglFragmentLightModelfvSGIX = (PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) __GLeeGetProcAddress("glFragmentLightModelfvSGIX");
        pglFragmentLightModeliSGIX = (PFNGLFRAGMENTLIGHTMODELISGIXPROC) __GLeeGetProcAddress("glFragmentLightModeliSGIX");
        pglFragmentLightModelivSGIX = (PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) __GLeeGetProcAddress("glFragmentLightModelivSGIX");
        pglFragmentMaterialfSGIX = (PFNGLFRAGMENTMATERIALFSGIXPROC) __GLeeGetProcAddress("glFragmentMaterialfSGIX");
        pglFragmentMaterialfvSGIX = (PFNGLFRAGMENTMATERIALFVSGIXPROC) __GLeeGetProcAddress("glFragmentMaterialfvSGIX");
        pglFragmentMaterialiSGIX = (PFNGLFRAGMENTMATERIALISGIXPROC) __GLeeGetProcAddress("glFragmentMaterialiSGIX");
        pglFragmentMaterialivSGIX = (PFNGLFRAGMENTMATERIALIVSGIXPROC) __GLeeGetProcAddress("glFragmentMaterialivSGIX");
        pglGetFragmentLightfvSGIX = (PFNGLGETFRAGMENTLIGHTFVSGIXPROC) __GLeeGetProcAddress("glGetFragmentLightfvSGIX");
        pglGetFragmentLightivSGIX = (PFNGLGETFRAGMENTLIGHTIVSGIXPROC) __GLeeGetProcAddress("glGetFragmentLightivSGIX");
        pglGetFragmentMaterialfvSGIX = (PFNGLGETFRAGMENTMATERIALFVSGIXPROC) __GLeeGetProcAddress("glGetFragmentMaterialfvSGIX");
        pglGetFragmentMaterialivSGIX = (PFNGLGETFRAGMENTMATERIALIVSGIXPROC) __GLeeGetProcAddress("glGetFragmentMaterialivSGIX");
        pglLightEnviSGIX = (PFNGLLIGHTENVISGIXPROC) __GLeeGetProcAddress("glLightEnviSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_IBM_rasterpos_clip", &extensionNames) )
    {
        GLEE_IBM_rasterpos_clip = GL_TRUE;
#ifdef __GLEE_GL_IBM_rasterpos_clip
#endif
    }
    if (__GLeeCheckExtension("GL_HP_texture_lighting", &extensionNames) )
    {
        GLEE_HP_texture_lighting = GL_TRUE;
#ifdef __GLEE_GL_HP_texture_lighting
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_draw_range_elements", &extensionNames) )
    {
        GLEE_EXT_draw_range_elements = GL_TRUE;
#ifdef __GLEE_GL_EXT_draw_range_elements
        pglDrawRangeElementsEXT = (PFNGLDRAWRANGEELEMENTSEXTPROC) __GLeeGetProcAddress("glDrawRangeElementsEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_WIN_phong_shading", &extensionNames) )
    {
        GLEE_WIN_phong_shading = GL_TRUE;
#ifdef __GLEE_GL_WIN_phong_shading
#endif
    }
    if (__GLeeCheckExtension("GL_WIN_specular_fog", &extensionNames) )
    {
        GLEE_WIN_specular_fog = GL_TRUE;
#ifdef __GLEE_GL_WIN_specular_fog
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_light_texture", &extensionNames) )
    {
        GLEE_EXT_light_texture = GL_TRUE;
#ifdef __GLEE_GL_EXT_light_texture
        pglApplyTextureEXT = (PFNGLAPPLYTEXTUREEXTPROC) __GLeeGetProcAddress("glApplyTextureEXT");
        pglTextureLightEXT = (PFNGLTEXTURELIGHTEXTPROC) __GLeeGetProcAddress("glTextureLightEXT");
        pglTextureMaterialEXT = (PFNGLTEXTUREMATERIALEXTPROC) __GLeeGetProcAddress("glTextureMaterialEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_blend_alpha_minmax", &extensionNames) )
    {
        GLEE_SGIX_blend_alpha_minmax = GL_TRUE;
#ifdef __GLEE_GL_SGIX_blend_alpha_minmax
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_impact_pixel_texture", &extensionNames) )
    {
        GLEE_SGIX_impact_pixel_texture = GL_TRUE;
#ifdef __GLEE_GL_SGIX_impact_pixel_texture
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_bgra", &extensionNames) )
    {
        GLEE_EXT_bgra = GL_TRUE;
#ifdef __GLEE_GL_EXT_bgra
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_async", &extensionNames) )
    {
        GLEE_SGIX_async = GL_TRUE;
#ifdef __GLEE_GL_SGIX_async
        pglAsyncMarkerSGIX = (PFNGLASYNCMARKERSGIXPROC) __GLeeGetProcAddress("glAsyncMarkerSGIX");
        pglFinishAsyncSGIX = (PFNGLFINISHASYNCSGIXPROC) __GLeeGetProcAddress("glFinishAsyncSGIX");
        pglPollAsyncSGIX = (PFNGLPOLLASYNCSGIXPROC) __GLeeGetProcAddress("glPollAsyncSGIX");
        pglGenAsyncMarkersSGIX = (PFNGLGENASYNCMARKERSSGIXPROC) __GLeeGetProcAddress("glGenAsyncMarkersSGIX");
        pglDeleteAsyncMarkersSGIX = (PFNGLDELETEASYNCMARKERSSGIXPROC) __GLeeGetProcAddress("glDeleteAsyncMarkersSGIX");
        pglIsAsyncMarkerSGIX = (PFNGLISASYNCMARKERSGIXPROC) __GLeeGetProcAddress("glIsAsyncMarkerSGIX");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_async_pixel", &extensionNames) )
    {
        GLEE_SGIX_async_pixel = GL_TRUE;
#ifdef __GLEE_GL_SGIX_async_pixel
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_async_histogram", &extensionNames) )
    {
        GLEE_SGIX_async_histogram = GL_TRUE;
#ifdef __GLEE_GL_SGIX_async_histogram
#endif
    }
    if (__GLeeCheckExtension("GL_INTEL_texture_scissor", &extensionNames) )
    {
        GLEE_INTEL_texture_scissor = GL_TRUE;
#ifdef __GLEE_GL_INTEL_texture_scissor
#endif
    }
    if (__GLeeCheckExtension("GL_INTEL_parallel_arrays", &extensionNames) )
    {
        GLEE_INTEL_parallel_arrays = GL_TRUE;
#ifdef __GLEE_GL_INTEL_parallel_arrays
        pglVertexPointervINTEL = (PFNGLVERTEXPOINTERVINTELPROC) __GLeeGetProcAddress("glVertexPointervINTEL");
        pglNormalPointervINTEL = (PFNGLNORMALPOINTERVINTELPROC) __GLeeGetProcAddress("glNormalPointervINTEL");
        pglColorPointervINTEL = (PFNGLCOLORPOINTERVINTELPROC) __GLeeGetProcAddress("glColorPointervINTEL");
        pglTexCoordPointervINTEL = (PFNGLTEXCOORDPOINTERVINTELPROC) __GLeeGetProcAddress("glTexCoordPointervINTEL");
#endif
    }
    if (__GLeeCheckExtension("GL_HP_occlusion_test", &extensionNames) )
    {
        GLEE_HP_occlusion_test = GL_TRUE;
#ifdef __GLEE_GL_HP_occlusion_test
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_pixel_transform", &extensionNames) )
    {
        GLEE_EXT_pixel_transform = GL_TRUE;
#ifdef __GLEE_GL_EXT_pixel_transform
        pglPixelTransformParameteriEXT = (PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) __GLeeGetProcAddress("glPixelTransformParameteriEXT");
        pglPixelTransformParameterfEXT = (PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) __GLeeGetProcAddress("glPixelTransformParameterfEXT");
        pglPixelTransformParameterivEXT = (PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) __GLeeGetProcAddress("glPixelTransformParameterivEXT");
        pglPixelTransformParameterfvEXT = (PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) __GLeeGetProcAddress("glPixelTransformParameterfvEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_pixel_transform_color_table", &extensionNames) )
    {
        GLEE_EXT_pixel_transform_color_table = GL_TRUE;
#ifdef __GLEE_GL_EXT_pixel_transform_color_table
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_shared_texture_palette", &extensionNames) )
    {
        GLEE_EXT_shared_texture_palette = GL_TRUE;
#ifdef __GLEE_GL_EXT_shared_texture_palette
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_separate_specular_color", &extensionNames) )
    {
        GLEE_EXT_separate_specular_color = GL_TRUE;
#ifdef __GLEE_GL_EXT_separate_specular_color
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_secondary_color", &extensionNames) )
    {
        GLEE_EXT_secondary_color = GL_TRUE;
#ifdef __GLEE_GL_EXT_secondary_color
        pglSecondaryColor3bEXT = (PFNGLSECONDARYCOLOR3BEXTPROC) __GLeeGetProcAddress("glSecondaryColor3bEXT");
        pglSecondaryColor3bvEXT = (PFNGLSECONDARYCOLOR3BVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3bvEXT");
        pglSecondaryColor3dEXT = (PFNGLSECONDARYCOLOR3DEXTPROC) __GLeeGetProcAddress("glSecondaryColor3dEXT");
        pglSecondaryColor3dvEXT = (PFNGLSECONDARYCOLOR3DVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3dvEXT");
        pglSecondaryColor3fEXT = (PFNGLSECONDARYCOLOR3FEXTPROC) __GLeeGetProcAddress("glSecondaryColor3fEXT");
        pglSecondaryColor3fvEXT = (PFNGLSECONDARYCOLOR3FVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3fvEXT");
        pglSecondaryColor3iEXT = (PFNGLSECONDARYCOLOR3IEXTPROC) __GLeeGetProcAddress("glSecondaryColor3iEXT");
        pglSecondaryColor3ivEXT = (PFNGLSECONDARYCOLOR3IVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3ivEXT");
        pglSecondaryColor3sEXT = (PFNGLSECONDARYCOLOR3SEXTPROC) __GLeeGetProcAddress("glSecondaryColor3sEXT");
        pglSecondaryColor3svEXT = (PFNGLSECONDARYCOLOR3SVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3svEXT");
        pglSecondaryColor3ubEXT = (PFNGLSECONDARYCOLOR3UBEXTPROC) __GLeeGetProcAddress("glSecondaryColor3ubEXT");
        pglSecondaryColor3ubvEXT = (PFNGLSECONDARYCOLOR3UBVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3ubvEXT");
        pglSecondaryColor3uiEXT = (PFNGLSECONDARYCOLOR3UIEXTPROC) __GLeeGetProcAddress("glSecondaryColor3uiEXT");
        pglSecondaryColor3uivEXT = (PFNGLSECONDARYCOLOR3UIVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3uivEXT");
        pglSecondaryColor3usEXT = (PFNGLSECONDARYCOLOR3USEXTPROC) __GLeeGetProcAddress("glSecondaryColor3usEXT");
        pglSecondaryColor3usvEXT = (PFNGLSECONDARYCOLOR3USVEXTPROC) __GLeeGetProcAddress("glSecondaryColor3usvEXT");
        pglSecondaryColorPointerEXT = (PFNGLSECONDARYCOLORPOINTEREXTPROC) __GLeeGetProcAddress("glSecondaryColorPointerEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_perturb_normal", &extensionNames) )
    {
        GLEE_EXT_texture_perturb_normal = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_perturb_normal
        pglTextureNormalEXT = (PFNGLTEXTURENORMALEXTPROC) __GLeeGetProcAddress("glTextureNormalEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_multi_draw_arrays", &extensionNames) )
    {
        GLEE_EXT_multi_draw_arrays = GL_TRUE;
#ifdef __GLEE_GL_EXT_multi_draw_arrays
        pglMultiDrawArraysEXT = (PFNGLMULTIDRAWARRAYSEXTPROC) __GLeeGetProcAddress("glMultiDrawArraysEXT");
        pglMultiDrawElementsEXT = (PFNGLMULTIDRAWELEMENTSEXTPROC) __GLeeGetProcAddress("glMultiDrawElementsEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_fog_coord", &extensionNames) )
    {
        GLEE_EXT_fog_coord = GL_TRUE;
#ifdef __GLEE_GL_EXT_fog_coord
        pglFogCoordfEXT = (PFNGLFOGCOORDFEXTPROC) __GLeeGetProcAddress("glFogCoordfEXT");
        pglFogCoordfvEXT = (PFNGLFOGCOORDFVEXTPROC) __GLeeGetProcAddress("glFogCoordfvEXT");
        pglFogCoorddEXT = (PFNGLFOGCOORDDEXTPROC) __GLeeGetProcAddress("glFogCoorddEXT");
        pglFogCoorddvEXT = (PFNGLFOGCOORDDVEXTPROC) __GLeeGetProcAddress("glFogCoorddvEXT");
        pglFogCoordPointerEXT = (PFNGLFOGCOORDPOINTEREXTPROC) __GLeeGetProcAddress("glFogCoordPointerEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_REND_screen_coordinates", &extensionNames) )
    {
        GLEE_REND_screen_coordinates = GL_TRUE;
#ifdef __GLEE_GL_REND_screen_coordinates
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_coordinate_frame", &extensionNames) )
    {
        GLEE_EXT_coordinate_frame = GL_TRUE;
#ifdef __GLEE_GL_EXT_coordinate_frame
        pglTangent3bEXT = (PFNGLTANGENT3BEXTPROC) __GLeeGetProcAddress("glTangent3bEXT");
        pglTangent3bvEXT = (PFNGLTANGENT3BVEXTPROC) __GLeeGetProcAddress("glTangent3bvEXT");
        pglTangent3dEXT = (PFNGLTANGENT3DEXTPROC) __GLeeGetProcAddress("glTangent3dEXT");
        pglTangent3dvEXT = (PFNGLTANGENT3DVEXTPROC) __GLeeGetProcAddress("glTangent3dvEXT");
        pglTangent3fEXT = (PFNGLTANGENT3FEXTPROC) __GLeeGetProcAddress("glTangent3fEXT");
        pglTangent3fvEXT = (PFNGLTANGENT3FVEXTPROC) __GLeeGetProcAddress("glTangent3fvEXT");
        pglTangent3iEXT = (PFNGLTANGENT3IEXTPROC) __GLeeGetProcAddress("glTangent3iEXT");
        pglTangent3ivEXT = (PFNGLTANGENT3IVEXTPROC) __GLeeGetProcAddress("glTangent3ivEXT");
        pglTangent3sEXT = (PFNGLTANGENT3SEXTPROC) __GLeeGetProcAddress("glTangent3sEXT");
        pglTangent3svEXT = (PFNGLTANGENT3SVEXTPROC) __GLeeGetProcAddress("glTangent3svEXT");
        pglBinormal3bEXT = (PFNGLBINORMAL3BEXTPROC) __GLeeGetProcAddress("glBinormal3bEXT");
        pglBinormal3bvEXT = (PFNGLBINORMAL3BVEXTPROC) __GLeeGetProcAddress("glBinormal3bvEXT");
        pglBinormal3dEXT = (PFNGLBINORMAL3DEXTPROC) __GLeeGetProcAddress("glBinormal3dEXT");
        pglBinormal3dvEXT = (PFNGLBINORMAL3DVEXTPROC) __GLeeGetProcAddress("glBinormal3dvEXT");
        pglBinormal3fEXT = (PFNGLBINORMAL3FEXTPROC) __GLeeGetProcAddress("glBinormal3fEXT");
        pglBinormal3fvEXT = (PFNGLBINORMAL3FVEXTPROC) __GLeeGetProcAddress("glBinormal3fvEXT");
        pglBinormal3iEXT = (PFNGLBINORMAL3IEXTPROC) __GLeeGetProcAddress("glBinormal3iEXT");
        pglBinormal3ivEXT = (PFNGLBINORMAL3IVEXTPROC) __GLeeGetProcAddress("glBinormal3ivEXT");
        pglBinormal3sEXT = (PFNGLBINORMAL3SEXTPROC) __GLeeGetProcAddress("glBinormal3sEXT");
        pglBinormal3svEXT = (PFNGLBINORMAL3SVEXTPROC) __GLeeGetProcAddress("glBinormal3svEXT");
        pglTangentPointerEXT = (PFNGLTANGENTPOINTEREXTPROC) __GLeeGetProcAddress("glTangentPointerEXT");
        pglBinormalPointerEXT = (PFNGLBINORMALPOINTEREXTPROC) __GLeeGetProcAddress("glBinormalPointerEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_env_combine", &extensionNames) )
    {
        GLEE_EXT_texture_env_combine = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_env_combine
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_specular_vector", &extensionNames) )
    {
        GLEE_APPLE_specular_vector = GL_TRUE;
#ifdef __GLEE_GL_APPLE_specular_vector
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_transform_hint", &extensionNames) )
    {
        GLEE_APPLE_transform_hint = GL_TRUE;
#ifdef __GLEE_GL_APPLE_transform_hint
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_fog_scale", &extensionNames) )
    {
        GLEE_SGIX_fog_scale = GL_TRUE;
#ifdef __GLEE_GL_SGIX_fog_scale
#endif
    }
    if (__GLeeCheckExtension("GL_SUNX_constant_data", &extensionNames) )
    {
        GLEE_SUNX_constant_data = GL_TRUE;
#ifdef __GLEE_GL_SUNX_constant_data
        pglFinishTextureSUNX = (PFNGLFINISHTEXTURESUNXPROC) __GLeeGetProcAddress("glFinishTextureSUNX");
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_global_alpha", &extensionNames) )
    {
        GLEE_SUN_global_alpha = GL_TRUE;
#ifdef __GLEE_GL_SUN_global_alpha
        pglGlobalAlphaFactorbSUN = (PFNGLGLOBALALPHAFACTORBSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactorbSUN");
        pglGlobalAlphaFactorsSUN = (PFNGLGLOBALALPHAFACTORSSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactorsSUN");
        pglGlobalAlphaFactoriSUN = (PFNGLGLOBALALPHAFACTORISUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactoriSUN");
        pglGlobalAlphaFactorfSUN = (PFNGLGLOBALALPHAFACTORFSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactorfSUN");
        pglGlobalAlphaFactordSUN = (PFNGLGLOBALALPHAFACTORDSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactordSUN");
        pglGlobalAlphaFactorubSUN = (PFNGLGLOBALALPHAFACTORUBSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactorubSUN");
        pglGlobalAlphaFactorusSUN = (PFNGLGLOBALALPHAFACTORUSSUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactorusSUN");
        pglGlobalAlphaFactoruiSUN = (PFNGLGLOBALALPHAFACTORUISUNPROC) __GLeeGetProcAddress("glGlobalAlphaFactoruiSUN");
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_triangle_list", &extensionNames) )
    {
        GLEE_SUN_triangle_list = GL_TRUE;
#ifdef __GLEE_GL_SUN_triangle_list
        pglReplacementCodeuiSUN = (PFNGLREPLACEMENTCODEUISUNPROC) __GLeeGetProcAddress("glReplacementCodeuiSUN");
        pglReplacementCodeusSUN = (PFNGLREPLACEMENTCODEUSSUNPROC) __GLeeGetProcAddress("glReplacementCodeusSUN");
        pglReplacementCodeubSUN = (PFNGLREPLACEMENTCODEUBSUNPROC) __GLeeGetProcAddress("glReplacementCodeubSUN");
        pglReplacementCodeuivSUN = (PFNGLREPLACEMENTCODEUIVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuivSUN");
        pglReplacementCodeusvSUN = (PFNGLREPLACEMENTCODEUSVSUNPROC) __GLeeGetProcAddress("glReplacementCodeusvSUN");
        pglReplacementCodeubvSUN = (PFNGLREPLACEMENTCODEUBVSUNPROC) __GLeeGetProcAddress("glReplacementCodeubvSUN");
        pglReplacementCodePointerSUN = (PFNGLREPLACEMENTCODEPOINTERSUNPROC) __GLeeGetProcAddress("glReplacementCodePointerSUN");
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_vertex", &extensionNames) )
    {
        GLEE_SUN_vertex = GL_TRUE;
#ifdef __GLEE_GL_SUN_vertex
        pglColor4ubVertex2fSUN = (PFNGLCOLOR4UBVERTEX2FSUNPROC) __GLeeGetProcAddress("glColor4ubVertex2fSUN");
        pglColor4ubVertex2fvSUN = (PFNGLCOLOR4UBVERTEX2FVSUNPROC) __GLeeGetProcAddress("glColor4ubVertex2fvSUN");
        pglColor4ubVertex3fSUN = (PFNGLCOLOR4UBVERTEX3FSUNPROC) __GLeeGetProcAddress("glColor4ubVertex3fSUN");
        pglColor4ubVertex3fvSUN = (PFNGLCOLOR4UBVERTEX3FVSUNPROC) __GLeeGetProcAddress("glColor4ubVertex3fvSUN");
        pglColor3fVertex3fSUN = (PFNGLCOLOR3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glColor3fVertex3fSUN");
        pglColor3fVertex3fvSUN = (PFNGLCOLOR3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glColor3fVertex3fvSUN");
        pglNormal3fVertex3fSUN = (PFNGLNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glNormal3fVertex3fSUN");
        pglNormal3fVertex3fvSUN = (PFNGLNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glNormal3fVertex3fvSUN");
        pglColor4fNormal3fVertex3fSUN = (PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glColor4fNormal3fVertex3fSUN");
        pglColor4fNormal3fVertex3fvSUN = (PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glColor4fNormal3fVertex3fvSUN");
        pglTexCoord2fVertex3fSUN = (PFNGLTEXCOORD2FVERTEX3FSUNPROC) __GLeeGetProcAddress("glTexCoord2fVertex3fSUN");
        pglTexCoord2fVertex3fvSUN = (PFNGLTEXCOORD2FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glTexCoord2fVertex3fvSUN");
        pglTexCoord4fVertex4fSUN = (PFNGLTEXCOORD4FVERTEX4FSUNPROC) __GLeeGetProcAddress("glTexCoord4fVertex4fSUN");
        pglTexCoord4fVertex4fvSUN = (PFNGLTEXCOORD4FVERTEX4FVSUNPROC) __GLeeGetProcAddress("glTexCoord4fVertex4fvSUN");
        pglTexCoord2fColor4ubVertex3fSUN = (PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor4ubVertex3fSUN");
        pglTexCoord2fColor4ubVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor4ubVertex3fvSUN");
        pglTexCoord2fColor3fVertex3fSUN = (PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor3fVertex3fSUN");
        pglTexCoord2fColor3fVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor3fVertex3fvSUN");
        pglTexCoord2fNormal3fVertex3fSUN = (PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glTexCoord2fNormal3fVertex3fSUN");
        pglTexCoord2fNormal3fVertex3fvSUN = (PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glTexCoord2fNormal3fVertex3fvSUN");
        pglTexCoord2fColor4fNormal3fVertex3fSUN = (PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor4fNormal3fVertex3fSUN");
        pglTexCoord2fColor4fNormal3fVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glTexCoord2fColor4fNormal3fVertex3fvSUN");
        pglTexCoord4fColor4fNormal3fVertex4fSUN = (PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) __GLeeGetProcAddress("glTexCoord4fColor4fNormal3fVertex4fSUN");
        pglTexCoord4fColor4fNormal3fVertex4fvSUN = (PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) __GLeeGetProcAddress("glTexCoord4fColor4fNormal3fVertex4fvSUN");
        pglReplacementCodeuiVertex3fSUN = (PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiVertex3fSUN");
        pglReplacementCodeuiVertex3fvSUN = (PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiVertex3fvSUN");
        pglReplacementCodeuiColor4ubVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor4ubVertex3fSUN");
        pglReplacementCodeuiColor4ubVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor4ubVertex3fvSUN");
        pglReplacementCodeuiColor3fVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor3fVertex3fSUN");
        pglReplacementCodeuiColor3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor3fVertex3fvSUN");
        pglReplacementCodeuiNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiNormal3fVertex3fSUN");
        pglReplacementCodeuiNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiNormal3fVertex3fvSUN");
        pglReplacementCodeuiColor4fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor4fNormal3fVertex3fSUN");
        pglReplacementCodeuiColor4fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiColor4fNormal3fVertex3fvSUN");
        pglReplacementCodeuiTexCoord2fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fVertex3fSUN");
        pglReplacementCodeuiTexCoord2fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fVertex3fvSUN");
        pglReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN");
        pglReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN");
        pglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN");
        pglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) __GLeeGetProcAddress("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_func_separate", &extensionNames) )
    {
        GLEE_EXT_blend_func_separate = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_func_separate
        pglBlendFuncSeparateEXT = (PFNGLBLENDFUNCSEPARATEEXTPROC) __GLeeGetProcAddress("glBlendFuncSeparateEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_INGR_color_clamp", &extensionNames) )
    {
        GLEE_INGR_color_clamp = GL_TRUE;
#ifdef __GLEE_GL_INGR_color_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_INGR_interlace_read", &extensionNames) )
    {
        GLEE_INGR_interlace_read = GL_TRUE;
#ifdef __GLEE_GL_INGR_interlace_read
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_stencil_wrap", &extensionNames) )
    {
        GLEE_EXT_stencil_wrap = GL_TRUE;
#ifdef __GLEE_GL_EXT_stencil_wrap
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_422_pixels", &extensionNames) )
    {
        GLEE_EXT_422_pixels = GL_TRUE;
#ifdef __GLEE_GL_EXT_422_pixels
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texgen_reflection", &extensionNames) )
    {
        GLEE_NV_texgen_reflection = GL_TRUE;
#ifdef __GLEE_GL_NV_texgen_reflection
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_cube_map", &extensionNames) )
    {
        GLEE_EXT_texture_cube_map = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_cube_map
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_convolution_border_modes", &extensionNames) )
    {
        GLEE_SUN_convolution_border_modes = GL_TRUE;
#ifdef __GLEE_GL_SUN_convolution_border_modes
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_env_add", &extensionNames) )
    {
        GLEE_EXT_texture_env_add = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_env_add
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_lod_bias", &extensionNames) )
    {
        GLEE_EXT_texture_lod_bias = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_lod_bias
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_filter_anisotropic", &extensionNames) )
    {
        GLEE_EXT_texture_filter_anisotropic = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_filter_anisotropic
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_vertex_weighting", &extensionNames) )
    {
        GLEE_EXT_vertex_weighting = GL_TRUE;
#ifdef __GLEE_GL_EXT_vertex_weighting
        pglVertexWeightfEXT = (PFNGLVERTEXWEIGHTFEXTPROC) __GLeeGetProcAddress("glVertexWeightfEXT");
        pglVertexWeightfvEXT = (PFNGLVERTEXWEIGHTFVEXTPROC) __GLeeGetProcAddress("glVertexWeightfvEXT");
        pglVertexWeightPointerEXT = (PFNGLVERTEXWEIGHTPOINTEREXTPROC) __GLeeGetProcAddress("glVertexWeightPointerEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_light_max_exponent", &extensionNames) )
    {
        GLEE_NV_light_max_exponent = GL_TRUE;
#ifdef __GLEE_GL_NV_light_max_exponent
#endif
    }
    if (__GLeeCheckExtension("GL_NV_vertex_array_range", &extensionNames) )
    {
        GLEE_NV_vertex_array_range = GL_TRUE;
#ifdef __GLEE_GL_NV_vertex_array_range
        pglFlushVertexArrayRangeNV = (PFNGLFLUSHVERTEXARRAYRANGENVPROC) __GLeeGetProcAddress("glFlushVertexArrayRangeNV");
        pglVertexArrayRangeNV = (PFNGLVERTEXARRAYRANGENVPROC) __GLeeGetProcAddress("glVertexArrayRangeNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_register_combiners", &extensionNames) )
    {
        GLEE_NV_register_combiners = GL_TRUE;
#ifdef __GLEE_GL_NV_register_combiners
        pglCombinerParameterfvNV = (PFNGLCOMBINERPARAMETERFVNVPROC) __GLeeGetProcAddress("glCombinerParameterfvNV");
        pglCombinerParameterfNV = (PFNGLCOMBINERPARAMETERFNVPROC) __GLeeGetProcAddress("glCombinerParameterfNV");
        pglCombinerParameterivNV = (PFNGLCOMBINERPARAMETERIVNVPROC) __GLeeGetProcAddress("glCombinerParameterivNV");
        pglCombinerParameteriNV = (PFNGLCOMBINERPARAMETERINVPROC) __GLeeGetProcAddress("glCombinerParameteriNV");
        pglCombinerInputNV = (PFNGLCOMBINERINPUTNVPROC) __GLeeGetProcAddress("glCombinerInputNV");
        pglCombinerOutputNV = (PFNGLCOMBINEROUTPUTNVPROC) __GLeeGetProcAddress("glCombinerOutputNV");
        pglFinalCombinerInputNV = (PFNGLFINALCOMBINERINPUTNVPROC) __GLeeGetProcAddress("glFinalCombinerInputNV");
        pglGetCombinerInputParameterfvNV = (PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetCombinerInputParameterfvNV");
        pglGetCombinerInputParameterivNV = (PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) __GLeeGetProcAddress("glGetCombinerInputParameterivNV");
        pglGetCombinerOutputParameterfvNV = (PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetCombinerOutputParameterfvNV");
        pglGetCombinerOutputParameterivNV = (PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) __GLeeGetProcAddress("glGetCombinerOutputParameterivNV");
        pglGetFinalCombinerInputParameterfvNV = (PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetFinalCombinerInputParameterfvNV");
        pglGetFinalCombinerInputParameterivNV = (PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) __GLeeGetProcAddress("glGetFinalCombinerInputParameterivNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_fog_distance", &extensionNames) )
    {
        GLEE_NV_fog_distance = GL_TRUE;
#ifdef __GLEE_GL_NV_fog_distance
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texgen_emboss", &extensionNames) )
    {
        GLEE_NV_texgen_emboss = GL_TRUE;
#ifdef __GLEE_GL_NV_texgen_emboss
#endif
    }
    if (__GLeeCheckExtension("GL_NV_blend_square", &extensionNames) )
    {
        GLEE_NV_blend_square = GL_TRUE;
#ifdef __GLEE_GL_NV_blend_square
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_env_combine4", &extensionNames) )
    {
        GLEE_NV_texture_env_combine4 = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_env_combine4
#endif
    }
    if (__GLeeCheckExtension("GL_MESA_resize_buffers", &extensionNames) )
    {
        GLEE_MESA_resize_buffers = GL_TRUE;
#ifdef __GLEE_GL_MESA_resize_buffers
        pglResizeBuffersMESA = (PFNGLRESIZEBUFFERSMESAPROC) __GLeeGetProcAddress("glResizeBuffersMESA");
#endif
    }
    if (__GLeeCheckExtension("GL_MESA_window_pos", &extensionNames) )
    {
        GLEE_MESA_window_pos = GL_TRUE;
#ifdef __GLEE_GL_MESA_window_pos
        pglWindowPos2dMESA = (PFNGLWINDOWPOS2DMESAPROC) __GLeeGetProcAddress("glWindowPos2dMESA");
        pglWindowPos2dvMESA = (PFNGLWINDOWPOS2DVMESAPROC) __GLeeGetProcAddress("glWindowPos2dvMESA");
        pglWindowPos2fMESA = (PFNGLWINDOWPOS2FMESAPROC) __GLeeGetProcAddress("glWindowPos2fMESA");
        pglWindowPos2fvMESA = (PFNGLWINDOWPOS2FVMESAPROC) __GLeeGetProcAddress("glWindowPos2fvMESA");
        pglWindowPos2iMESA = (PFNGLWINDOWPOS2IMESAPROC) __GLeeGetProcAddress("glWindowPos2iMESA");
        pglWindowPos2ivMESA = (PFNGLWINDOWPOS2IVMESAPROC) __GLeeGetProcAddress("glWindowPos2ivMESA");
        pglWindowPos2sMESA = (PFNGLWINDOWPOS2SMESAPROC) __GLeeGetProcAddress("glWindowPos2sMESA");
        pglWindowPos2svMESA = (PFNGLWINDOWPOS2SVMESAPROC) __GLeeGetProcAddress("glWindowPos2svMESA");
        pglWindowPos3dMESA = (PFNGLWINDOWPOS3DMESAPROC) __GLeeGetProcAddress("glWindowPos3dMESA");
        pglWindowPos3dvMESA = (PFNGLWINDOWPOS3DVMESAPROC) __GLeeGetProcAddress("glWindowPos3dvMESA");
        pglWindowPos3fMESA = (PFNGLWINDOWPOS3FMESAPROC) __GLeeGetProcAddress("glWindowPos3fMESA");
        pglWindowPos3fvMESA = (PFNGLWINDOWPOS3FVMESAPROC) __GLeeGetProcAddress("glWindowPos3fvMESA");
        pglWindowPos3iMESA = (PFNGLWINDOWPOS3IMESAPROC) __GLeeGetProcAddress("glWindowPos3iMESA");
        pglWindowPos3ivMESA = (PFNGLWINDOWPOS3IVMESAPROC) __GLeeGetProcAddress("glWindowPos3ivMESA");
        pglWindowPos3sMESA = (PFNGLWINDOWPOS3SMESAPROC) __GLeeGetProcAddress("glWindowPos3sMESA");
        pglWindowPos3svMESA = (PFNGLWINDOWPOS3SVMESAPROC) __GLeeGetProcAddress("glWindowPos3svMESA");
        pglWindowPos4dMESA = (PFNGLWINDOWPOS4DMESAPROC) __GLeeGetProcAddress("glWindowPos4dMESA");
        pglWindowPos4dvMESA = (PFNGLWINDOWPOS4DVMESAPROC) __GLeeGetProcAddress("glWindowPos4dvMESA");
        pglWindowPos4fMESA = (PFNGLWINDOWPOS4FMESAPROC) __GLeeGetProcAddress("glWindowPos4fMESA");
        pglWindowPos4fvMESA = (PFNGLWINDOWPOS4FVMESAPROC) __GLeeGetProcAddress("glWindowPos4fvMESA");
        pglWindowPos4iMESA = (PFNGLWINDOWPOS4IMESAPROC) __GLeeGetProcAddress("glWindowPos4iMESA");
        pglWindowPos4ivMESA = (PFNGLWINDOWPOS4IVMESAPROC) __GLeeGetProcAddress("glWindowPos4ivMESA");
        pglWindowPos4sMESA = (PFNGLWINDOWPOS4SMESAPROC) __GLeeGetProcAddress("glWindowPos4sMESA");
        pglWindowPos4svMESA = (PFNGLWINDOWPOS4SVMESAPROC) __GLeeGetProcAddress("glWindowPos4svMESA");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_compression_s3tc", &extensionNames) )
    {
        GLEE_EXT_texture_compression_s3tc = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_compression_s3tc
#endif
    }
    if (__GLeeCheckExtension("GL_IBM_cull_vertex", &extensionNames) )
    {
        GLEE_IBM_cull_vertex = GL_TRUE;
#ifdef __GLEE_GL_IBM_cull_vertex
#endif
    }
    if (__GLeeCheckExtension("GL_IBM_multimode_draw_arrays", &extensionNames) )
    {
        GLEE_IBM_multimode_draw_arrays = GL_TRUE;
#ifdef __GLEE_GL_IBM_multimode_draw_arrays
        pglMultiModeDrawArraysIBM = (PFNGLMULTIMODEDRAWARRAYSIBMPROC) __GLeeGetProcAddress("glMultiModeDrawArraysIBM");
        pglMultiModeDrawElementsIBM = (PFNGLMULTIMODEDRAWELEMENTSIBMPROC) __GLeeGetProcAddress("glMultiModeDrawElementsIBM");
#endif
    }
    if (__GLeeCheckExtension("GL_IBM_vertex_array_lists", &extensionNames) )
    {
        GLEE_IBM_vertex_array_lists = GL_TRUE;
#ifdef __GLEE_GL_IBM_vertex_array_lists
        pglColorPointerListIBM = (PFNGLCOLORPOINTERLISTIBMPROC) __GLeeGetProcAddress("glColorPointerListIBM");
        pglSecondaryColorPointerListIBM = (PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) __GLeeGetProcAddress("glSecondaryColorPointerListIBM");
        pglEdgeFlagPointerListIBM = (PFNGLEDGEFLAGPOINTERLISTIBMPROC) __GLeeGetProcAddress("glEdgeFlagPointerListIBM");
        pglFogCoordPointerListIBM = (PFNGLFOGCOORDPOINTERLISTIBMPROC) __GLeeGetProcAddress("glFogCoordPointerListIBM");
        pglIndexPointerListIBM = (PFNGLINDEXPOINTERLISTIBMPROC) __GLeeGetProcAddress("glIndexPointerListIBM");
        pglNormalPointerListIBM = (PFNGLNORMALPOINTERLISTIBMPROC) __GLeeGetProcAddress("glNormalPointerListIBM");
        pglTexCoordPointerListIBM = (PFNGLTEXCOORDPOINTERLISTIBMPROC) __GLeeGetProcAddress("glTexCoordPointerListIBM");
        pglVertexPointerListIBM = (PFNGLVERTEXPOINTERLISTIBMPROC) __GLeeGetProcAddress("glVertexPointerListIBM");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_subsample", &extensionNames) )
    {
        GLEE_SGIX_subsample = GL_TRUE;
#ifdef __GLEE_GL_SGIX_subsample
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_ycrcb_subsample", &extensionNames) )
    {
        GLEE_SGIX_ycrcb_subsample = GL_TRUE;
#ifdef __GLEE_GL_SGIX_ycrcb_subsample
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_ycrcba", &extensionNames) )
    {
        GLEE_SGIX_ycrcba = GL_TRUE;
#ifdef __GLEE_GL_SGIX_ycrcba
#endif
    }
    if (__GLeeCheckExtension("GL_SGI_depth_pass_instrument", &extensionNames) )
    {
        GLEE_SGI_depth_pass_instrument = GL_TRUE;
#ifdef __GLEE_GL_SGI_depth_pass_instrument
#endif
    }
    if (__GLeeCheckExtension("GL_3DFX_texture_compression_FXT1", &extensionNames) )
    {
        GLEE_3DFX_texture_compression_FXT1 = GL_TRUE;
#ifdef __GLEE_GL_3DFX_texture_compression_FXT1
#endif
    }
    if (__GLeeCheckExtension("GL_3DFX_multisample", &extensionNames) )
    {
        GLEE_3DFX_multisample = GL_TRUE;
#ifdef __GLEE_GL_3DFX_multisample
#endif
    }
    if (__GLeeCheckExtension("GL_3DFX_tbuffer", &extensionNames) )
    {
        GLEE_3DFX_tbuffer = GL_TRUE;
#ifdef __GLEE_GL_3DFX_tbuffer
        pglTbufferMask3DFX = (PFNGLTBUFFERMASK3DFXPROC) __GLeeGetProcAddress("glTbufferMask3DFX");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_multisample", &extensionNames) )
    {
        GLEE_EXT_multisample = GL_TRUE;
#ifdef __GLEE_GL_EXT_multisample
        pglSampleMaskEXT = (PFNGLSAMPLEMASKEXTPROC) __GLeeGetProcAddress("glSampleMaskEXT");
        pglSamplePatternEXT = (PFNGLSAMPLEPATTERNEXTPROC) __GLeeGetProcAddress("glSamplePatternEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_vertex_preclip", &extensionNames) )
    {
        GLEE_SGIX_vertex_preclip = GL_TRUE;
#ifdef __GLEE_GL_SGIX_vertex_preclip
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_convolution_accuracy", &extensionNames) )
    {
        GLEE_SGIX_convolution_accuracy = GL_TRUE;
#ifdef __GLEE_GL_SGIX_convolution_accuracy
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_resample", &extensionNames) )
    {
        GLEE_SGIX_resample = GL_TRUE;
#ifdef __GLEE_GL_SGIX_resample
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_point_line_texgen", &extensionNames) )
    {
        GLEE_SGIS_point_line_texgen = GL_TRUE;
#ifdef __GLEE_GL_SGIS_point_line_texgen
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_color_mask", &extensionNames) )
    {
        GLEE_SGIS_texture_color_mask = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_color_mask
        pglTextureColorMaskSGIS = (PFNGLTEXTURECOLORMASKSGISPROC) __GLeeGetProcAddress("glTextureColorMaskSGIS");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_env_dot3", &extensionNames) )
    {
        GLEE_EXT_texture_env_dot3 = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_env_dot3
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_texture_mirror_once", &extensionNames) )
    {
        GLEE_ATI_texture_mirror_once = GL_TRUE;
#ifdef __GLEE_GL_ATI_texture_mirror_once
#endif
    }
    if (__GLeeCheckExtension("GL_NV_fence", &extensionNames) )
    {
        GLEE_NV_fence = GL_TRUE;
#ifdef __GLEE_GL_NV_fence
        pglDeleteFencesNV = (PFNGLDELETEFENCESNVPROC) __GLeeGetProcAddress("glDeleteFencesNV");
        pglGenFencesNV = (PFNGLGENFENCESNVPROC) __GLeeGetProcAddress("glGenFencesNV");
        pglIsFenceNV = (PFNGLISFENCENVPROC) __GLeeGetProcAddress("glIsFenceNV");
        pglTestFenceNV = (PFNGLTESTFENCENVPROC) __GLeeGetProcAddress("glTestFenceNV");
        pglGetFenceivNV = (PFNGLGETFENCEIVNVPROC) __GLeeGetProcAddress("glGetFenceivNV");
        pglFinishFenceNV = (PFNGLFINISHFENCENVPROC) __GLeeGetProcAddress("glFinishFenceNV");
        pglSetFenceNV = (PFNGLSETFENCENVPROC) __GLeeGetProcAddress("glSetFenceNV");
#endif
    }
    if (__GLeeCheckExtension("GL_IBM_texture_mirrored_repeat", &extensionNames) )
    {
        GLEE_IBM_texture_mirrored_repeat = GL_TRUE;
#ifdef __GLEE_GL_IBM_texture_mirrored_repeat
#endif
    }
    if (__GLeeCheckExtension("GL_NV_evaluators", &extensionNames) )
    {
        GLEE_NV_evaluators = GL_TRUE;
#ifdef __GLEE_GL_NV_evaluators
        pglMapControlPointsNV = (PFNGLMAPCONTROLPOINTSNVPROC) __GLeeGetProcAddress("glMapControlPointsNV");
        pglMapParameterivNV = (PFNGLMAPPARAMETERIVNVPROC) __GLeeGetProcAddress("glMapParameterivNV");
        pglMapParameterfvNV = (PFNGLMAPPARAMETERFVNVPROC) __GLeeGetProcAddress("glMapParameterfvNV");
        pglGetMapControlPointsNV = (PFNGLGETMAPCONTROLPOINTSNVPROC) __GLeeGetProcAddress("glGetMapControlPointsNV");
        pglGetMapParameterivNV = (PFNGLGETMAPPARAMETERIVNVPROC) __GLeeGetProcAddress("glGetMapParameterivNV");
        pglGetMapParameterfvNV = (PFNGLGETMAPPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetMapParameterfvNV");
        pglGetMapAttribParameterivNV = (PFNGLGETMAPATTRIBPARAMETERIVNVPROC) __GLeeGetProcAddress("glGetMapAttribParameterivNV");
        pglGetMapAttribParameterfvNV = (PFNGLGETMAPATTRIBPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetMapAttribParameterfvNV");
        pglEvalMapsNV = (PFNGLEVALMAPSNVPROC) __GLeeGetProcAddress("glEvalMapsNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_packed_depth_stencil", &extensionNames) )
    {
        GLEE_NV_packed_depth_stencil = GL_TRUE;
#ifdef __GLEE_GL_NV_packed_depth_stencil
#endif
    }
    if (__GLeeCheckExtension("GL_NV_register_combiners2", &extensionNames) )
    {
        GLEE_NV_register_combiners2 = GL_TRUE;
#ifdef __GLEE_GL_NV_register_combiners2
        pglCombinerStageParameterfvNV = (PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) __GLeeGetProcAddress("glCombinerStageParameterfvNV");
        pglGetCombinerStageParameterfvNV = (PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetCombinerStageParameterfvNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_compression_vtc", &extensionNames) )
    {
        GLEE_NV_texture_compression_vtc = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_compression_vtc
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_rectangle", &extensionNames) )
    {
        GLEE_NV_texture_rectangle = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_rectangle
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_shader", &extensionNames) )
    {
        GLEE_NV_texture_shader = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_shader
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_shader2", &extensionNames) )
    {
        GLEE_NV_texture_shader2 = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_shader2
#endif
    }
    if (__GLeeCheckExtension("GL_NV_vertex_array_range2", &extensionNames) )
    {
        GLEE_NV_vertex_array_range2 = GL_TRUE;
#ifdef __GLEE_GL_NV_vertex_array_range2
#endif
    }
    if (__GLeeCheckExtension("GL_NV_vertex_program", &extensionNames) )
    {
        GLEE_NV_vertex_program = GL_TRUE;
#ifdef __GLEE_GL_NV_vertex_program
        pglAreProgramsResidentNV = (PFNGLAREPROGRAMSRESIDENTNVPROC) __GLeeGetProcAddress("glAreProgramsResidentNV");
        pglBindProgramNV = (PFNGLBINDPROGRAMNVPROC) __GLeeGetProcAddress("glBindProgramNV");
        pglDeleteProgramsNV = (PFNGLDELETEPROGRAMSNVPROC) __GLeeGetProcAddress("glDeleteProgramsNV");
        pglExecuteProgramNV = (PFNGLEXECUTEPROGRAMNVPROC) __GLeeGetProcAddress("glExecuteProgramNV");
        pglGenProgramsNV = (PFNGLGENPROGRAMSNVPROC) __GLeeGetProcAddress("glGenProgramsNV");
        pglGetProgramParameterdvNV = (PFNGLGETPROGRAMPARAMETERDVNVPROC) __GLeeGetProcAddress("glGetProgramParameterdvNV");
        pglGetProgramParameterfvNV = (PFNGLGETPROGRAMPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetProgramParameterfvNV");
        pglGetProgramivNV = (PFNGLGETPROGRAMIVNVPROC) __GLeeGetProcAddress("glGetProgramivNV");
        pglGetProgramStringNV = (PFNGLGETPROGRAMSTRINGNVPROC) __GLeeGetProcAddress("glGetProgramStringNV");
        pglGetTrackMatrixivNV = (PFNGLGETTRACKMATRIXIVNVPROC) __GLeeGetProcAddress("glGetTrackMatrixivNV");
        pglGetVertexAttribdvNV = (PFNGLGETVERTEXATTRIBDVNVPROC) __GLeeGetProcAddress("glGetVertexAttribdvNV");
        pglGetVertexAttribfvNV = (PFNGLGETVERTEXATTRIBFVNVPROC) __GLeeGetProcAddress("glGetVertexAttribfvNV");
        pglGetVertexAttribivNV = (PFNGLGETVERTEXATTRIBIVNVPROC) __GLeeGetProcAddress("glGetVertexAttribivNV");
        pglGetVertexAttribPointervNV = (PFNGLGETVERTEXATTRIBPOINTERVNVPROC) __GLeeGetProcAddress("glGetVertexAttribPointervNV");
        pglIsProgramNV = (PFNGLISPROGRAMNVPROC) __GLeeGetProcAddress("glIsProgramNV");
        pglLoadProgramNV = (PFNGLLOADPROGRAMNVPROC) __GLeeGetProcAddress("glLoadProgramNV");
        pglProgramParameter4dNV = (PFNGLPROGRAMPARAMETER4DNVPROC) __GLeeGetProcAddress("glProgramParameter4dNV");
        pglProgramParameter4dvNV = (PFNGLPROGRAMPARAMETER4DVNVPROC) __GLeeGetProcAddress("glProgramParameter4dvNV");
        pglProgramParameter4fNV = (PFNGLPROGRAMPARAMETER4FNVPROC) __GLeeGetProcAddress("glProgramParameter4fNV");
        pglProgramParameter4fvNV = (PFNGLPROGRAMPARAMETER4FVNVPROC) __GLeeGetProcAddress("glProgramParameter4fvNV");
        pglProgramParameters4dvNV = (PFNGLPROGRAMPARAMETERS4DVNVPROC) __GLeeGetProcAddress("glProgramParameters4dvNV");
        pglProgramParameters4fvNV = (PFNGLPROGRAMPARAMETERS4FVNVPROC) __GLeeGetProcAddress("glProgramParameters4fvNV");
        pglRequestResidentProgramsNV = (PFNGLREQUESTRESIDENTPROGRAMSNVPROC) __GLeeGetProcAddress("glRequestResidentProgramsNV");
        pglTrackMatrixNV = (PFNGLTRACKMATRIXNVPROC) __GLeeGetProcAddress("glTrackMatrixNV");
        pglVertexAttribPointerNV = (PFNGLVERTEXATTRIBPOINTERNVPROC) __GLeeGetProcAddress("glVertexAttribPointerNV");
        pglVertexAttrib1dNV = (PFNGLVERTEXATTRIB1DNVPROC) __GLeeGetProcAddress("glVertexAttrib1dNV");
        pglVertexAttrib1dvNV = (PFNGLVERTEXATTRIB1DVNVPROC) __GLeeGetProcAddress("glVertexAttrib1dvNV");
        pglVertexAttrib1fNV = (PFNGLVERTEXATTRIB1FNVPROC) __GLeeGetProcAddress("glVertexAttrib1fNV");
        pglVertexAttrib1fvNV = (PFNGLVERTEXATTRIB1FVNVPROC) __GLeeGetProcAddress("glVertexAttrib1fvNV");
        pglVertexAttrib1sNV = (PFNGLVERTEXATTRIB1SNVPROC) __GLeeGetProcAddress("glVertexAttrib1sNV");
        pglVertexAttrib1svNV = (PFNGLVERTEXATTRIB1SVNVPROC) __GLeeGetProcAddress("glVertexAttrib1svNV");
        pglVertexAttrib2dNV = (PFNGLVERTEXATTRIB2DNVPROC) __GLeeGetProcAddress("glVertexAttrib2dNV");
        pglVertexAttrib2dvNV = (PFNGLVERTEXATTRIB2DVNVPROC) __GLeeGetProcAddress("glVertexAttrib2dvNV");
        pglVertexAttrib2fNV = (PFNGLVERTEXATTRIB2FNVPROC) __GLeeGetProcAddress("glVertexAttrib2fNV");
        pglVertexAttrib2fvNV = (PFNGLVERTEXATTRIB2FVNVPROC) __GLeeGetProcAddress("glVertexAttrib2fvNV");
        pglVertexAttrib2sNV = (PFNGLVERTEXATTRIB2SNVPROC) __GLeeGetProcAddress("glVertexAttrib2sNV");
        pglVertexAttrib2svNV = (PFNGLVERTEXATTRIB2SVNVPROC) __GLeeGetProcAddress("glVertexAttrib2svNV");
        pglVertexAttrib3dNV = (PFNGLVERTEXATTRIB3DNVPROC) __GLeeGetProcAddress("glVertexAttrib3dNV");
        pglVertexAttrib3dvNV = (PFNGLVERTEXATTRIB3DVNVPROC) __GLeeGetProcAddress("glVertexAttrib3dvNV");
        pglVertexAttrib3fNV = (PFNGLVERTEXATTRIB3FNVPROC) __GLeeGetProcAddress("glVertexAttrib3fNV");
        pglVertexAttrib3fvNV = (PFNGLVERTEXATTRIB3FVNVPROC) __GLeeGetProcAddress("glVertexAttrib3fvNV");
        pglVertexAttrib3sNV = (PFNGLVERTEXATTRIB3SNVPROC) __GLeeGetProcAddress("glVertexAttrib3sNV");
        pglVertexAttrib3svNV = (PFNGLVERTEXATTRIB3SVNVPROC) __GLeeGetProcAddress("glVertexAttrib3svNV");
        pglVertexAttrib4dNV = (PFNGLVERTEXATTRIB4DNVPROC) __GLeeGetProcAddress("glVertexAttrib4dNV");
        pglVertexAttrib4dvNV = (PFNGLVERTEXATTRIB4DVNVPROC) __GLeeGetProcAddress("glVertexAttrib4dvNV");
        pglVertexAttrib4fNV = (PFNGLVERTEXATTRIB4FNVPROC) __GLeeGetProcAddress("glVertexAttrib4fNV");
        pglVertexAttrib4fvNV = (PFNGLVERTEXATTRIB4FVNVPROC) __GLeeGetProcAddress("glVertexAttrib4fvNV");
        pglVertexAttrib4sNV = (PFNGLVERTEXATTRIB4SNVPROC) __GLeeGetProcAddress("glVertexAttrib4sNV");
        pglVertexAttrib4svNV = (PFNGLVERTEXATTRIB4SVNVPROC) __GLeeGetProcAddress("glVertexAttrib4svNV");
        pglVertexAttrib4ubNV = (PFNGLVERTEXATTRIB4UBNVPROC) __GLeeGetProcAddress("glVertexAttrib4ubNV");
        pglVertexAttrib4ubvNV = (PFNGLVERTEXATTRIB4UBVNVPROC) __GLeeGetProcAddress("glVertexAttrib4ubvNV");
        pglVertexAttribs1dvNV = (PFNGLVERTEXATTRIBS1DVNVPROC) __GLeeGetProcAddress("glVertexAttribs1dvNV");
        pglVertexAttribs1fvNV = (PFNGLVERTEXATTRIBS1FVNVPROC) __GLeeGetProcAddress("glVertexAttribs1fvNV");
        pglVertexAttribs1svNV = (PFNGLVERTEXATTRIBS1SVNVPROC) __GLeeGetProcAddress("glVertexAttribs1svNV");
        pglVertexAttribs2dvNV = (PFNGLVERTEXATTRIBS2DVNVPROC) __GLeeGetProcAddress("glVertexAttribs2dvNV");
        pglVertexAttribs2fvNV = (PFNGLVERTEXATTRIBS2FVNVPROC) __GLeeGetProcAddress("glVertexAttribs2fvNV");
        pglVertexAttribs2svNV = (PFNGLVERTEXATTRIBS2SVNVPROC) __GLeeGetProcAddress("glVertexAttribs2svNV");
        pglVertexAttribs3dvNV = (PFNGLVERTEXATTRIBS3DVNVPROC) __GLeeGetProcAddress("glVertexAttribs3dvNV");
        pglVertexAttribs3fvNV = (PFNGLVERTEXATTRIBS3FVNVPROC) __GLeeGetProcAddress("glVertexAttribs3fvNV");
        pglVertexAttribs3svNV = (PFNGLVERTEXATTRIBS3SVNVPROC) __GLeeGetProcAddress("glVertexAttribs3svNV");
        pglVertexAttribs4dvNV = (PFNGLVERTEXATTRIBS4DVNVPROC) __GLeeGetProcAddress("glVertexAttribs4dvNV");
        pglVertexAttribs4fvNV = (PFNGLVERTEXATTRIBS4FVNVPROC) __GLeeGetProcAddress("glVertexAttribs4fvNV");
        pglVertexAttribs4svNV = (PFNGLVERTEXATTRIBS4SVNVPROC) __GLeeGetProcAddress("glVertexAttribs4svNV");
        pglVertexAttribs4ubvNV = (PFNGLVERTEXATTRIBS4UBVNVPROC) __GLeeGetProcAddress("glVertexAttribs4ubvNV");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_coordinate_clamp", &extensionNames) )
    {
        GLEE_SGIX_texture_coordinate_clamp = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_coordinate_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_scalebias_hint", &extensionNames) )
    {
        GLEE_SGIX_scalebias_hint = GL_TRUE;
#ifdef __GLEE_GL_SGIX_scalebias_hint
#endif
    }
    if (__GLeeCheckExtension("GL_OML_interlace", &extensionNames) )
    {
        GLEE_OML_interlace = GL_TRUE;
#ifdef __GLEE_GL_OML_interlace
#endif
    }
    if (__GLeeCheckExtension("GL_OML_subsample", &extensionNames) )
    {
        GLEE_OML_subsample = GL_TRUE;
#ifdef __GLEE_GL_OML_subsample
#endif
    }
    if (__GLeeCheckExtension("GL_OML_resample", &extensionNames) )
    {
        GLEE_OML_resample = GL_TRUE;
#ifdef __GLEE_GL_OML_resample
#endif
    }
    if (__GLeeCheckExtension("GL_NV_copy_depth_to_color", &extensionNames) )
    {
        GLEE_NV_copy_depth_to_color = GL_TRUE;
#ifdef __GLEE_GL_NV_copy_depth_to_color
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_envmap_bumpmap", &extensionNames) )
    {
        GLEE_ATI_envmap_bumpmap = GL_TRUE;
#ifdef __GLEE_GL_ATI_envmap_bumpmap
        pglTexBumpParameterivATI = (PFNGLTEXBUMPPARAMETERIVATIPROC) __GLeeGetProcAddress("glTexBumpParameterivATI");
        pglTexBumpParameterfvATI = (PFNGLTEXBUMPPARAMETERFVATIPROC) __GLeeGetProcAddress("glTexBumpParameterfvATI");
        pglGetTexBumpParameterivATI = (PFNGLGETTEXBUMPPARAMETERIVATIPROC) __GLeeGetProcAddress("glGetTexBumpParameterivATI");
        pglGetTexBumpParameterfvATI = (PFNGLGETTEXBUMPPARAMETERFVATIPROC) __GLeeGetProcAddress("glGetTexBumpParameterfvATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_fragment_shader", &extensionNames) )
    {
        GLEE_ATI_fragment_shader = GL_TRUE;
#ifdef __GLEE_GL_ATI_fragment_shader
        pglGenFragmentShadersATI = (PFNGLGENFRAGMENTSHADERSATIPROC) __GLeeGetProcAddress("glGenFragmentShadersATI");
        pglBindFragmentShaderATI = (PFNGLBINDFRAGMENTSHADERATIPROC) __GLeeGetProcAddress("glBindFragmentShaderATI");
        pglDeleteFragmentShaderATI = (PFNGLDELETEFRAGMENTSHADERATIPROC) __GLeeGetProcAddress("glDeleteFragmentShaderATI");
        pglBeginFragmentShaderATI = (PFNGLBEGINFRAGMENTSHADERATIPROC) __GLeeGetProcAddress("glBeginFragmentShaderATI");
        pglEndFragmentShaderATI = (PFNGLENDFRAGMENTSHADERATIPROC) __GLeeGetProcAddress("glEndFragmentShaderATI");
        pglPassTexCoordATI = (PFNGLPASSTEXCOORDATIPROC) __GLeeGetProcAddress("glPassTexCoordATI");
        pglSampleMapATI = (PFNGLSAMPLEMAPATIPROC) __GLeeGetProcAddress("glSampleMapATI");
        pglColorFragmentOp1ATI = (PFNGLCOLORFRAGMENTOP1ATIPROC) __GLeeGetProcAddress("glColorFragmentOp1ATI");
        pglColorFragmentOp2ATI = (PFNGLCOLORFRAGMENTOP2ATIPROC) __GLeeGetProcAddress("glColorFragmentOp2ATI");
        pglColorFragmentOp3ATI = (PFNGLCOLORFRAGMENTOP3ATIPROC) __GLeeGetProcAddress("glColorFragmentOp3ATI");
        pglAlphaFragmentOp1ATI = (PFNGLALPHAFRAGMENTOP1ATIPROC) __GLeeGetProcAddress("glAlphaFragmentOp1ATI");
        pglAlphaFragmentOp2ATI = (PFNGLALPHAFRAGMENTOP2ATIPROC) __GLeeGetProcAddress("glAlphaFragmentOp2ATI");
        pglAlphaFragmentOp3ATI = (PFNGLALPHAFRAGMENTOP3ATIPROC) __GLeeGetProcAddress("glAlphaFragmentOp3ATI");
        pglSetFragmentShaderConstantATI = (PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) __GLeeGetProcAddress("glSetFragmentShaderConstantATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_pn_triangles", &extensionNames) )
    {
        GLEE_ATI_pn_triangles = GL_TRUE;
#ifdef __GLEE_GL_ATI_pn_triangles
        pglPNTrianglesiATI = (PFNGLPNTRIANGLESIATIPROC) __GLeeGetProcAddress("glPNTrianglesiATI");
        pglPNTrianglesfATI = (PFNGLPNTRIANGLESFATIPROC) __GLeeGetProcAddress("glPNTrianglesfATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_vertex_array_object", &extensionNames) )
    {
        GLEE_ATI_vertex_array_object = GL_TRUE;
#ifdef __GLEE_GL_ATI_vertex_array_object
        pglNewObjectBufferATI = (PFNGLNEWOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glNewObjectBufferATI");
        pglIsObjectBufferATI = (PFNGLISOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glIsObjectBufferATI");
        pglUpdateObjectBufferATI = (PFNGLUPDATEOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glUpdateObjectBufferATI");
        pglGetObjectBufferfvATI = (PFNGLGETOBJECTBUFFERFVATIPROC) __GLeeGetProcAddress("glGetObjectBufferfvATI");
        pglGetObjectBufferivATI = (PFNGLGETOBJECTBUFFERIVATIPROC) __GLeeGetProcAddress("glGetObjectBufferivATI");
        pglFreeObjectBufferATI = (PFNGLFREEOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glFreeObjectBufferATI");
        pglArrayObjectATI = (PFNGLARRAYOBJECTATIPROC) __GLeeGetProcAddress("glArrayObjectATI");
        pglGetArrayObjectfvATI = (PFNGLGETARRAYOBJECTFVATIPROC) __GLeeGetProcAddress("glGetArrayObjectfvATI");
        pglGetArrayObjectivATI = (PFNGLGETARRAYOBJECTIVATIPROC) __GLeeGetProcAddress("glGetArrayObjectivATI");
        pglVariantArrayObjectATI = (PFNGLVARIANTARRAYOBJECTATIPROC) __GLeeGetProcAddress("glVariantArrayObjectATI");
        pglGetVariantArrayObjectfvATI = (PFNGLGETVARIANTARRAYOBJECTFVATIPROC) __GLeeGetProcAddress("glGetVariantArrayObjectfvATI");
        pglGetVariantArrayObjectivATI = (PFNGLGETVARIANTARRAYOBJECTIVATIPROC) __GLeeGetProcAddress("glGetVariantArrayObjectivATI");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_vertex_shader", &extensionNames) )
    {
        GLEE_EXT_vertex_shader = GL_TRUE;
#ifdef __GLEE_GL_EXT_vertex_shader
        pglBeginVertexShaderEXT = (PFNGLBEGINVERTEXSHADEREXTPROC) __GLeeGetProcAddress("glBeginVertexShaderEXT");
        pglEndVertexShaderEXT = (PFNGLENDVERTEXSHADEREXTPROC) __GLeeGetProcAddress("glEndVertexShaderEXT");
        pglBindVertexShaderEXT = (PFNGLBINDVERTEXSHADEREXTPROC) __GLeeGetProcAddress("glBindVertexShaderEXT");
        pglGenVertexShadersEXT = (PFNGLGENVERTEXSHADERSEXTPROC) __GLeeGetProcAddress("glGenVertexShadersEXT");
        pglDeleteVertexShaderEXT = (PFNGLDELETEVERTEXSHADEREXTPROC) __GLeeGetProcAddress("glDeleteVertexShaderEXT");
        pglShaderOp1EXT = (PFNGLSHADEROP1EXTPROC) __GLeeGetProcAddress("glShaderOp1EXT");
        pglShaderOp2EXT = (PFNGLSHADEROP2EXTPROC) __GLeeGetProcAddress("glShaderOp2EXT");
        pglShaderOp3EXT = (PFNGLSHADEROP3EXTPROC) __GLeeGetProcAddress("glShaderOp3EXT");
        pglSwizzleEXT = (PFNGLSWIZZLEEXTPROC) __GLeeGetProcAddress("glSwizzleEXT");
        pglWriteMaskEXT = (PFNGLWRITEMASKEXTPROC) __GLeeGetProcAddress("glWriteMaskEXT");
        pglInsertComponentEXT = (PFNGLINSERTCOMPONENTEXTPROC) __GLeeGetProcAddress("glInsertComponentEXT");
        pglExtractComponentEXT = (PFNGLEXTRACTCOMPONENTEXTPROC) __GLeeGetProcAddress("glExtractComponentEXT");
        pglGenSymbolsEXT = (PFNGLGENSYMBOLSEXTPROC) __GLeeGetProcAddress("glGenSymbolsEXT");
        pglSetInvariantEXT = (PFNGLSETINVARIANTEXTPROC) __GLeeGetProcAddress("glSetInvariantEXT");
        pglSetLocalConstantEXT = (PFNGLSETLOCALCONSTANTEXTPROC) __GLeeGetProcAddress("glSetLocalConstantEXT");
        pglVariantbvEXT = (PFNGLVARIANTBVEXTPROC) __GLeeGetProcAddress("glVariantbvEXT");
        pglVariantsvEXT = (PFNGLVARIANTSVEXTPROC) __GLeeGetProcAddress("glVariantsvEXT");
        pglVariantivEXT = (PFNGLVARIANTIVEXTPROC) __GLeeGetProcAddress("glVariantivEXT");
        pglVariantfvEXT = (PFNGLVARIANTFVEXTPROC) __GLeeGetProcAddress("glVariantfvEXT");
        pglVariantdvEXT = (PFNGLVARIANTDVEXTPROC) __GLeeGetProcAddress("glVariantdvEXT");
        pglVariantubvEXT = (PFNGLVARIANTUBVEXTPROC) __GLeeGetProcAddress("glVariantubvEXT");
        pglVariantusvEXT = (PFNGLVARIANTUSVEXTPROC) __GLeeGetProcAddress("glVariantusvEXT");
        pglVariantuivEXT = (PFNGLVARIANTUIVEXTPROC) __GLeeGetProcAddress("glVariantuivEXT");
        pglVariantPointerEXT = (PFNGLVARIANTPOINTEREXTPROC) __GLeeGetProcAddress("glVariantPointerEXT");
        pglEnableVariantClientStateEXT = (PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) __GLeeGetProcAddress("glEnableVariantClientStateEXT");
        pglDisableVariantClientStateEXT = (PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) __GLeeGetProcAddress("glDisableVariantClientStateEXT");
        pglBindLightParameterEXT = (PFNGLBINDLIGHTPARAMETEREXTPROC) __GLeeGetProcAddress("glBindLightParameterEXT");
        pglBindMaterialParameterEXT = (PFNGLBINDMATERIALPARAMETEREXTPROC) __GLeeGetProcAddress("glBindMaterialParameterEXT");
        pglBindTexGenParameterEXT = (PFNGLBINDTEXGENPARAMETEREXTPROC) __GLeeGetProcAddress("glBindTexGenParameterEXT");
        pglBindTextureUnitParameterEXT = (PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) __GLeeGetProcAddress("glBindTextureUnitParameterEXT");
        pglBindParameterEXT = (PFNGLBINDPARAMETEREXTPROC) __GLeeGetProcAddress("glBindParameterEXT");
        pglIsVariantEnabledEXT = (PFNGLISVARIANTENABLEDEXTPROC) __GLeeGetProcAddress("glIsVariantEnabledEXT");
        pglGetVariantBooleanvEXT = (PFNGLGETVARIANTBOOLEANVEXTPROC) __GLeeGetProcAddress("glGetVariantBooleanvEXT");
        pglGetVariantIntegervEXT = (PFNGLGETVARIANTINTEGERVEXTPROC) __GLeeGetProcAddress("glGetVariantIntegervEXT");
        pglGetVariantFloatvEXT = (PFNGLGETVARIANTFLOATVEXTPROC) __GLeeGetProcAddress("glGetVariantFloatvEXT");
        pglGetVariantPointervEXT = (PFNGLGETVARIANTPOINTERVEXTPROC) __GLeeGetProcAddress("glGetVariantPointervEXT");
        pglGetInvariantBooleanvEXT = (PFNGLGETINVARIANTBOOLEANVEXTPROC) __GLeeGetProcAddress("glGetInvariantBooleanvEXT");
        pglGetInvariantIntegervEXT = (PFNGLGETINVARIANTINTEGERVEXTPROC) __GLeeGetProcAddress("glGetInvariantIntegervEXT");
        pglGetInvariantFloatvEXT = (PFNGLGETINVARIANTFLOATVEXTPROC) __GLeeGetProcAddress("glGetInvariantFloatvEXT");
        pglGetLocalConstantBooleanvEXT = (PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) __GLeeGetProcAddress("glGetLocalConstantBooleanvEXT");
        pglGetLocalConstantIntegervEXT = (PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) __GLeeGetProcAddress("glGetLocalConstantIntegervEXT");
        pglGetLocalConstantFloatvEXT = (PFNGLGETLOCALCONSTANTFLOATVEXTPROC) __GLeeGetProcAddress("glGetLocalConstantFloatvEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_vertex_streams", &extensionNames) )
    {
        GLEE_ATI_vertex_streams = GL_TRUE;
#ifdef __GLEE_GL_ATI_vertex_streams
        pglVertexStream1sATI = (PFNGLVERTEXSTREAM1SATIPROC) __GLeeGetProcAddress("glVertexStream1sATI");
        pglVertexStream1svATI = (PFNGLVERTEXSTREAM1SVATIPROC) __GLeeGetProcAddress("glVertexStream1svATI");
        pglVertexStream1iATI = (PFNGLVERTEXSTREAM1IATIPROC) __GLeeGetProcAddress("glVertexStream1iATI");
        pglVertexStream1ivATI = (PFNGLVERTEXSTREAM1IVATIPROC) __GLeeGetProcAddress("glVertexStream1ivATI");
        pglVertexStream1fATI = (PFNGLVERTEXSTREAM1FATIPROC) __GLeeGetProcAddress("glVertexStream1fATI");
        pglVertexStream1fvATI = (PFNGLVERTEXSTREAM1FVATIPROC) __GLeeGetProcAddress("glVertexStream1fvATI");
        pglVertexStream1dATI = (PFNGLVERTEXSTREAM1DATIPROC) __GLeeGetProcAddress("glVertexStream1dATI");
        pglVertexStream1dvATI = (PFNGLVERTEXSTREAM1DVATIPROC) __GLeeGetProcAddress("glVertexStream1dvATI");
        pglVertexStream2sATI = (PFNGLVERTEXSTREAM2SATIPROC) __GLeeGetProcAddress("glVertexStream2sATI");
        pglVertexStream2svATI = (PFNGLVERTEXSTREAM2SVATIPROC) __GLeeGetProcAddress("glVertexStream2svATI");
        pglVertexStream2iATI = (PFNGLVERTEXSTREAM2IATIPROC) __GLeeGetProcAddress("glVertexStream2iATI");
        pglVertexStream2ivATI = (PFNGLVERTEXSTREAM2IVATIPROC) __GLeeGetProcAddress("glVertexStream2ivATI");
        pglVertexStream2fATI = (PFNGLVERTEXSTREAM2FATIPROC) __GLeeGetProcAddress("glVertexStream2fATI");
        pglVertexStream2fvATI = (PFNGLVERTEXSTREAM2FVATIPROC) __GLeeGetProcAddress("glVertexStream2fvATI");
        pglVertexStream2dATI = (PFNGLVERTEXSTREAM2DATIPROC) __GLeeGetProcAddress("glVertexStream2dATI");
        pglVertexStream2dvATI = (PFNGLVERTEXSTREAM2DVATIPROC) __GLeeGetProcAddress("glVertexStream2dvATI");
        pglVertexStream3sATI = (PFNGLVERTEXSTREAM3SATIPROC) __GLeeGetProcAddress("glVertexStream3sATI");
        pglVertexStream3svATI = (PFNGLVERTEXSTREAM3SVATIPROC) __GLeeGetProcAddress("glVertexStream3svATI");
        pglVertexStream3iATI = (PFNGLVERTEXSTREAM3IATIPROC) __GLeeGetProcAddress("glVertexStream3iATI");
        pglVertexStream3ivATI = (PFNGLVERTEXSTREAM3IVATIPROC) __GLeeGetProcAddress("glVertexStream3ivATI");
        pglVertexStream3fATI = (PFNGLVERTEXSTREAM3FATIPROC) __GLeeGetProcAddress("glVertexStream3fATI");
        pglVertexStream3fvATI = (PFNGLVERTEXSTREAM3FVATIPROC) __GLeeGetProcAddress("glVertexStream3fvATI");
        pglVertexStream3dATI = (PFNGLVERTEXSTREAM3DATIPROC) __GLeeGetProcAddress("glVertexStream3dATI");
        pglVertexStream3dvATI = (PFNGLVERTEXSTREAM3DVATIPROC) __GLeeGetProcAddress("glVertexStream3dvATI");
        pglVertexStream4sATI = (PFNGLVERTEXSTREAM4SATIPROC) __GLeeGetProcAddress("glVertexStream4sATI");
        pglVertexStream4svATI = (PFNGLVERTEXSTREAM4SVATIPROC) __GLeeGetProcAddress("glVertexStream4svATI");
        pglVertexStream4iATI = (PFNGLVERTEXSTREAM4IATIPROC) __GLeeGetProcAddress("glVertexStream4iATI");
        pglVertexStream4ivATI = (PFNGLVERTEXSTREAM4IVATIPROC) __GLeeGetProcAddress("glVertexStream4ivATI");
        pglVertexStream4fATI = (PFNGLVERTEXSTREAM4FATIPROC) __GLeeGetProcAddress("glVertexStream4fATI");
        pglVertexStream4fvATI = (PFNGLVERTEXSTREAM4FVATIPROC) __GLeeGetProcAddress("glVertexStream4fvATI");
        pglVertexStream4dATI = (PFNGLVERTEXSTREAM4DATIPROC) __GLeeGetProcAddress("glVertexStream4dATI");
        pglVertexStream4dvATI = (PFNGLVERTEXSTREAM4DVATIPROC) __GLeeGetProcAddress("glVertexStream4dvATI");
        pglNormalStream3bATI = (PFNGLNORMALSTREAM3BATIPROC) __GLeeGetProcAddress("glNormalStream3bATI");
        pglNormalStream3bvATI = (PFNGLNORMALSTREAM3BVATIPROC) __GLeeGetProcAddress("glNormalStream3bvATI");
        pglNormalStream3sATI = (PFNGLNORMALSTREAM3SATIPROC) __GLeeGetProcAddress("glNormalStream3sATI");
        pglNormalStream3svATI = (PFNGLNORMALSTREAM3SVATIPROC) __GLeeGetProcAddress("glNormalStream3svATI");
        pglNormalStream3iATI = (PFNGLNORMALSTREAM3IATIPROC) __GLeeGetProcAddress("glNormalStream3iATI");
        pglNormalStream3ivATI = (PFNGLNORMALSTREAM3IVATIPROC) __GLeeGetProcAddress("glNormalStream3ivATI");
        pglNormalStream3fATI = (PFNGLNORMALSTREAM3FATIPROC) __GLeeGetProcAddress("glNormalStream3fATI");
        pglNormalStream3fvATI = (PFNGLNORMALSTREAM3FVATIPROC) __GLeeGetProcAddress("glNormalStream3fvATI");
        pglNormalStream3dATI = (PFNGLNORMALSTREAM3DATIPROC) __GLeeGetProcAddress("glNormalStream3dATI");
        pglNormalStream3dvATI = (PFNGLNORMALSTREAM3DVATIPROC) __GLeeGetProcAddress("glNormalStream3dvATI");
        pglClientActiveVertexStreamATI = (PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) __GLeeGetProcAddress("glClientActiveVertexStreamATI");
        pglVertexBlendEnviATI = (PFNGLVERTEXBLENDENVIATIPROC) __GLeeGetProcAddress("glVertexBlendEnviATI");
        pglVertexBlendEnvfATI = (PFNGLVERTEXBLENDENVFATIPROC) __GLeeGetProcAddress("glVertexBlendEnvfATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_element_array", &extensionNames) )
    {
        GLEE_ATI_element_array = GL_TRUE;
#ifdef __GLEE_GL_ATI_element_array
        pglElementPointerATI = (PFNGLELEMENTPOINTERATIPROC) __GLeeGetProcAddress("glElementPointerATI");
        pglDrawElementArrayATI = (PFNGLDRAWELEMENTARRAYATIPROC) __GLeeGetProcAddress("glDrawElementArrayATI");
        pglDrawRangeElementArrayATI = (PFNGLDRAWRANGEELEMENTARRAYATIPROC) __GLeeGetProcAddress("glDrawRangeElementArrayATI");
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_mesh_array", &extensionNames) )
    {
        GLEE_SUN_mesh_array = GL_TRUE;
#ifdef __GLEE_GL_SUN_mesh_array
        pglDrawMeshArraysSUN = (PFNGLDRAWMESHARRAYSSUNPROC) __GLeeGetProcAddress("glDrawMeshArraysSUN");
#endif
    }
    if (__GLeeCheckExtension("GL_SUN_slice_accum", &extensionNames) )
    {
        GLEE_SUN_slice_accum = GL_TRUE;
#ifdef __GLEE_GL_SUN_slice_accum
#endif
    }
    if (__GLeeCheckExtension("GL_NV_multisample_filter_hint", &extensionNames) )
    {
        GLEE_NV_multisample_filter_hint = GL_TRUE;
#ifdef __GLEE_GL_NV_multisample_filter_hint
#endif
    }
    if (__GLeeCheckExtension("GL_NV_depth_clamp", &extensionNames) )
    {
        GLEE_NV_depth_clamp = GL_TRUE;
#ifdef __GLEE_GL_NV_depth_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_NV_occlusion_query", &extensionNames) )
    {
        GLEE_NV_occlusion_query = GL_TRUE;
#ifdef __GLEE_GL_NV_occlusion_query
        pglGenOcclusionQueriesNV = (PFNGLGENOCCLUSIONQUERIESNVPROC) __GLeeGetProcAddress("glGenOcclusionQueriesNV");
        pglDeleteOcclusionQueriesNV = (PFNGLDELETEOCCLUSIONQUERIESNVPROC) __GLeeGetProcAddress("glDeleteOcclusionQueriesNV");
        pglIsOcclusionQueryNV = (PFNGLISOCCLUSIONQUERYNVPROC) __GLeeGetProcAddress("glIsOcclusionQueryNV");
        pglBeginOcclusionQueryNV = (PFNGLBEGINOCCLUSIONQUERYNVPROC) __GLeeGetProcAddress("glBeginOcclusionQueryNV");
        pglEndOcclusionQueryNV = (PFNGLENDOCCLUSIONQUERYNVPROC) __GLeeGetProcAddress("glEndOcclusionQueryNV");
        pglGetOcclusionQueryivNV = (PFNGLGETOCCLUSIONQUERYIVNVPROC) __GLeeGetProcAddress("glGetOcclusionQueryivNV");
        pglGetOcclusionQueryuivNV = (PFNGLGETOCCLUSIONQUERYUIVNVPROC) __GLeeGetProcAddress("glGetOcclusionQueryuivNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_point_sprite", &extensionNames) )
    {
        GLEE_NV_point_sprite = GL_TRUE;
#ifdef __GLEE_GL_NV_point_sprite
        pglPointParameteriNV = (PFNGLPOINTPARAMETERINVPROC) __GLeeGetProcAddress("glPointParameteriNV");
        pglPointParameterivNV = (PFNGLPOINTPARAMETERIVNVPROC) __GLeeGetProcAddress("glPointParameterivNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_shader3", &extensionNames) )
    {
        GLEE_NV_texture_shader3 = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_shader3
#endif
    }
    if (__GLeeCheckExtension("GL_NV_vertex_program1_1", &extensionNames) )
    {
        GLEE_NV_vertex_program1_1 = GL_TRUE;
#ifdef __GLEE_GL_NV_vertex_program1_1
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_shadow_funcs", &extensionNames) )
    {
        GLEE_EXT_shadow_funcs = GL_TRUE;
#ifdef __GLEE_GL_EXT_shadow_funcs
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_stencil_two_side", &extensionNames) )
    {
        GLEE_EXT_stencil_two_side = GL_TRUE;
#ifdef __GLEE_GL_EXT_stencil_two_side
        pglActiveStencilFaceEXT = (PFNGLACTIVESTENCILFACEEXTPROC) __GLeeGetProcAddress("glActiveStencilFaceEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_text_fragment_shader", &extensionNames) )
    {
        GLEE_ATI_text_fragment_shader = GL_TRUE;
#ifdef __GLEE_GL_ATI_text_fragment_shader
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_client_storage", &extensionNames) )
    {
        GLEE_APPLE_client_storage = GL_TRUE;
#ifdef __GLEE_GL_APPLE_client_storage
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_element_array", &extensionNames) )
    {
        GLEE_APPLE_element_array = GL_TRUE;
#ifdef __GLEE_GL_APPLE_element_array
        pglElementPointerAPPLE = (PFNGLELEMENTPOINTERAPPLEPROC) __GLeeGetProcAddress("glElementPointerAPPLE");
        pglDrawElementArrayAPPLE = (PFNGLDRAWELEMENTARRAYAPPLEPROC) __GLeeGetProcAddress("glDrawElementArrayAPPLE");
        pglDrawRangeElementArrayAPPLE = (PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) __GLeeGetProcAddress("glDrawRangeElementArrayAPPLE");
        pglMultiDrawElementArrayAPPLE = (PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) __GLeeGetProcAddress("glMultiDrawElementArrayAPPLE");
        pglMultiDrawRangeElementArrayAPPLE = (PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) __GLeeGetProcAddress("glMultiDrawRangeElementArrayAPPLE");
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_fence", &extensionNames) )
    {
        GLEE_APPLE_fence = GL_TRUE;
#ifdef __GLEE_GL_APPLE_fence
        pglGenFencesAPPLE = (PFNGLGENFENCESAPPLEPROC) __GLeeGetProcAddress("glGenFencesAPPLE");
        pglDeleteFencesAPPLE = (PFNGLDELETEFENCESAPPLEPROC) __GLeeGetProcAddress("glDeleteFencesAPPLE");
        pglSetFenceAPPLE = (PFNGLSETFENCEAPPLEPROC) __GLeeGetProcAddress("glSetFenceAPPLE");
        pglIsFenceAPPLE = (PFNGLISFENCEAPPLEPROC) __GLeeGetProcAddress("glIsFenceAPPLE");
        pglTestFenceAPPLE = (PFNGLTESTFENCEAPPLEPROC) __GLeeGetProcAddress("glTestFenceAPPLE");
        pglFinishFenceAPPLE = (PFNGLFINISHFENCEAPPLEPROC) __GLeeGetProcAddress("glFinishFenceAPPLE");
        pglTestObjectAPPLE = (PFNGLTESTOBJECTAPPLEPROC) __GLeeGetProcAddress("glTestObjectAPPLE");
        pglFinishObjectAPPLE = (PFNGLFINISHOBJECTAPPLEPROC) __GLeeGetProcAddress("glFinishObjectAPPLE");
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_vertex_array_object", &extensionNames) )
    {
        GLEE_APPLE_vertex_array_object = GL_TRUE;
#ifdef __GLEE_GL_APPLE_vertex_array_object
        pglBindVertexArrayAPPLE = (PFNGLBINDVERTEXARRAYAPPLEPROC) __GLeeGetProcAddress("glBindVertexArrayAPPLE");
        pglDeleteVertexArraysAPPLE = (PFNGLDELETEVERTEXARRAYSAPPLEPROC) __GLeeGetProcAddress("glDeleteVertexArraysAPPLE");
        pglGenVertexArraysAPPLE = (PFNGLGENVERTEXARRAYSAPPLEPROC) __GLeeGetProcAddress("glGenVertexArraysAPPLE");
        pglIsVertexArrayAPPLE = (PFNGLISVERTEXARRAYAPPLEPROC) __GLeeGetProcAddress("glIsVertexArrayAPPLE");
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_vertex_array_range", &extensionNames) )
    {
        GLEE_APPLE_vertex_array_range = GL_TRUE;
#ifdef __GLEE_GL_APPLE_vertex_array_range
        pglVertexArrayRangeAPPLE = (PFNGLVERTEXARRAYRANGEAPPLEPROC) __GLeeGetProcAddress("glVertexArrayRangeAPPLE");
        pglFlushVertexArrayRangeAPPLE = (PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) __GLeeGetProcAddress("glFlushVertexArrayRangeAPPLE");
        pglVertexArrayParameteriAPPLE = (PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) __GLeeGetProcAddress("glVertexArrayParameteriAPPLE");
#endif
    }
    if (__GLeeCheckExtension("GL_APPLE_ycbcr_422", &extensionNames) )
    {
        GLEE_APPLE_ycbcr_422 = GL_TRUE;
#ifdef __GLEE_GL_APPLE_ycbcr_422
#endif
    }
    if (__GLeeCheckExtension("GL_S3_s3tc", &extensionNames) )
    {
        GLEE_S3_s3tc = GL_TRUE;
#ifdef __GLEE_GL_S3_s3tc
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_draw_buffers", &extensionNames) )
    {
        GLEE_ATI_draw_buffers = GL_TRUE;
#ifdef __GLEE_GL_ATI_draw_buffers
        pglDrawBuffersATI = (PFNGLDRAWBUFFERSATIPROC) __GLeeGetProcAddress("glDrawBuffersATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_texture_env_combine3", &extensionNames) )
    {
        GLEE_ATI_texture_env_combine3 = GL_TRUE;
#ifdef __GLEE_GL_ATI_texture_env_combine3
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_texture_float", &extensionNames) )
    {
        GLEE_ATI_texture_float = GL_TRUE;
#ifdef __GLEE_GL_ATI_texture_float
#endif
    }
    if (__GLeeCheckExtension("GL_NV_float_buffer", &extensionNames) )
    {
        GLEE_NV_float_buffer = GL_TRUE;
#ifdef __GLEE_GL_NV_float_buffer
#endif
    }
    if (__GLeeCheckExtension("GL_NV_fragment_program", &extensionNames) )
    {
        GLEE_NV_fragment_program = GL_TRUE;
#ifdef __GLEE_GL_NV_fragment_program
        pglProgramNamedParameter4fNV = (PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) __GLeeGetProcAddress("glProgramNamedParameter4fNV");
        pglProgramNamedParameter4dNV = (PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) __GLeeGetProcAddress("glProgramNamedParameter4dNV");
        pglProgramNamedParameter4fvNV = (PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) __GLeeGetProcAddress("glProgramNamedParameter4fvNV");
        pglProgramNamedParameter4dvNV = (PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) __GLeeGetProcAddress("glProgramNamedParameter4dvNV");
        pglGetProgramNamedParameterfvNV = (PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) __GLeeGetProcAddress("glGetProgramNamedParameterfvNV");
        pglGetProgramNamedParameterdvNV = (PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) __GLeeGetProcAddress("glGetProgramNamedParameterdvNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_half_float", &extensionNames) )
    {
        GLEE_NV_half_float = GL_TRUE;
#ifdef __GLEE_GL_NV_half_float
        pglVertex2hNV = (PFNGLVERTEX2HNVPROC) __GLeeGetProcAddress("glVertex2hNV");
        pglVertex2hvNV = (PFNGLVERTEX2HVNVPROC) __GLeeGetProcAddress("glVertex2hvNV");
        pglVertex3hNV = (PFNGLVERTEX3HNVPROC) __GLeeGetProcAddress("glVertex3hNV");
        pglVertex3hvNV = (PFNGLVERTEX3HVNVPROC) __GLeeGetProcAddress("glVertex3hvNV");
        pglVertex4hNV = (PFNGLVERTEX4HNVPROC) __GLeeGetProcAddress("glVertex4hNV");
        pglVertex4hvNV = (PFNGLVERTEX4HVNVPROC) __GLeeGetProcAddress("glVertex4hvNV");
        pglNormal3hNV = (PFNGLNORMAL3HNVPROC) __GLeeGetProcAddress("glNormal3hNV");
        pglNormal3hvNV = (PFNGLNORMAL3HVNVPROC) __GLeeGetProcAddress("glNormal3hvNV");
        pglColor3hNV = (PFNGLCOLOR3HNVPROC) __GLeeGetProcAddress("glColor3hNV");
        pglColor3hvNV = (PFNGLCOLOR3HVNVPROC) __GLeeGetProcAddress("glColor3hvNV");
        pglColor4hNV = (PFNGLCOLOR4HNVPROC) __GLeeGetProcAddress("glColor4hNV");
        pglColor4hvNV = (PFNGLCOLOR4HVNVPROC) __GLeeGetProcAddress("glColor4hvNV");
        pglTexCoord1hNV = (PFNGLTEXCOORD1HNVPROC) __GLeeGetProcAddress("glTexCoord1hNV");
        pglTexCoord1hvNV = (PFNGLTEXCOORD1HVNVPROC) __GLeeGetProcAddress("glTexCoord1hvNV");
        pglTexCoord2hNV = (PFNGLTEXCOORD2HNVPROC) __GLeeGetProcAddress("glTexCoord2hNV");
        pglTexCoord2hvNV = (PFNGLTEXCOORD2HVNVPROC) __GLeeGetProcAddress("glTexCoord2hvNV");
        pglTexCoord3hNV = (PFNGLTEXCOORD3HNVPROC) __GLeeGetProcAddress("glTexCoord3hNV");
        pglTexCoord3hvNV = (PFNGLTEXCOORD3HVNVPROC) __GLeeGetProcAddress("glTexCoord3hvNV");
        pglTexCoord4hNV = (PFNGLTEXCOORD4HNVPROC) __GLeeGetProcAddress("glTexCoord4hNV");
        pglTexCoord4hvNV = (PFNGLTEXCOORD4HVNVPROC) __GLeeGetProcAddress("glTexCoord4hvNV");
        pglMultiTexCoord1hNV = (PFNGLMULTITEXCOORD1HNVPROC) __GLeeGetProcAddress("glMultiTexCoord1hNV");
        pglMultiTexCoord1hvNV = (PFNGLMULTITEXCOORD1HVNVPROC) __GLeeGetProcAddress("glMultiTexCoord1hvNV");
        pglMultiTexCoord2hNV = (PFNGLMULTITEXCOORD2HNVPROC) __GLeeGetProcAddress("glMultiTexCoord2hNV");
        pglMultiTexCoord2hvNV = (PFNGLMULTITEXCOORD2HVNVPROC) __GLeeGetProcAddress("glMultiTexCoord2hvNV");
        pglMultiTexCoord3hNV = (PFNGLMULTITEXCOORD3HNVPROC) __GLeeGetProcAddress("glMultiTexCoord3hNV");
        pglMultiTexCoord3hvNV = (PFNGLMULTITEXCOORD3HVNVPROC) __GLeeGetProcAddress("glMultiTexCoord3hvNV");
        pglMultiTexCoord4hNV = (PFNGLMULTITEXCOORD4HNVPROC) __GLeeGetProcAddress("glMultiTexCoord4hNV");
        pglMultiTexCoord4hvNV = (PFNGLMULTITEXCOORD4HVNVPROC) __GLeeGetProcAddress("glMultiTexCoord4hvNV");
        pglFogCoordhNV = (PFNGLFOGCOORDHNVPROC) __GLeeGetProcAddress("glFogCoordhNV");
        pglFogCoordhvNV = (PFNGLFOGCOORDHVNVPROC) __GLeeGetProcAddress("glFogCoordhvNV");
        pglSecondaryColor3hNV = (PFNGLSECONDARYCOLOR3HNVPROC) __GLeeGetProcAddress("glSecondaryColor3hNV");
        pglSecondaryColor3hvNV = (PFNGLSECONDARYCOLOR3HVNVPROC) __GLeeGetProcAddress("glSecondaryColor3hvNV");
        pglVertexWeighthNV = (PFNGLVERTEXWEIGHTHNVPROC) __GLeeGetProcAddress("glVertexWeighthNV");
        pglVertexWeighthvNV = (PFNGLVERTEXWEIGHTHVNVPROC) __GLeeGetProcAddress("glVertexWeighthvNV");
        pglVertexAttrib1hNV = (PFNGLVERTEXATTRIB1HNVPROC) __GLeeGetProcAddress("glVertexAttrib1hNV");
        pglVertexAttrib1hvNV = (PFNGLVERTEXATTRIB1HVNVPROC) __GLeeGetProcAddress("glVertexAttrib1hvNV");
        pglVertexAttrib2hNV = (PFNGLVERTEXATTRIB2HNVPROC) __GLeeGetProcAddress("glVertexAttrib2hNV");
        pglVertexAttrib2hvNV = (PFNGLVERTEXATTRIB2HVNVPROC) __GLeeGetProcAddress("glVertexAttrib2hvNV");
        pglVertexAttrib3hNV = (PFNGLVERTEXATTRIB3HNVPROC) __GLeeGetProcAddress("glVertexAttrib3hNV");
        pglVertexAttrib3hvNV = (PFNGLVERTEXATTRIB3HVNVPROC) __GLeeGetProcAddress("glVertexAttrib3hvNV");
        pglVertexAttrib4hNV = (PFNGLVERTEXATTRIB4HNVPROC) __GLeeGetProcAddress("glVertexAttrib4hNV");
        pglVertexAttrib4hvNV = (PFNGLVERTEXATTRIB4HVNVPROC) __GLeeGetProcAddress("glVertexAttrib4hvNV");
        pglVertexAttribs1hvNV = (PFNGLVERTEXATTRIBS1HVNVPROC) __GLeeGetProcAddress("glVertexAttribs1hvNV");
        pglVertexAttribs2hvNV = (PFNGLVERTEXATTRIBS2HVNVPROC) __GLeeGetProcAddress("glVertexAttribs2hvNV");
        pglVertexAttribs3hvNV = (PFNGLVERTEXATTRIBS3HVNVPROC) __GLeeGetProcAddress("glVertexAttribs3hvNV");
        pglVertexAttribs4hvNV = (PFNGLVERTEXATTRIBS4HVNVPROC) __GLeeGetProcAddress("glVertexAttribs4hvNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_pixel_data_range", &extensionNames) )
    {
        GLEE_NV_pixel_data_range = GL_TRUE;
#ifdef __GLEE_GL_NV_pixel_data_range
        pglPixelDataRangeNV = (PFNGLPIXELDATARANGENVPROC) __GLeeGetProcAddress("glPixelDataRangeNV");
        pglFlushPixelDataRangeNV = (PFNGLFLUSHPIXELDATARANGENVPROC) __GLeeGetProcAddress("glFlushPixelDataRangeNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_primitive_restart", &extensionNames) )
    {
        GLEE_NV_primitive_restart = GL_TRUE;
#ifdef __GLEE_GL_NV_primitive_restart
        pglPrimitiveRestartNV = (PFNGLPRIMITIVERESTARTNVPROC) __GLeeGetProcAddress("glPrimitiveRestartNV");
        pglPrimitiveRestartIndexNV = (PFNGLPRIMITIVERESTARTINDEXNVPROC) __GLeeGetProcAddress("glPrimitiveRestartIndexNV");
#endif
    }
    if (__GLeeCheckExtension("GL_NV_texture_expand_normal", &extensionNames) )
    {
        GLEE_NV_texture_expand_normal = GL_TRUE;
#ifdef __GLEE_GL_NV_texture_expand_normal
#endif
    }
    if (__GLeeCheckExtension("GL_NV_vertex_program2", &extensionNames) )
    {
        GLEE_NV_vertex_program2 = GL_TRUE;
#ifdef __GLEE_GL_NV_vertex_program2
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_map_object_buffer", &extensionNames) )
    {
        GLEE_ATI_map_object_buffer = GL_TRUE;
#ifdef __GLEE_GL_ATI_map_object_buffer
        pglMapObjectBufferATI = (PFNGLMAPOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glMapObjectBufferATI");
        pglUnmapObjectBufferATI = (PFNGLUNMAPOBJECTBUFFERATIPROC) __GLeeGetProcAddress("glUnmapObjectBufferATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_separate_stencil", &extensionNames) )
    {
        GLEE_ATI_separate_stencil = GL_TRUE;
#ifdef __GLEE_GL_ATI_separate_stencil
        pglStencilOpSeparateATI = (PFNGLSTENCILOPSEPARATEATIPROC) __GLeeGetProcAddress("glStencilOpSeparateATI");
        pglStencilFuncSeparateATI = (PFNGLSTENCILFUNCSEPARATEATIPROC) __GLeeGetProcAddress("glStencilFuncSeparateATI");
#endif
    }
    if (__GLeeCheckExtension("GL_ATI_vertex_attrib_array_object", &extensionNames) )
    {
        GLEE_ATI_vertex_attrib_array_object = GL_TRUE;
#ifdef __GLEE_GL_ATI_vertex_attrib_array_object
        pglVertexAttribArrayObjectATI = (PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) __GLeeGetProcAddress("glVertexAttribArrayObjectATI");
        pglGetVertexAttribArrayObjectfvATI = (PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) __GLeeGetProcAddress("glGetVertexAttribArrayObjectfvATI");
        pglGetVertexAttribArrayObjectivATI = (PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) __GLeeGetProcAddress("glGetVertexAttribArrayObjectivATI");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_depth_bounds_test", &extensionNames) )
    {
        GLEE_EXT_depth_bounds_test = GL_TRUE;
#ifdef __GLEE_GL_EXT_depth_bounds_test
        pglDepthBoundsEXT = (PFNGLDEPTHBOUNDSEXTPROC) __GLeeGetProcAddress("glDepthBoundsEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_texture_mirror_clamp", &extensionNames) )
    {
        GLEE_EXT_texture_mirror_clamp = GL_TRUE;
#ifdef __GLEE_GL_EXT_texture_mirror_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_blend_equation_separate", &extensionNames) )
    {
        GLEE_EXT_blend_equation_separate = GL_TRUE;
#ifdef __GLEE_GL_EXT_blend_equation_separate
        pglBlendEquationSeparateEXT = (PFNGLBLENDEQUATIONSEPARATEEXTPROC) __GLeeGetProcAddress("glBlendEquationSeparateEXT");
#endif
    }
    if (__GLeeCheckExtension("GL_MESA_pack_invert", &extensionNames) )
    {
        GLEE_MESA_pack_invert = GL_TRUE;
#ifdef __GLEE_GL_MESA_pack_invert
#endif
    }
    if (__GLeeCheckExtension("GL_MESA_ycbcr_texture", &extensionNames) )
    {
        GLEE_MESA_ycbcr_texture = GL_TRUE;
#ifdef __GLEE_GL_MESA_ycbcr_texture
#endif
    }
    if (__GLeeCheckExtension("GL_EXT_color_matrix", &extensionNames) )
    {
        GLEE_EXT_color_matrix = GL_TRUE;
#ifdef __GLEE_GL_EXT_color_matrix
#endif
    }
    if (__GLeeCheckExtension("GL_SGIS_texture_border_clamp", &extensionNames) )
    {
        GLEE_SGIS_texture_border_clamp = GL_TRUE;
#ifdef __GLEE_GL_SGIS_texture_border_clamp
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_texture_select", &extensionNames) )
    {
        GLEE_SGIX_texture_select = GL_TRUE;
#ifdef __GLEE_GL_SGIX_texture_select
#endif
    }
    if (__GLeeCheckExtension("GL_INGR_blend_func_separate", &extensionNames) )
    {
        GLEE_INGR_blend_func_separate = GL_TRUE;
#ifdef __GLEE_GL_INGR_blend_func_separate
        pglBlendFuncSeparateINGR = (PFNGLBLENDFUNCSEPARATEINGRPROC) __GLeeGetProcAddress("glBlendFuncSeparateINGR");
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_depth_pass_instrument", &extensionNames) )
    {
        GLEE_SGIX_depth_pass_instrument = GL_TRUE;
#ifdef __GLEE_GL_SGIX_depth_pass_instrument
#endif
    }
    if (__GLeeCheckExtension("GL_SGIX_igloo_interface", &extensionNames) )
    {
        GLEE_SGIX_igloo_interface = GL_TRUE;
#ifdef __GLEE_GL_SGIX_igloo_interface
        pglIglooInterfaceSGIX = (PFNGLIGLOOINTERFACESGIXPROC) __GLeeGetProcAddress("glIglooInterfaceSGIX");
#endif
    }
#ifdef WIN32
    if (__GLeeCheckExtension("WGL_ARB_buffer_region", &extensionNames) )
    {
        GLEE_WGL_ARB_buffer_region = GL_TRUE;
#ifdef __GLEE_WGL_ARB_buffer_region
        pwglCreateBufferRegionARB = (PFNWGLCREATEBUFFERREGIONARBPROC) __GLeeGetProcAddress("wglCreateBufferRegionARB");
        pwglDeleteBufferRegionARB = (PFNWGLDELETEBUFFERREGIONARBPROC) __GLeeGetProcAddress("wglDeleteBufferRegionARB");
        pwglSaveBufferRegionARB = (PFNWGLSAVEBUFFERREGIONARBPROC) __GLeeGetProcAddress("wglSaveBufferRegionARB");
        pwglRestoreBufferRegionARB = (PFNWGLRESTOREBUFFERREGIONARBPROC) __GLeeGetProcAddress("wglRestoreBufferRegionARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_multisample", &extensionNames) )
    {
        GLEE_WGL_ARB_multisample = GL_TRUE;
#ifdef __GLEE_WGL_ARB_multisample
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_extensions_string", &extensionNames) )
    {
        GLEE_WGL_ARB_extensions_string = GL_TRUE;
#ifdef __GLEE_WGL_ARB_extensions_string
        pwglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC) __GLeeGetProcAddress("wglGetExtensionsStringARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_pixel_format", &extensionNames) )
    {
        GLEE_WGL_ARB_pixel_format = GL_TRUE;
#ifdef __GLEE_WGL_ARB_pixel_format
        pwglGetPixelFormatAttribivARB = (PFNWGLGETPIXELFORMATATTRIBIVARBPROC) __GLeeGetProcAddress("wglGetPixelFormatAttribivARB");
        pwglGetPixelFormatAttribfvARB = (PFNWGLGETPIXELFORMATATTRIBFVARBPROC) __GLeeGetProcAddress("wglGetPixelFormatAttribfvARB");
        pwglChoosePixelFormatARB = (PFNWGLCHOOSEPIXELFORMATARBPROC) __GLeeGetProcAddress("wglChoosePixelFormatARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_make_current_read", &extensionNames) )
    {
        GLEE_WGL_ARB_make_current_read = GL_TRUE;
#ifdef __GLEE_WGL_ARB_make_current_read
        pwglMakeContextCurrentARB = (PFNWGLMAKECONTEXTCURRENTARBPROC) __GLeeGetProcAddress("wglMakeContextCurrentARB");
        pwglGetCurrentReadDCARB = (PFNWGLGETCURRENTREADDCARBPROC) __GLeeGetProcAddress("wglGetCurrentReadDCARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_pbuffer", &extensionNames) )
    {
        GLEE_WGL_ARB_pbuffer = GL_TRUE;
#ifdef __GLEE_WGL_ARB_pbuffer
        pwglCreatePbufferARB = (PFNWGLCREATEPBUFFERARBPROC) __GLeeGetProcAddress("wglCreatePbufferARB");
        pwglGetPbufferDCARB = (PFNWGLGETPBUFFERDCARBPROC) __GLeeGetProcAddress("wglGetPbufferDCARB");
        pwglReleasePbufferDCARB = (PFNWGLRELEASEPBUFFERDCARBPROC) __GLeeGetProcAddress("wglReleasePbufferDCARB");
        pwglDestroyPbufferARB = (PFNWGLDESTROYPBUFFERARBPROC) __GLeeGetProcAddress("wglDestroyPbufferARB");
        pwglQueryPbufferARB = (PFNWGLQUERYPBUFFERARBPROC) __GLeeGetProcAddress("wglQueryPbufferARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_ARB_render_texture", &extensionNames) )
    {
        GLEE_WGL_ARB_render_texture = GL_TRUE;
#ifdef __GLEE_WGL_ARB_render_texture
        pwglBindTexImageARB = (PFNWGLBINDTEXIMAGEARBPROC) __GLeeGetProcAddress("wglBindTexImageARB");
        pwglReleaseTexImageARB = (PFNWGLRELEASETEXIMAGEARBPROC) __GLeeGetProcAddress("wglReleaseTexImageARB");
        pwglSetPbufferAttribARB = (PFNWGLSETPBUFFERATTRIBARBPROC) __GLeeGetProcAddress("wglSetPbufferAttribARB");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_make_current_read", &extensionNames) )
    {
        GLEE_WGL_EXT_make_current_read = GL_TRUE;
#ifdef __GLEE_WGL_EXT_make_current_read
        pwglMakeContextCurrentEXT = (PFNWGLMAKECONTEXTCURRENTEXTPROC) __GLeeGetProcAddress("wglMakeContextCurrentEXT");
        pwglGetCurrentReadDCEXT = (PFNWGLGETCURRENTREADDCEXTPROC) __GLeeGetProcAddress("wglGetCurrentReadDCEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_pixel_format", &extensionNames) )
    {
        GLEE_WGL_EXT_pixel_format = GL_TRUE;
#ifdef __GLEE_WGL_EXT_pixel_format
        pwglGetPixelFormatAttribivEXT = (PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) __GLeeGetProcAddress("wglGetPixelFormatAttribivEXT");
        pwglGetPixelFormatAttribfvEXT = (PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) __GLeeGetProcAddress("wglGetPixelFormatAttribfvEXT");
        pwglChoosePixelFormatEXT = (PFNWGLCHOOSEPIXELFORMATEXTPROC) __GLeeGetProcAddress("wglChoosePixelFormatEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_pbuffer", &extensionNames) )
    {
        GLEE_WGL_EXT_pbuffer = GL_TRUE;
#ifdef __GLEE_WGL_EXT_pbuffer
        pwglCreatePbufferEXT = (PFNWGLCREATEPBUFFEREXTPROC) __GLeeGetProcAddress("wglCreatePbufferEXT");
        pwglGetPbufferDCEXT = (PFNWGLGETPBUFFERDCEXTPROC) __GLeeGetProcAddress("wglGetPbufferDCEXT");
        pwglReleasePbufferDCEXT = (PFNWGLRELEASEPBUFFERDCEXTPROC) __GLeeGetProcAddress("wglReleasePbufferDCEXT");
        pwglDestroyPbufferEXT = (PFNWGLDESTROYPBUFFEREXTPROC) __GLeeGetProcAddress("wglDestroyPbufferEXT");
        pwglQueryPbufferEXT = (PFNWGLQUERYPBUFFEREXTPROC) __GLeeGetProcAddress("wglQueryPbufferEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_depth_float", &extensionNames) )
    {
        GLEE_WGL_EXT_depth_float = GL_TRUE;
#ifdef __GLEE_WGL_EXT_depth_float
#endif
    }
    if (__GLeeCheckExtension("WGL_3DFX_multisample", &extensionNames) )
    {
        GLEE_WGL_3DFX_multisample = GL_TRUE;
#ifdef __GLEE_WGL_3DFX_multisample
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_multisample", &extensionNames) )
    {
        GLEE_WGL_EXT_multisample = GL_TRUE;
#ifdef __GLEE_WGL_EXT_multisample
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_digital_video_control", &extensionNames) )
    {
        GLEE_WGL_I3D_digital_video_control = GL_TRUE;
#ifdef __GLEE_WGL_I3D_digital_video_control
        pwglGetDigitalVideoParametersI3D = (PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) __GLeeGetProcAddress("wglGetDigitalVideoParametersI3D");
        pwglSetDigitalVideoParametersI3D = (PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) __GLeeGetProcAddress("wglSetDigitalVideoParametersI3D");
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_gamma", &extensionNames) )
    {
        GLEE_WGL_I3D_gamma = GL_TRUE;
#ifdef __GLEE_WGL_I3D_gamma
        pwglGetGammaTableParametersI3D = (PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) __GLeeGetProcAddress("wglGetGammaTableParametersI3D");
        pwglSetGammaTableParametersI3D = (PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) __GLeeGetProcAddress("wglSetGammaTableParametersI3D");
        pwglGetGammaTableI3D = (PFNWGLGETGAMMATABLEI3DPROC) __GLeeGetProcAddress("wglGetGammaTableI3D");
        pwglSetGammaTableI3D = (PFNWGLSETGAMMATABLEI3DPROC) __GLeeGetProcAddress("wglSetGammaTableI3D");
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_genlock", &extensionNames) )
    {
        GLEE_WGL_I3D_genlock = GL_TRUE;
#ifdef __GLEE_WGL_I3D_genlock
        pwglEnableGenlockI3D = (PFNWGLENABLEGENLOCKI3DPROC) __GLeeGetProcAddress("wglEnableGenlockI3D");
        pwglDisableGenlockI3D = (PFNWGLDISABLEGENLOCKI3DPROC) __GLeeGetProcAddress("wglDisableGenlockI3D");
        pwglIsEnabledGenlockI3D = (PFNWGLISENABLEDGENLOCKI3DPROC) __GLeeGetProcAddress("wglIsEnabledGenlockI3D");
        pwglGenlockSourceI3D = (PFNWGLGENLOCKSOURCEI3DPROC) __GLeeGetProcAddress("wglGenlockSourceI3D");
        pwglGetGenlockSourceI3D = (PFNWGLGETGENLOCKSOURCEI3DPROC) __GLeeGetProcAddress("wglGetGenlockSourceI3D");
        pwglGenlockSourceEdgeI3D = (PFNWGLGENLOCKSOURCEEDGEI3DPROC) __GLeeGetProcAddress("wglGenlockSourceEdgeI3D");
        pwglGetGenlockSourceEdgeI3D = (PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) __GLeeGetProcAddress("wglGetGenlockSourceEdgeI3D");
        pwglGenlockSampleRateI3D = (PFNWGLGENLOCKSAMPLERATEI3DPROC) __GLeeGetProcAddress("wglGenlockSampleRateI3D");
        pwglGetGenlockSampleRateI3D = (PFNWGLGETGENLOCKSAMPLERATEI3DPROC) __GLeeGetProcAddress("wglGetGenlockSampleRateI3D");
        pwglGenlockSourceDelayI3D = (PFNWGLGENLOCKSOURCEDELAYI3DPROC) __GLeeGetProcAddress("wglGenlockSourceDelayI3D");
        pwglGetGenlockSourceDelayI3D = (PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) __GLeeGetProcAddress("wglGetGenlockSourceDelayI3D");
        pwglQueryGenlockMaxSourceDelayI3D = (PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) __GLeeGetProcAddress("wglQueryGenlockMaxSourceDelayI3D");
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_image_buffer", &extensionNames) )
    {
        GLEE_WGL_I3D_image_buffer = GL_TRUE;
#ifdef __GLEE_WGL_I3D_image_buffer
        pwglCreateImageBufferI3D = (PFNWGLCREATEIMAGEBUFFERI3DPROC) __GLeeGetProcAddress("wglCreateImageBufferI3D");
        pwglDestroyImageBufferI3D = (PFNWGLDESTROYIMAGEBUFFERI3DPROC) __GLeeGetProcAddress("wglDestroyImageBufferI3D");
        pwglAssociateImageBufferEventsI3D = (PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) __GLeeGetProcAddress("wglAssociateImageBufferEventsI3D");
        pwglReleaseImageBufferEventsI3D = (PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) __GLeeGetProcAddress("wglReleaseImageBufferEventsI3D");
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_swap_frame_lock", &extensionNames) )
    {
        GLEE_WGL_I3D_swap_frame_lock = GL_TRUE;
#ifdef __GLEE_WGL_I3D_swap_frame_lock
        pwglEnableFrameLockI3D = (PFNWGLENABLEFRAMELOCKI3DPROC) __GLeeGetProcAddress("wglEnableFrameLockI3D");
        pwglDisableFrameLockI3D = (PFNWGLDISABLEFRAMELOCKI3DPROC) __GLeeGetProcAddress("wglDisableFrameLockI3D");
        pwglIsEnabledFrameLockI3D = (PFNWGLISENABLEDFRAMELOCKI3DPROC) __GLeeGetProcAddress("wglIsEnabledFrameLockI3D");
        pwglQueryFrameLockMasterI3D = (PFNWGLQUERYFRAMELOCKMASTERI3DPROC) __GLeeGetProcAddress("wglQueryFrameLockMasterI3D");
#endif
    }
    if (__GLeeCheckExtension("WGL_NV_render_depth_texture", &extensionNames) )
    {
        GLEE_WGL_NV_render_depth_texture = GL_TRUE;
#ifdef __GLEE_WGL_NV_render_depth_texture
#endif
    }
    if (__GLeeCheckExtension("WGL_NV_render_texture_rectangle", &extensionNames) )
    {
        GLEE_WGL_NV_render_texture_rectangle = GL_TRUE;
#ifdef __GLEE_WGL_NV_render_texture_rectangle
#endif
    }
    if (__GLeeCheckExtension("WGL_NV_float_buffer", &extensionNames) )
    {
        GLEE_WGL_NV_float_buffer = GL_TRUE;
#ifdef __GLEE_WGL_NV_float_buffer
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_display_color_table", &extensionNames) )
    {
        GLEE_WGL_EXT_display_color_table = GL_TRUE;
#ifdef __GLEE_WGL_EXT_display_color_table
        pwglCreateDisplayColorTableEXT = (PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) __GLeeGetProcAddress("wglCreateDisplayColorTableEXT");
        pwglLoadDisplayColorTableEXT = (PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) __GLeeGetProcAddress("wglLoadDisplayColorTableEXT");
        pwglBindDisplayColorTableEXT = (PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) __GLeeGetProcAddress("wglBindDisplayColorTableEXT");
        pwglDestroyDisplayColorTableEXT = (PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) __GLeeGetProcAddress("wglDestroyDisplayColorTableEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_extensions_string", &extensionNames) )
    {
        GLEE_WGL_EXT_extensions_string = GL_TRUE;
#ifdef __GLEE_WGL_EXT_extensions_string
        pwglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC) __GLeeGetProcAddress("wglGetExtensionsStringEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_EXT_swap_control", &extensionNames) )
    {
        GLEE_WGL_EXT_swap_control = GL_TRUE;
#ifdef __GLEE_WGL_EXT_swap_control
        pwglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC) __GLeeGetProcAddress("wglSwapIntervalEXT");
        pwglGetSwapIntervalEXT = (PFNWGLGETSWAPINTERVALEXTPROC) __GLeeGetProcAddress("wglGetSwapIntervalEXT");
#endif
    }
    if (__GLeeCheckExtension("WGL_NV_vertex_array_range", &extensionNames) )
    {
        GLEE_WGL_NV_vertex_array_range = GL_TRUE;
#ifdef __GLEE_WGL_NV_vertex_array_range
        pwglAllocateMemoryNV = (PFNWGLALLOCATEMEMORYNVPROC) __GLeeGetProcAddress("wglAllocateMemoryNV");
        pwglFreeMemoryNV = (PFNWGLFREEMEMORYNVPROC) __GLeeGetProcAddress("wglFreeMemoryNV");
#endif
    }
    if (__GLeeCheckExtension("WGL_OML_sync_control", &extensionNames) )
    {
        GLEE_WGL_OML_sync_control = GL_TRUE;
#ifdef __GLEE_WGL_OML_sync_control
        pwglGetSyncValuesOML = (PFNWGLGETSYNCVALUESOMLPROC) __GLeeGetProcAddress("wglGetSyncValuesOML");
        pwglGetMscRateOML = (PFNWGLGETMSCRATEOMLPROC) __GLeeGetProcAddress("wglGetMscRateOML");
        pwglSwapBuffersMscOML = (PFNWGLSWAPBUFFERSMSCOMLPROC) __GLeeGetProcAddress("wglSwapBuffersMscOML");
        pwglSwapLayerBuffersMscOML = (PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) __GLeeGetProcAddress("wglSwapLayerBuffersMscOML");
        pwglWaitForMscOML = (PFNWGLWAITFORMSCOMLPROC) __GLeeGetProcAddress("wglWaitForMscOML");
        pwglWaitForSbcOML = (PFNWGLWAITFORSBCOMLPROC) __GLeeGetProcAddress("wglWaitForSbcOML");
#endif
    }
    if (__GLeeCheckExtension("WGL_I3D_swap_frame_usage", &extensionNames) )
    {
        GLEE_WGL_I3D_swap_frame_usage = GL_TRUE;
#ifdef __GLEE_WGL_I3D_swap_frame_usage
        pwglGetFrameUsageI3D = (PFNWGLGETFRAMEUSAGEI3DPROC) __GLeeGetProcAddress("wglGetFrameUsageI3D");
        pwglBeginFrameTrackingI3D = (PFNWGLBEGINFRAMETRACKINGI3DPROC) __GLeeGetProcAddress("wglBeginFrameTrackingI3D");
        pwglEndFrameTrackingI3D = (PFNWGLENDFRAMETRACKINGI3DPROC) __GLeeGetProcAddress("wglEndFrameTrackingI3D");
        pwglQueryFrameTrackingI3D = (PFNWGLQUERYFRAMETRACKINGI3DPROC) __GLeeGetProcAddress("wglQueryFrameTrackingI3D");
#endif
    }
#else //end WGL
    if (__GLeeCheckExtension("GLX_VERSION_1_3", &extensionNames) )
    {
        GLEE_GLX_VERSION_1_3 = GL_TRUE;
#ifdef __GLEE_GLX_VERSION_1_3
        pglXGetFBConfigs = (PFNGLXGETFBCONFIGSPROC) __GLeeGetProcAddress("glXGetFBConfigs");
        pglXChooseFBConfig = (PFNGLXCHOOSEFBCONFIGPROC) __GLeeGetProcAddress("glXChooseFBConfig");
        pglXGetFBConfigAttrib = (PFNGLXGETFBCONFIGATTRIBPROC) __GLeeGetProcAddress("glXGetFBConfigAttrib");
        pglXGetVisualFromFBConfig = (PFNGLXGETVISUALFROMFBCONFIGPROC) __GLeeGetProcAddress("glXGetVisualFromFBConfig");
        pglXCreateWindow = (PFNGLXCREATEWINDOWPROC) __GLeeGetProcAddress("glXCreateWindow");
        pglXDestroyWindow = (PFNGLXDESTROYWINDOWPROC) __GLeeGetProcAddress("glXDestroyWindow");
        pglXCreatePixmap = (PFNGLXCREATEPIXMAPPROC) __GLeeGetProcAddress("glXCreatePixmap");
        pglXDestroyPixmap = (PFNGLXDESTROYPIXMAPPROC) __GLeeGetProcAddress("glXDestroyPixmap");
        pglXCreatePbuffer = (PFNGLXCREATEPBUFFERPROC) __GLeeGetProcAddress("glXCreatePbuffer");
        pglXDestroyPbuffer = (PFNGLXDESTROYPBUFFERPROC) __GLeeGetProcAddress("glXDestroyPbuffer");
        pglXQueryDrawable = (PFNGLXQUERYDRAWABLEPROC) __GLeeGetProcAddress("glXQueryDrawable");
        pglXCreateNewContext = (PFNGLXCREATENEWCONTEXTPROC) __GLeeGetProcAddress("glXCreateNewContext");
        pglXMakeContextCurrent = (PFNGLXMAKECONTEXTCURRENTPROC) __GLeeGetProcAddress("glXMakeContextCurrent");
        pglXGetCurrentReadDrawable = (PFNGLXGETCURRENTREADDRAWABLEPROC) __GLeeGetProcAddress("glXGetCurrentReadDrawable");
        pglXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC) __GLeeGetProcAddress("glXGetCurrentDisplay");
        pglXQueryContext = (PFNGLXQUERYCONTEXTPROC) __GLeeGetProcAddress("glXQueryContext");
        pglXSelectEvent = (PFNGLXSELECTEVENTPROC) __GLeeGetProcAddress("glXSelectEvent");
        pglXGetSelectedEvent = (PFNGLXGETSELECTEDEVENTPROC) __GLeeGetProcAddress("glXGetSelectedEvent");
#endif
    }
    if (__GLeeCheckExtension("GLX_VERSION_1_4", &extensionNames) )
    {
        GLEE_GLX_VERSION_1_4 = GL_TRUE;
#ifdef __GLEE_GLX_VERSION_1_4
        pglXGetProcAddress = (PFNGLXGETPROCADDRESSPROC) __GLeeGetProcAddress("glXGetProcAddress");
#endif
    }
    if (__GLeeCheckExtension("GLX_ARB_multisample", &extensionNames) )
    {
        GLEE_GLX_ARB_multisample = GL_TRUE;
#ifdef __GLEE_GLX_ARB_multisample
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIS_multisample", &extensionNames) )
    {
        GLEE_GLX_SGIS_multisample = GL_TRUE;
#ifdef __GLEE_GLX_SGIS_multisample
#endif
    }
    if (__GLeeCheckExtension("GLX_EXT_visual_info", &extensionNames) )
    {
        GLEE_GLX_EXT_visual_info = GL_TRUE;
#ifdef __GLEE_GLX_EXT_visual_info
#endif
    }
    if (__GLeeCheckExtension("GLX_SGI_swap_control", &extensionNames) )
    {
        GLEE_GLX_SGI_swap_control = GL_TRUE;
#ifdef __GLEE_GLX_SGI_swap_control
        pglXSwapIntervalSGI = (PFNGLXSWAPINTERVALSGIPROC) __GLeeGetProcAddress("glXSwapIntervalSGI");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGI_video_sync", &extensionNames) )
    {
        GLEE_GLX_SGI_video_sync = GL_TRUE;
#ifdef __GLEE_GLX_SGI_video_sync
        pglXGetVideoSyncSGI = (PFNGLXGETVIDEOSYNCSGIPROC) __GLeeGetProcAddress("glXGetVideoSyncSGI");
        pglXWaitVideoSyncSGI = (PFNGLXWAITVIDEOSYNCSGIPROC) __GLeeGetProcAddress("glXWaitVideoSyncSGI");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGI_make_current_read", &extensionNames) )
    {
        GLEE_GLX_SGI_make_current_read = GL_TRUE;
#ifdef __GLEE_GLX_SGI_make_current_read
        pglXMakeCurrentReadSGI = (PFNGLXMAKECURRENTREADSGIPROC) __GLeeGetProcAddress("glXMakeCurrentReadSGI");
        pglXGetCurrentReadDrawableSGI = (PFNGLXGETCURRENTREADDRAWABLESGIPROC) __GLeeGetProcAddress("glXGetCurrentReadDrawableSGI");
#endif
    }
    if (__GLeeCheckExtension("GLX_EXT_visual_rating", &extensionNames) )
    {
        GLEE_GLX_EXT_visual_rating = GL_TRUE;
#ifdef __GLEE_GLX_EXT_visual_rating
#endif
    }
    if (__GLeeCheckExtension("GLX_EXT_import_context", &extensionNames) )
    {
        GLEE_GLX_EXT_import_context = GL_TRUE;
#ifdef __GLEE_GLX_EXT_import_context
        pglXGetCurrentDisplayEXT = (PFNGLXGETCURRENTDISPLAYEXTPROC) __GLeeGetProcAddress("glXGetCurrentDisplayEXT");
        pglXQueryContextInfoEXT = (PFNGLXQUERYCONTEXTINFOEXTPROC) __GLeeGetProcAddress("glXQueryContextInfoEXT");
        pglXGetContextIDEXT = (PFNGLXGETCONTEXTIDEXTPROC) __GLeeGetProcAddress("glXGetContextIDEXT");
        pglXImportContextEXT = (PFNGLXIMPORTCONTEXTEXTPROC) __GLeeGetProcAddress("glXImportContextEXT");
        pglXFreeContextEXT = (PFNGLXFREECONTEXTEXTPROC) __GLeeGetProcAddress("glXFreeContextEXT");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_fbconfig", &extensionNames) )
    {
        GLEE_GLX_SGIX_fbconfig = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_fbconfig
        pglXGetFBConfigAttribSGIX = (PFNGLXGETFBCONFIGATTRIBSGIXPROC) __GLeeGetProcAddress("glXGetFBConfigAttribSGIX");
        pglXChooseFBConfigSGIX = (PFNGLXCHOOSEFBCONFIGSGIXPROC) __GLeeGetProcAddress("glXChooseFBConfigSGIX");
        pglXCreateGLXPixmapWithConfigSGIX = (PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) __GLeeGetProcAddress("glXCreateGLXPixmapWithConfigSGIX");
        pglXCreateContextWithConfigSGIX = (PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) __GLeeGetProcAddress("glXCreateContextWithConfigSGIX");
        pglXGetVisualFromFBConfigSGIX = (PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) __GLeeGetProcAddress("glXGetVisualFromFBConfigSGIX");
        pglXGetFBConfigFromVisualSGIX = (PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) __GLeeGetProcAddress("glXGetFBConfigFromVisualSGIX");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_pbuffer", &extensionNames) )
    {
        GLEE_GLX_SGIX_pbuffer = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_pbuffer
        pglXCreateGLXPbufferSGIX = (PFNGLXCREATEGLXPBUFFERSGIXPROC) __GLeeGetProcAddress("glXCreateGLXPbufferSGIX");
        pglXDestroyGLXPbufferSGIX = (PFNGLXDESTROYGLXPBUFFERSGIXPROC) __GLeeGetProcAddress("glXDestroyGLXPbufferSGIX");
        pglXQueryGLXPbufferSGIX = (PFNGLXQUERYGLXPBUFFERSGIXPROC) __GLeeGetProcAddress("glXQueryGLXPbufferSGIX");
        pglXSelectEventSGIX = (PFNGLXSELECTEVENTSGIXPROC) __GLeeGetProcAddress("glXSelectEventSGIX");
        pglXGetSelectedEventSGIX = (PFNGLXGETSELECTEDEVENTSGIXPROC) __GLeeGetProcAddress("glXGetSelectedEventSGIX");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGI_cushion", &extensionNames) )
    {
        GLEE_GLX_SGI_cushion = GL_TRUE;
#ifdef __GLEE_GLX_SGI_cushion
        pglXCushionSGI = (PFNGLXCUSHIONSGIPROC) __GLeeGetProcAddress("glXCushionSGI");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_video_resize", &extensionNames) )
    {
        GLEE_GLX_SGIX_video_resize = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_video_resize
        pglXBindChannelToWindowSGIX = (PFNGLXBINDCHANNELTOWINDOWSGIXPROC) __GLeeGetProcAddress("glXBindChannelToWindowSGIX");
        pglXChannelRectSGIX = (PFNGLXCHANNELRECTSGIXPROC) __GLeeGetProcAddress("glXChannelRectSGIX");
        pglXQueryChannelRectSGIX = (PFNGLXQUERYCHANNELRECTSGIXPROC) __GLeeGetProcAddress("glXQueryChannelRectSGIX");
        pglXQueryChannelDeltasSGIX = (PFNGLXQUERYCHANNELDELTASSGIXPROC) __GLeeGetProcAddress("glXQueryChannelDeltasSGIX");
        pglXChannelRectSyncSGIX = (PFNGLXCHANNELRECTSYNCSGIXPROC) __GLeeGetProcAddress("glXChannelRectSyncSGIX");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_swap_group", &extensionNames) )
    {
        GLEE_GLX_SGIX_swap_group = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_swap_group
        pglXJoinSwapGroupSGIX = (PFNGLXJOINSWAPGROUPSGIXPROC) __GLeeGetProcAddress("glXJoinSwapGroupSGIX");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_swap_barrier", &extensionNames) )
    {
        GLEE_GLX_SGIX_swap_barrier = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_swap_barrier
        pglXBindSwapBarrierSGIX = (PFNGLXBINDSWAPBARRIERSGIXPROC) __GLeeGetProcAddress("glXBindSwapBarrierSGIX");
        pglXQueryMaxSwapBarriersSGIX = (PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) __GLeeGetProcAddress("glXQueryMaxSwapBarriersSGIX");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIS_blended_overlay", &extensionNames) )
    {
        GLEE_GLX_SGIS_blended_overlay = GL_TRUE;
#ifdef __GLEE_GLX_SGIS_blended_overlay
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIS_shared_multisample", &extensionNames) )
    {
        GLEE_GLX_SGIS_shared_multisample = GL_TRUE;
#ifdef __GLEE_GLX_SGIS_shared_multisample
#endif
    }
    if (__GLeeCheckExtension("GLX_SUN_get_transparent_index", &extensionNames) )
    {
        GLEE_GLX_SUN_get_transparent_index = GL_TRUE;
#ifdef __GLEE_GLX_SUN_get_transparent_index
        pglXGetTransparentIndexSUN = (PFNGLXGETTRANSPARENTINDEXSUNPROC) __GLeeGetProcAddress("glXGetTransparentIndexSUN");
#endif
    }
    if (__GLeeCheckExtension("GLX_3DFX_multisample", &extensionNames) )
    {
        GLEE_GLX_3DFX_multisample = GL_TRUE;
#ifdef __GLEE_GLX_3DFX_multisample
#endif
    }
    if (__GLeeCheckExtension("GLX_MESA_copy_sub_buffer", &extensionNames) )
    {
        GLEE_GLX_MESA_copy_sub_buffer = GL_TRUE;
#ifdef __GLEE_GLX_MESA_copy_sub_buffer
        pglXCopySubBufferMESA = (PFNGLXCOPYSUBBUFFERMESAPROC) __GLeeGetProcAddress("glXCopySubBufferMESA");
#endif
    }
    if (__GLeeCheckExtension("GLX_MESA_pixmap_colormap", &extensionNames) )
    {
        GLEE_GLX_MESA_pixmap_colormap = GL_TRUE;
#ifdef __GLEE_GLX_MESA_pixmap_colormap
        pglXCreateGLXPixmapMESA = (PFNGLXCREATEGLXPIXMAPMESAPROC) __GLeeGetProcAddress("glXCreateGLXPixmapMESA");
#endif
    }
    if (__GLeeCheckExtension("GLX_MESA_release_buffers", &extensionNames) )
    {
        GLEE_GLX_MESA_release_buffers = GL_TRUE;
#ifdef __GLEE_GLX_MESA_release_buffers
        pglXReleaseBuffersMESA = (PFNGLXRELEASEBUFFERSMESAPROC) __GLeeGetProcAddress("glXReleaseBuffersMESA");
#endif
    }
    if (__GLeeCheckExtension("GLX_MESA_set_3dfx_mode", &extensionNames) )
    {
        GLEE_GLX_MESA_set_3dfx_mode = GL_TRUE;
#ifdef __GLEE_GLX_MESA_set_3dfx_mode
        pglXSet3DfxModeMESA = (PFNGLXSET3DFXMODEMESAPROC) __GLeeGetProcAddress("glXSet3DfxModeMESA");
#endif
    }
    if (__GLeeCheckExtension("GLX_SGIX_visual_select_group", &extensionNames) )
    {
        GLEE_GLX_SGIX_visual_select_group = GL_TRUE;
#ifdef __GLEE_GLX_SGIX_visual_select_group
#endif
    }
    if (__GLeeCheckExtension("GLX_OML_swap_method", &extensionNames) )
    {
        GLEE_GLX_OML_swap_method = GL_TRUE;
#ifdef __GLEE_GLX_OML_swap_method
#endif
    }
    if (__GLeeCheckExtension("GLX_OML_sync_control", &extensionNames) )
    {
        GLEE_GLX_OML_sync_control = GL_TRUE;
#ifdef __GLEE_GLX_OML_sync_control
        pglXGetSyncValuesOML = (PFNGLXGETSYNCVALUESOMLPROC) __GLeeGetProcAddress("glXGetSyncValuesOML");
        pglXGetMscRateOML = (PFNGLXGETMSCRATEOMLPROC) __GLeeGetProcAddress("glXGetMscRateOML");
        pglXSwapBuffersMscOML = (PFNGLXSWAPBUFFERSMSCOMLPROC) __GLeeGetProcAddress("glXSwapBuffersMscOML");
        pglXWaitForMscOML = (PFNGLXWAITFORMSCOMLPROC) __GLeeGetProcAddress("glXWaitForMscOML");
        pglXWaitForSbcOML = (PFNGLXWAITFORSBCOMLPROC) __GLeeGetProcAddress("glXWaitForSbcOML");
#endif
    }
#endif //end GLX

    __GLeeExtList_clean(&extensionNames);
    return GL_TRUE;
}
