<?xml version="1.0"?>
<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">

<OpenGLAPI>

<!-- Core versions sorted by version number. -->

<category name="1.0">
    <enum name="FALSE"                                    value="0x0"/>
    <enum name="TRUE"                                     value="0x1"/>
    <enum name="ZERO"                                     value="0x0"/>
    <enum name="ONE"                                      value="0x1"/>
    <enum name="NONE"                                     value="0x0"/>
    <enum name="NO_ERROR"                                 value="0x0"/>
    <enum name="POINTS"                                   value="0x0000"/>
    <enum name="LINES"                                    value="0x0001"/>
    <enum name="LINE_LOOP"                                value="0x0002"/>
    <enum name="LINE_STRIP"                               value="0x0003"/>
    <enum name="TRIANGLES"                                value="0x0004"/>
    <enum name="TRIANGLE_STRIP"                           value="0x0005"/>
    <enum name="TRIANGLE_FAN"                             value="0x0006"/>
    <enum name="QUADS"                                    value="0x0007"/>
    <enum name="QUAD_STRIP"                               value="0x0008"/>
    <enum name="POLYGON"                                  value="0x0009"/>
    <enum name="ACCUM"                                    value="0x0100"/>
    <enum name="LOAD"                                     value="0x0101"/>
    <enum name="RETURN"                                   value="0x0102"/>
    <enum name="MULT"                                     value="0x0103"/>
    <enum name="ADD"                                      value="0x0104"/>
    <enum name="NEVER"                                    value="0x0200"/>
    <enum name="LESS"                                     value="0x0201"/>
    <enum name="EQUAL"                                    value="0x0202"/>
    <enum name="LEQUAL"                                   value="0x0203"/>
    <enum name="GREATER"                                  value="0x0204"/>
    <enum name="NOTEQUAL"                                 value="0x0205"/>
    <enum name="GEQUAL"                                   value="0x0206"/>
    <enum name="ALWAYS"                                   value="0x0207"/>
    <enum name="SRC_COLOR"                                value="0x0300"/>
    <enum name="ONE_MINUS_SRC_COLOR"                      value="0x0301"/>
    <enum name="SRC_ALPHA"                                value="0x0302"/>
    <enum name="ONE_MINUS_SRC_ALPHA"                      value="0x0303"/>
    <enum name="DST_ALPHA"                                value="0x0304"/>
    <enum name="ONE_MINUS_DST_ALPHA"                      value="0x0305"/>
    <enum name="DST_COLOR"                                value="0x0306"/>
    <enum name="ONE_MINUS_DST_COLOR"                      value="0x0307"/>
    <enum name="SRC_ALPHA_SATURATE"                       value="0x0308"/>
    <enum name="FRONT_LEFT"                               value="0x0400"/>
    <enum name="FRONT_RIGHT"                              value="0x0401"/>
    <enum name="BACK_LEFT"                                value="0x0402"/>
    <enum name="BACK_RIGHT"                               value="0x0403"/>
    <enum name="FRONT"                                    value="0x0404"/>
    <enum name="BACK"                                     value="0x0405"/>
    <enum name="LEFT"                                     value="0x0406"/>
    <enum name="RIGHT"                                    value="0x0407"/>
    <enum name="FRONT_AND_BACK"                           value="0x0408"/>
    <enum name="AUX0"                                     value="0x0409"/>
    <enum name="AUX1"                                     value="0x040A"/>
    <enum name="AUX2"                                     value="0x040B"/>
    <enum name="AUX3"                                     value="0x040C"/>
    <enum name="INVALID_VALUE"                            value="0x0501"/>
    <enum name="INVALID_ENUM"                             value="0x0500"/>
    <enum name="INVALID_OPERATION"                        value="0x0502"/>
    <enum name="STACK_OVERFLOW"                           value="0x0503"/>
    <enum name="STACK_UNDERFLOW"                          value="0x0504"/>
    <enum name="OUT_OF_MEMORY"                            value="0x0505"/>
    <enum name="2D"                                       value="0x0600"/>
    <enum name="3D"                                       value="0x0601"/>
    <enum name="3D_COLOR"                                 value="0x0602"/>
    <enum name="3D_COLOR_TEXTURE"                         value="0x0603"/>
    <enum name="4D_COLOR_TEXTURE"                         value="0x0604"/>
    <enum name="PASS_THROUGH_TOKEN"                       value="0x0700"/>
    <enum name="POINT_TOKEN"                              value="0x0701"/>
    <enum name="LINE_TOKEN"                               value="0x0702"/>
    <enum name="POLYGON_TOKEN"                            value="0x0703"/>
    <enum name="BITMAP_TOKEN"                             value="0x0704"/>
    <enum name="DRAW_PIXEL_TOKEN"                         value="0x0705"/>
    <enum name="COPY_PIXEL_TOKEN"                         value="0x0706"/>
    <enum name="LINE_RESET_TOKEN"                         value="0x0707"/>
    <enum name="EXP"                                      value="0x0800"/>
    <enum name="EXP2"                                     value="0x0801"/>
    <enum name="CW"                                       value="0x0900"/>
    <enum name="CCW"                                      value="0x0901"/>
    <enum name="COEFF"                                    value="0x0A00"/>
    <enum name="ORDER"                                    value="0x0A01"/>
    <enum name="DOMAIN"                                   value="0x0A02"/>
    <enum name="CURRENT_COLOR"                 count="4"  value="0x0B00">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_INDEX"                 count="1"  value="0x0B01">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_NORMAL"                count="3"  value="0x0B02">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_TEXTURE_COORDS"        count="4"  value="0x0B03">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_COLOR"          count="4"  value="0x0B04">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_INDEX"          count="1"  value="0x0B05">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_TEXTURE_COORDS" count="4"  value="0x0B06">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_POSITION"       count="4"  value="0x0B07">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_POSITION_VALID" count="1"  value="0x0B08">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_RASTER_DISTANCE"       count="1"  value="0x0B09">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SMOOTH"                  count="1"  value="0x0B10">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SIZE"                    count="1"  value="0x0B11">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SIZE_RANGE"              count="2"  value="0x0B12">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SIZE_GRANULARITY"        count="1"  value="0x0B13">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_SMOOTH"                   count="1"  value="0x0B20">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_WIDTH"                    count="1"  value="0x0B21">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_WIDTH_RANGE"              count="2"  value="0x0B22">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_WIDTH_GRANULARITY"        count="1"  value="0x0B23">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_STIPPLE"                  count="1"  value="0x0B24">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_STIPPLE_PATTERN"          count="1"  value="0x0B25">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_STIPPLE_REPEAT"           count="1"  value="0x0B26">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIST_MODE"                     count="1"  value="0x0B30">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_LIST_NESTING"              count="1"  value="0x0B31">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIST_BASE"                     count="1"  value="0x0B32">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIST_INDEX"                    count="1"  value="0x0B33">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_MODE"                  count="2"  value="0x0B40">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_SMOOTH"                count="1"  value="0x0B41">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_STIPPLE"               count="1"  value="0x0B42">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="EDGE_FLAG"                     count="1"  value="0x0B43">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CULL_FACE"                     count="1"  value="0x0B44">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CULL_FACE_MODE"                count="1"  value="0x0B45">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FRONT_FACE"                    count="1"  value="0x0B46">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHTING"                      count="1"  value="0x0B50">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT_MODEL_LOCAL_VIEWER"      count="1"  value="0x0B51">
        <size name="LightModelfv"/>
        <size name="LightModeliv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT_MODEL_TWO_SIDE"          count="1"  value="0x0B52">
        <size name="LightModelfv"/>
        <size name="LightModeliv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT_MODEL_AMBIENT"           count="4"  value="0x0B53">
        <size name="LightModelfv"/>
        <size name="LightModeliv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SHADE_MODEL"                   count="1"  value="0x0B54">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_MATERIAL_FACE"           count="1"  value="0x0B55">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_MATERIAL_PARAMETER"      count="1"  value="0x0B56">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_MATERIAL"                count="1"  value="0x0B57">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG"                           count="1"  value="0x0B60">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_INDEX"                     count="1"  value="0x0B61">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_DENSITY"                   count="1"  value="0x0B62">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_START"                     count="1"  value="0x0B63">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_END"                       count="1"  value="0x0B64">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_MODE"                      count="1"  value="0x0B65">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COLOR"                     count="4"  value="0x0B66">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_RANGE"                   count="2"  value="0x0B70">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_TEST"                    count="1"  value="0x0B71">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_WRITEMASK"               count="1"  value="0x0B72">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_CLEAR_VALUE"             count="1"  value="0x0B73">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_FUNC"                    count="1"  value="0x0B74">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACCUM_CLEAR_VALUE"             count="4"  value="0x0B80">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_TEST"                  count="1"  value="0x0B90">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_CLEAR_VALUE"           count="1"  value="0x0B91">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_FUNC"                  count="1"  value="0x0B92">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_VALUE_MASK"            count="1"  value="0x0B93">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_FAIL"                  count="1"  value="0x0B94">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_PASS_DEPTH_FAIL"       count="1"  value="0x0B95">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_PASS_DEPTH_PASS"       count="1"  value="0x0B96">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_REF"                   count="1"  value="0x0B97">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_WRITEMASK"             count="1"  value="0x0B98">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_MODE"                   count="1"  value="0x0BA0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NORMALIZE"                     count="1"  value="0x0BA1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VIEWPORT"                      count="4"  value="0x0BA2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW_STACK_DEPTH"         count="1"  value="0x0BA3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROJECTION_STACK_DEPTH"        count="1"  value="0x0BA4">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_STACK_DEPTH"           count="1"  value="0x0BA5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW_MATRIX"              count="16" value="0x0BA6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROJECTION_MATRIX"             count="16" value="0x0BA7">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_MATRIX"                count="16" value="0x0BA8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ATTRIB_STACK_DEPTH"            count="1"  value="0x0BB0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIENT_ATTRIB_STACK_DEPTH"     count="1"  value="0x0BB1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_TEST"                    count="1"  value="0x0BC0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_TEST_FUNC"               count="1"  value="0x0BC1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_TEST_REF"                count="1"  value="0x0BC2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DITHER"                        count="1"  value="0x0BD0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_DST"                     count="1"  value="0x0BE0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_SRC"                     count="1"  value="0x0BE1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND"                         count="1"  value="0x0BE2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LOGIC_OP_MODE"                 count="1"  value="0x0BF0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LOGIC_OP"                      count="1"  value="0x0BF1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="AUX_BUFFERS"                   count="1"  value="0x0C00">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER"                   count="1"  value="0x0C01">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="READ_BUFFER"                   count="1"  value="0x0C02">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SCISSOR_BOX"                   count="4"  value="0x0C10">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SCISSOR_TEST"                  count="1"  value="0x0C11">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_CLEAR_VALUE"             count="1"  value="0x0C20">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_WRITEMASK"               count="1"  value="0x0C21">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_CLEAR_VALUE"             count="4"  value="0x0C22">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_WRITEMASK"               count="4"  value="0x0C23">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_MODE"                    count="1"  value="0x0C30">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="RGBA_MODE"                     count="1"  value="0x0C31">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DOUBLEBUFFER"                  count="1"  value="0x0C32">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STEREO"                        count="1"  value="0x0C33">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="RENDER_MODE"                   count="1"  value="0x0C40">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PERSPECTIVE_CORRECTION_HINT"   count="1"  value="0x0C50">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SMOOTH_HINT"             count="1"  value="0x0C51">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LINE_SMOOTH_HINT"              count="1"  value="0x0C52">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_SMOOTH_HINT"           count="1"  value="0x0C53">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_HINT"                      count="1"  value="0x0C54">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_GEN_S"                 count="1"  value="0x0C60">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_GEN_T"                 count="1"  value="0x0C61">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_GEN_R"                 count="1"  value="0x0C62">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_GEN_Q"                 count="1"  value="0x0C63">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_I_TO_I"              count="1"  value="0x0C70">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_S_TO_S"                         value="0x0C71"/>
    <enum name="PIXEL_MAP_I_TO_R"                         value="0x0C72"/>
    <enum name="PIXEL_MAP_I_TO_G"                         value="0x0C73"/>
    <enum name="PIXEL_MAP_I_TO_B"                         value="0x0C74"/>
    <enum name="PIXEL_MAP_I_TO_A"                         value="0x0C75"/>
    <enum name="PIXEL_MAP_R_TO_R"                         value="0x0C76"/>
    <enum name="PIXEL_MAP_G_TO_G"                         value="0x0C77"/>
    <enum name="PIXEL_MAP_B_TO_B"                         value="0x0C78"/>
    <enum name="PIXEL_MAP_A_TO_A"                         value="0x0C79"/>
    <enum name="PIXEL_MAP_I_TO_I_SIZE"         count="1"  value="0x0CB0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_S_TO_S_SIZE"         count="1"  value="0x0CB1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_I_TO_R_SIZE"         count="1"  value="0x0CB2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_I_TO_G_SIZE"         count="1"  value="0x0CB3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_I_TO_B_SIZE"         count="1"  value="0x0CB4">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_I_TO_A_SIZE"         count="1"  value="0x0CB5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_R_TO_R_SIZE"         count="1"  value="0x0CB6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_G_TO_G_SIZE"         count="1"  value="0x0CB7">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_B_TO_B_SIZE"         count="1"  value="0x0CB8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PIXEL_MAP_A_TO_A_SIZE"         count="1"  value="0x0CB9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_SWAP_BYTES"             count="1"  value="0x0CF0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_LSB_FIRST"              count="1"  value="0x0CF1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_ROW_LENGTH"             count="1"  value="0x0CF2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_SKIP_PIXELS"            count="1"  value="0x0CF4">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_SKIP_ROWS"              count="1"  value="0x0CF3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_ALIGNMENT"              count="1"  value="0x0CF5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_SWAP_BYTES"               count="1"  value="0x0D00">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_LSB_FIRST"                count="1"  value="0x0D01">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_ROW_LENGTH"               count="1"  value="0x0D02">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_SKIP_ROWS"                count="1"  value="0x0D03">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_SKIP_PIXELS"              count="1"  value="0x0D04">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_ALIGNMENT"                count="1"  value="0x0D05">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP_COLOR"                     count="1"  value="0x0D10">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP_STENCIL"                   count="1"  value="0x0D11">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_SHIFT"                   count="1"  value="0x0D12">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_OFFSET"                  count="1"  value="0x0D13">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="RED_SCALE"                     count="1"  value="0x0D14">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="RED_BIAS"                      count="1"  value="0x0D15">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ZOOM_X"                        count="1"  value="0x0D16">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ZOOM_Y"                        count="1"  value="0x0D17">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="GREEN_SCALE"                   count="1"  value="0x0D18">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="GREEN_BIAS"                    count="1"  value="0x0D19">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLUE_SCALE"                    count="1"  value="0x0D1A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLUE_BIAS"                     count="1"  value="0x0D1B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_SCALE"                   count="1"  value="0x0D1C">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_BIAS"                    count="1"  value="0x0D1D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_SCALE"                   count="1"  value="0x0D1E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_BIAS"                    count="1"  value="0x0D1F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_EVAL_ORDER"                count="1"  value="0x0D30">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_LIGHTS"                    count="1"  value="0x0D31">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_CLIP_PLANES"               count="1"  value="0x0D32">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_SIZE"              count="1"  value="0x0D33">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_PIXEL_MAP_TABLE"           count="1"  value="0x0D34">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_ATTRIB_STACK_DEPTH"        count="1"  value="0x0D35">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_MODELVIEW_STACK_DEPTH"     count="1"  value="0x0D36">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_NAME_STACK_DEPTH"          count="1"  value="0x0D37">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_PROJECTION_STACK_DEPTH"    count="1"  value="0x0D38">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_STACK_DEPTH"       count="1"  value="0x0D39">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_VIEWPORT_DIMS"             count="2"  value="0x0D3A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_CLIENT_ATTRIB_STACK_DEPTH" count="1"  value="0x0D3B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SUBPIXEL_BITS"                 count="1"  value="0x0D50">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_BITS"                    count="1"  value="0x0D51">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="RED_BITS"                      count="1"  value="0x0D52">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="GREEN_BITS"                    count="1"  value="0x0D53">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLUE_BITS"                     count="1"  value="0x0D54">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALPHA_BITS"                    count="1"  value="0x0D55">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_BITS"                    count="1"  value="0x0D56">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_BITS"                  count="1"  value="0x0D57">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACCUM_RED_BITS"                count="1"  value="0x0D58">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACCUM_GREEN_BITS"              count="1"  value="0x0D59">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACCUM_BLUE_BITS"               count="1"  value="0x0D5A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACCUM_ALPHA_BITS"              count="1"  value="0x0D5B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NAME_STACK_DEPTH"              count="1"  value="0x0D70">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="AUTO_NORMAL"                   count="1"  value="0x0D80">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP1_COLOR_4"                  count="4"  value="0x0D90">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_INDEX"                    count="1"  value="0x0D91">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_NORMAL"                   count="3"  value="0x0D92">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_TEXTURE_COORD_1"          count="1"  value="0x0D93">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_TEXTURE_COORD_2"          count="2"  value="0x0D94">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_TEXTURE_COORD_3"          count="3"  value="0x0D95">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_TEXTURE_COORD_4"          count="4"  value="0x0D96">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_VERTEX_3"                 count="3"  value="0x0D97">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_VERTEX_4"                 count="4"  value="0x0D98">
        <size name="Map1d"/>
        <size name="Map1f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_COLOR_4"                  count="4"  value="0x0DB0">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_INDEX"                    count="1"  value="0x0DB1">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_NORMAL"                   count="3"  value="0x0DB2">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_TEXTURE_COORD_1"          count="1"  value="0x0DB3">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_TEXTURE_COORD_2"          count="2"  value="0x0DB4">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_TEXTURE_COORD_3"          count="3"  value="0x0DB5">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_TEXTURE_COORD_4"          count="4"  value="0x0DB6">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_VERTEX_3"                 count="3"  value="0x0DB7">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP2_VERTEX_4"                 count="4"  value="0x0DB8">
        <size name="Map2d"/>
        <size name="Map2f"/>
        <size name="Get" count="1" mode="get"/>
    </enum>
    <enum name="MAP1_GRID_DOMAIN"              count="2"  value="0x0DD0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP1_GRID_SEGMENTS"            count="1"  value="0x0DD1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP2_GRID_DOMAIN"              count="4"  value="0x0DD2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAP2_GRID_SEGMENTS"            count="2"  value="0x0DD3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_1D"                    count="1"  value="0x0DE0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_2D"                    count="1"  value="0x0DE1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FEEDBACK_BUFFER_POINTER"                  value="0x0DF0"/>
    <enum name="FEEDBACK_BUFFER_SIZE"                     value="0x0DF1"/>
    <enum name="FEEDBACK_BUFFER_TYPE"                     value="0x0DF2"/>
    <enum name="SELECTION_BUFFER_POINTER"                 value="0x0DF3"/>
    <enum name="SELECTION_BUFFER_SIZE"                    value="0x0DF4"/>
    <enum name="TEXTURE_WIDTH"                 count="1"  value="0x1000">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_HEIGHT"                count="1"  value="0x1001">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BORDER"                count="1"  value="0x1005">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPONENTS"            count="1"  value="0x1003">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BORDER_COLOR"          count="4"  value="0x1004">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="DONT_CARE"                                value="0x1100"/>
    <enum name="FASTEST"                                  value="0x1101"/>
    <enum name="NICEST"                                   value="0x1102"/>
    <enum name="AMBIENT"                       count="4"  value="0x1200">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="DIFFUSE"                       count="4"  value="0x1201">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="SPECULAR"                      count="4"  value="0x1202">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="POSITION"                      count="4"  value="0x1203">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="SPOT_DIRECTION"                count="3"  value="0x1204">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="SPOT_EXPONENT"                 count="1"  value="0x1205">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="SPOT_CUTOFF"                   count="1"  value="0x1206">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="CONSTANT_ATTENUATION"          count="1"  value="0x1207">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="LINEAR_ATTENUATION"            count="1"  value="0x1208">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="QUADRATIC_ATTENUATION"         count="1"  value="0x1209">
        <size name="Lightfv"/>
        <size name="Lightiv"/>
        <size name="GetLightfv" mode="get"/>
        <size name="GetLightiv" mode="get"/>
    </enum>
    <enum name="COMPILE"                                  value="0x1300"/>
    <enum name="COMPILE_AND_EXECUTE"                      value="0x1301"/>
    <enum name="BYTE"                          count="1"  value="0x1400">
        <size name="CallLists"/>
    </enum>
    <enum name="UNSIGNED_BYTE"                 count="1"  value="0x1401">
        <size name="CallLists"/>
    </enum>
    <enum name="SHORT"                         count="2"  value="0x1402">
        <size name="CallLists"/>
    </enum>
    <enum name="UNSIGNED_SHORT"                count="2"  value="0x1403">
        <size name="CallLists"/>
    </enum>
    <enum name="INT"                           count="4"  value="0x1404">
        <size name="CallLists"/>
    </enum>
    <enum name="UNSIGNED_INT"                  count="4"  value="0x1405">
        <size name="CallLists"/>
    </enum>
    <enum name="FLOAT"                         count="4"  value="0x1406">
        <size name="CallLists"/>
    </enum>
    <enum name="2_BYTES"                       count="2"  value="0x1407">
        <size name="CallLists"/>
    </enum>
    <enum name="3_BYTES"                       count="3"  value="0x1408">
        <size name="CallLists"/>
    </enum>
    <enum name="4_BYTES"                       count="4"  value="0x1409">
        <size name="CallLists"/>
    </enum>
    <enum name="HALF_FLOAT"                    count="2"  value="0x140B">
        <size name="CallLists"/>
    </enum>
    <enum name="CLEAR"                                    value="0x1500"/>
    <enum name="AND"                                      value="0x1501"/>
    <enum name="AND_REVERSE"                              value="0x1502"/>
    <enum name="COPY"                                     value="0x1503"/>
    <enum name="AND_INVERTED"                             value="0x1504"/>
    <enum name="NOOP"                                     value="0x1505"/>
    <enum name="XOR"                                      value="0x1506"/>
    <enum name="OR"                                       value="0x1507"/>
    <enum name="NOR"                                      value="0x1508"/>
    <enum name="EQUIV"                                    value="0x1509"/>
    <enum name="INVERT"                                   value="0x150A"/>
    <enum name="OR_REVERSE"                               value="0x150B"/>
    <enum name="COPY_INVERTED"                            value="0x150C"/>
    <enum name="OR_INVERTED"                              value="0x150D"/>
    <enum name="NAND"                                     value="0x150E"/>
    <enum name="SET"                                      value="0x150F"/>
    <enum name="EMISSION"                      count="4"  value="0x1600">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
    </enum>
    <enum name="SHININESS"                     count="1"  value="0x1601">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
    </enum>
    <enum name="AMBIENT_AND_DIFFUSE"           count="4"  value="0x1602">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
    </enum>
    <enum name="COLOR_INDEXES"                 count="3"  value="0x1603">
        <size name="Materialfv"/>
        <size name="Materialiv"/>
        <size name="GetMaterialfv" mode="get"/>
        <size name="GetMaterialiv" mode="get"/>
    </enum>
    <enum name="MODELVIEW"                                value="0x1700"/>
    <enum name="PROJECTION"                               value="0x1701"/>
    <enum name="TEXTURE"                                  value="0x1702"/>
    <enum name="COLOR"                                    value="0x1800"/>
    <enum name="DEPTH"                                    value="0x1801"/>
    <enum name="STENCIL"                                  value="0x1802"/>
    <enum name="COLOR_INDEX"                              value="0x1900"/>
    <enum name="STENCIL_INDEX"                            value="0x1901"/>
    <enum name="DEPTH_COMPONENT"                          value="0x1902"/>
    <enum name="RED"                                      value="0x1903"/>
    <enum name="GREEN"                                    value="0x1904"/>
    <enum name="BLUE"                                     value="0x1905"/>
    <enum name="ALPHA"                                    value="0x1906"/>
    <enum name="RGBA"                                     value="0x1908"/>
    <enum name="RGB"                                      value="0x1907"/>
    <enum name="LUMINANCE"                                value="0x1909"/>
    <enum name="LUMINANCE_ALPHA"                          value="0x190A"/>
    <enum name="BITMAP"                                   value="0x1A00"/>
    <enum name="POINT"                                    value="0x1B00"/>
    <enum name="LINE"                                     value="0x1B01"/>
    <enum name="FILL"                                     value="0x1B02"/>
    <enum name="FEEDBACK"                                 value="0x1C01"/>
    <enum name="RENDER"                                   value="0x1C00"/>
    <enum name="SELECT"                                   value="0x1C02"/>
    <enum name="FLAT"                                     value="0x1D00"/>
    <enum name="SMOOTH"                                   value="0x1D01"/>
    <enum name="KEEP"                                     value="0x1E00"/>
    <enum name="REPLACE"                                  value="0x1E01"/>
    <enum name="INCR"                                     value="0x1E02"/>
    <enum name="DECR"                                     value="0x1E03"/>
    <enum name="VENDOR"                                   value="0x1F00"/>
    <enum name="RENDERER"                                 value="0x1F01"/>
    <enum name="VERSION"                                  value="0x1F02"/>
    <enum name="EXTENSIONS"                               value="0x1F03"/>
    <enum name="S"                                        value="0x2000"/>
    <enum name="T"                                        value="0x2001"/>
    <enum name="R"                                        value="0x2002"/>
    <enum name="Q"                                        value="0x2003"/>
    <enum name="MODULATE"                                 value="0x2100"/>
    <enum name="DECAL"                                    value="0x2101"/>
    <enum name="TEXTURE_ENV_MODE"              count="1"  value="0x2200">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="TEXTURE_ENV_COLOR"             count="4"  value="0x2201">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="TEXTURE_ENV"                              value="0x2300"/>
    <enum name="EYE_LINEAR"                               value="0x2400"/>
    <enum name="OBJECT_LINEAR"                            value="0x2401"/>
    <enum name="SPHERE_MAP"                               value="0x2402"/>
    <enum name="TEXTURE_GEN_MODE"              count="1"  value="0x2500">
        <size name="TexGendv"/>
        <size name="TexGenfv"/>
        <size name="TexGeniv"/>
        <size name="GetTexGendv" mode="get"/>
        <size name="GetTexGenfv" mode="get"/>
        <size name="GetTexGeniv" mode="get"/>
    </enum>
    <enum name="OBJECT_PLANE"                  count="4"  value="0x2501">
        <size name="TexGendv"/>
        <size name="TexGenfv"/>
        <size name="TexGeniv"/>
        <size name="GetTexGendv" mode="get"/>
        <size name="GetTexGenfv" mode="get"/>
        <size name="GetTexGeniv" mode="get"/>
    </enum>
    <enum name="EYE_PLANE"                     count="4"  value="0x2502">
        <size name="TexGendv"/>
        <size name="TexGenfv"/>
        <size name="TexGeniv"/>
        <size name="GetTexGendv" mode="get"/>
        <size name="GetTexGenfv" mode="get"/>
        <size name="GetTexGeniv" mode="get"/>
    </enum>
    <enum name="NEAREST"                                  value="0x2600"/>
    <enum name="LINEAR"                                   value="0x2601"/>
    <enum name="NEAREST_MIPMAP_NEAREST"                   value="0x2700"/>
    <enum name="LINEAR_MIPMAP_NEAREST"                    value="0x2701"/>
    <enum name="NEAREST_MIPMAP_LINEAR"                    value="0x2702"/>
    <enum name="LINEAR_MIPMAP_LINEAR"                     value="0x2703"/>
    <enum name="TEXTURE_MAG_FILTER"            count="1"  value="0x2800">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_MIN_FILTER"            count="1"  value="0x2801">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_WRAP_S"                count="1"  value="0x2802">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_WRAP_T"                count="1"  value="0x2803">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="CLAMP"                                    value="0x2900"/>
    <enum name="REPEAT"                                   value="0x2901"/>
    <enum name="CLIP_PLANE0"                   count="1"  value="0x3000">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIP_PLANE1"                   count="1"  value="0x3001">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIP_PLANE2"                   count="1"  value="0x3002">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIP_PLANE3"                   count="1"  value="0x3003">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIP_PLANE4"                   count="1"  value="0x3004">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIP_PLANE5"                   count="1"  value="0x3005">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT0"                        count="1"  value="0x4000">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT1"                        count="1"  value="0x4001">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT2"                        count="1"  value="0x4002">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT3"                        count="1"  value="0x4003">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT4"                        count="1"  value="0x4004">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT5"                        count="1"  value="0x4005">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT6"                        count="1"  value="0x4006">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="LIGHT7"                        count="1"  value="0x4007">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_BIT"                              value="0x00000001"/>
    <enum name="POINT_BIT"                                value="0x00000002"/>
    <enum name="LINE_BIT"                                 value="0x00000004"/>
    <enum name="POLYGON_BIT"                              value="0x00000008"/>
    <enum name="POLYGON_STIPPLE_BIT"                      value="0x00000010"/>
    <enum name="PIXEL_MODE_BIT"                           value="0x00000020"/>
    <enum name="LIGHTING_BIT"                             value="0x00000040"/>
    <enum name="FOG_BIT"                                  value="0x00000080"/>
    <enum name="DEPTH_BUFFER_BIT"                         value="0x00000100"/>
    <enum name="ACCUM_BUFFER_BIT"                         value="0x00000200"/>
    <enum name="STENCIL_BUFFER_BIT"                       value="0x00000400"/>
    <enum name="VIEWPORT_BIT"                             value="0x00000800"/>
    <enum name="TRANSFORM_BIT"                            value="0x00001000"/>
    <enum name="ENABLE_BIT"                               value="0x00002000"/>
    <enum name="COLOR_BUFFER_BIT"                         value="0x00004000"/>
    <enum name="HINT_BIT"                                 value="0x00008000"/>
    <enum name="EVAL_BIT"                                 value="0x00010000"/>
    <enum name="LIST_BIT"                                 value="0x00020000"/>
    <enum name="TEXTURE_BIT"                              value="0x00040000"/>
    <enum name="SCISSOR_BIT"                              value="0x00080000"/>
    <enum name="ALL_ATTRIB_BITS"                          value="0x000FFFFF"/>

    <type name="double"  size="8"  float="true"    glx_name="FLOAT64"/>
    <type name="clampd"  size="8"  float="true"    glx_name="FLOAT64"/>

    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>

    <type name="int"     size="4"                  glx_name="CARD32"/>
    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
    <type name="sizei"   size="4"  unsigned="true" glx_name="CARD32"/>
    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>

    <type name="short"   size="2"                  glx_name="CARD16"/>
    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>

    <type name="byte"    size="1"                  glx_name="CARD8"/>
    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
    
    <type name="void"    size="1"/>

    <function name="NewList" offset="0">
        <param name="list" type="GLuint"/>
        <param name="mode" type="GLenum"/>
        <glx sop="101"/>
    </function>

    <function name="EndList" offset="1">
        <glx sop="102"/>
    </function>

    <function name="CallList" offset="2">
        <param name="list" type="GLuint"/>
        <glx rop="1"/>
    </function>

    <function name="CallLists" offset="3">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="type" type="GLenum"/>
        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
        <glx rop="2" large="true"/>
    </function>

    <function name="DeleteLists" offset="4">
        <param name="list" type="GLuint"/>
        <param name="range" type="GLsizei"/>
        <glx sop="103"/>
    </function>

    <function name="GenLists" offset="5">
        <param name="range" type="GLsizei"/>
        <return type="GLuint"/>
        <glx sop="104"/>
    </function>

    <function name="ListBase" offset="6">
        <param name="base" type="GLuint"/>
        <glx rop="3"/>
    </function>

    <function name="Begin" offset="7">
        <param name="mode" type="GLenum"/>
        <glx rop="4"/>
    </function>

    <function name="Bitmap" offset="8">
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="xorig" type="GLfloat"/>
        <param name="yorig" type="GLfloat"/>
        <param name="xmove" type="GLfloat"/>
        <param name="ymove" type="GLfloat"/>
        <param name="bitmap" type="const GLubyte *" img_width="width" img_height="height" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
        <glx rop="5" large="true"/>
    </function>

    <function name="Color3b" offset="9" vectorequiv="Color3bv">
        <param name="red" type="GLbyte"/>
        <param name="green" type="GLbyte"/>
        <param name="blue" type="GLbyte"/>
    </function>

    <function name="Color3bv" offset="10">
        <param name="v" type="const GLbyte *" count="3"/>
        <glx rop="6"/>
    </function>

    <function name="Color3d" offset="11" vectorequiv="Color3dv">
        <param name="red" type="GLdouble"/>
        <param name="green" type="GLdouble"/>
        <param name="blue" type="GLdouble"/>
    </function>

    <function name="Color3dv" offset="12">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="7"/>
    </function>

    <function name="Color3f" offset="13" vectorequiv="Color3fv">
        <param name="red" type="GLfloat"/>
        <param name="green" type="GLfloat"/>
        <param name="blue" type="GLfloat"/>
    </function>

    <function name="Color3fv" offset="14">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="8"/>
    </function>

    <function name="Color3i" offset="15" vectorequiv="Color3iv">
        <param name="red" type="GLint"/>
        <param name="green" type="GLint"/>
        <param name="blue" type="GLint"/>
    </function>

    <function name="Color3iv" offset="16">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="9"/>
    </function>

    <function name="Color3s" offset="17" vectorequiv="Color3sv">
        <param name="red" type="GLshort"/>
        <param name="green" type="GLshort"/>
        <param name="blue" type="GLshort"/>
    </function>

    <function name="Color3sv" offset="18">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="10"/>
    </function>

    <function name="Color3ub" offset="19" vectorequiv="Color3ubv">
        <param name="red" type="GLubyte"/>
        <param name="green" type="GLubyte"/>
        <param name="blue" type="GLubyte"/>
    </function>

    <function name="Color3ubv" offset="20">
        <param name="v" type="const GLubyte *" count="3"/>
        <glx rop="11"/>
    </function>

    <function name="Color3ui" offset="21" vectorequiv="Color3uiv">
        <param name="red" type="GLuint"/>
        <param name="green" type="GLuint"/>
        <param name="blue" type="GLuint"/>
    </function>

    <function name="Color3uiv" offset="22">
        <param name="v" type="const GLuint *" count="3"/>
        <glx rop="12"/>
    </function>

    <function name="Color3us" offset="23" vectorequiv="Color3usv">
        <param name="red" type="GLushort"/>
        <param name="green" type="GLushort"/>
        <param name="blue" type="GLushort"/>
    </function>

    <function name="Color3usv" offset="24">
        <param name="v" type="const GLushort *" count="3"/>
        <glx rop="13"/>
    </function>

    <function name="Color4b" offset="25" vectorequiv="Color4bv">
        <param name="red" type="GLbyte"/>
        <param name="green" type="GLbyte"/>
        <param name="blue" type="GLbyte"/>
        <param name="alpha" type="GLbyte"/>
    </function>

    <function name="Color4bv" offset="26">
        <param name="v" type="const GLbyte *" count="4"/>
        <glx rop="14"/>
    </function>

    <function name="Color4d" offset="27" vectorequiv="Color4dv">
        <param name="red" type="GLdouble"/>
        <param name="green" type="GLdouble"/>
        <param name="blue" type="GLdouble"/>
        <param name="alpha" type="GLdouble"/>
    </function>

    <function name="Color4dv" offset="28">
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="15"/>
    </function>

    <function name="Color4f" offset="29" vectorequiv="Color4fv">
        <param name="red" type="GLfloat"/>
        <param name="green" type="GLfloat"/>
        <param name="blue" type="GLfloat"/>
        <param name="alpha" type="GLfloat"/>
    </function>

    <function name="Color4fv" offset="30">
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="16"/>
    </function>

    <function name="Color4i" offset="31" vectorequiv="Color4iv">
        <param name="red" type="GLint"/>
        <param name="green" type="GLint"/>
        <param name="blue" type="GLint"/>
        <param name="alpha" type="GLint"/>
    </function>

    <function name="Color4iv" offset="32">
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="17"/>
    </function>

    <function name="Color4s" offset="33" vectorequiv="Color4sv">
        <param name="red" type="GLshort"/>
        <param name="green" type="GLshort"/>
        <param name="blue" type="GLshort"/>
        <param name="alpha" type="GLshort"/>
    </function>

    <function name="Color4sv" offset="34">
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="18"/>
    </function>

    <function name="Color4ub" offset="35" vectorequiv="Color4ubv">
        <param name="red" type="GLubyte"/>
        <param name="green" type="GLubyte"/>
        <param name="blue" type="GLubyte"/>
        <param name="alpha" type="GLubyte"/>
    </function>

    <function name="Color4ubv" offset="36">
        <param name="v" type="const GLubyte *" count="4"/>
        <glx rop="19"/>
    </function>

    <function name="Color4ui" offset="37" vectorequiv="Color4uiv">
        <param name="red" type="GLuint"/>
        <param name="green" type="GLuint"/>
        <param name="blue" type="GLuint"/>
        <param name="alpha" type="GLuint"/>
    </function>

    <function name="Color4uiv" offset="38">
        <param name="v" type="const GLuint *" count="4"/>
        <glx rop="20"/>
    </function>

    <function name="Color4us" offset="39" vectorequiv="Color4usv">
        <param name="red" type="GLushort"/>
        <param name="green" type="GLushort"/>
        <param name="blue" type="GLushort"/>
        <param name="alpha" type="GLushort"/>
    </function>

    <function name="Color4usv" offset="40">
        <param name="v" type="const GLushort *" count="4"/>
        <glx rop="21"/>
    </function>

    <function name="EdgeFlag" offset="41" vectorequiv="EdgeFlagv">
        <param name="flag" type="GLboolean"/>
    </function>

    <function name="EdgeFlagv" offset="42">
        <param name="flag" type="const GLboolean *" count="1"/>
        <glx rop="22"/>
    </function>

    <function name="End" offset="43">
        <glx rop="23"/>
    </function>

    <function name="Indexd" offset="44" vectorequiv="Indexdv">
        <param name="c" type="GLdouble"/>
    </function>

    <function name="Indexdv" offset="45">
        <param name="c" type="const GLdouble *" count="1"/>
        <glx rop="24"/>
    </function>

    <function name="Indexf" offset="46" vectorequiv="Indexfv">
        <param name="c" type="GLfloat"/>
    </function>

    <function name="Indexfv" offset="47">
        <param name="c" type="const GLfloat *" count="1"/>
        <glx rop="25"/>
    </function>

    <function name="Indexi" offset="48" vectorequiv="Indexiv">
        <param name="c" type="GLint"/>
    </function>

    <function name="Indexiv" offset="49">
        <param name="c" type="const GLint *" count="1"/>
        <glx rop="26"/>
    </function>

    <function name="Indexs" offset="50" vectorequiv="Indexsv">
        <param name="c" type="GLshort"/>
    </function>

    <function name="Indexsv" offset="51">
        <param name="c" type="const GLshort *" count="1"/>
        <glx rop="27"/>
    </function>

    <function name="Normal3b" offset="52" vectorequiv="Normal3bv">
        <param name="nx" type="GLbyte"/>
        <param name="ny" type="GLbyte"/>
        <param name="nz" type="GLbyte"/>
    </function>

    <function name="Normal3bv" offset="53">
        <param name="v" type="const GLbyte *" count="3"/>
        <glx rop="28"/>
    </function>

    <function name="Normal3d" offset="54" vectorequiv="Normal3dv">
        <param name="nx" type="GLdouble"/>
        <param name="ny" type="GLdouble"/>
        <param name="nz" type="GLdouble"/>
    </function>

    <function name="Normal3dv" offset="55">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="29"/>
    </function>

    <function name="Normal3f" offset="56" vectorequiv="Normal3fv">
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
    </function>

    <function name="Normal3fv" offset="57">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="30"/>
    </function>

    <function name="Normal3i" offset="58" vectorequiv="Normal3iv">
        <param name="nx" type="GLint"/>
        <param name="ny" type="GLint"/>
        <param name="nz" type="GLint"/>
    </function>

    <function name="Normal3iv" offset="59">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="31"/>
    </function>

    <function name="Normal3s" offset="60" vectorequiv="Normal3sv">
        <param name="nx" type="GLshort"/>
        <param name="ny" type="GLshort"/>
        <param name="nz" type="GLshort"/>
    </function>

    <function name="Normal3sv" offset="61">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="32"/>
    </function>

    <function name="RasterPos2d" offset="62" vectorequiv="RasterPos2dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="RasterPos2dv" offset="63">
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="33"/>
    </function>

    <function name="RasterPos2f" offset="64" vectorequiv="RasterPos2fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="RasterPos2fv" offset="65">
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="34"/>
    </function>

    <function name="RasterPos2i" offset="66" vectorequiv="RasterPos2iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
    </function>

    <function name="RasterPos2iv" offset="67">
        <param name="v" type="const GLint *" count="2"/>
        <glx rop="35"/>
    </function>

    <function name="RasterPos2s" offset="68" vectorequiv="RasterPos2sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="RasterPos2sv" offset="69">
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="36"/>
    </function>

    <function name="RasterPos3d" offset="70" vectorequiv="RasterPos3dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="RasterPos3dv" offset="71">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="37"/>
    </function>

    <function name="RasterPos3f" offset="72" vectorequiv="RasterPos3fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="RasterPos3fv" offset="73">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="38"/>
    </function>

    <function name="RasterPos3i" offset="74" vectorequiv="RasterPos3iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
    </function>

    <function name="RasterPos3iv" offset="75">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="39"/>
    </function>

    <function name="RasterPos3s" offset="76" vectorequiv="RasterPos3sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="RasterPos3sv" offset="77">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="40"/>
    </function>

    <function name="RasterPos4d" offset="78" vectorequiv="RasterPos4dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="RasterPos4dv" offset="79">
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="41"/>
    </function>

    <function name="RasterPos4f" offset="80" vectorequiv="RasterPos4fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="RasterPos4fv" offset="81">
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="42"/>
    </function>

    <function name="RasterPos4i" offset="82" vectorequiv="RasterPos4iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
        <param name="w" type="GLint"/>
    </function>

    <function name="RasterPos4iv" offset="83">
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="43"/>
    </function>

    <function name="RasterPos4s" offset="84" vectorequiv="RasterPos4sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
    </function>

    <function name="RasterPos4sv" offset="85">
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="44"/>
    </function>

    <function name="Rectd" offset="86" vectorequiv="Rectdv">
        <param name="x1" type="GLdouble"/>
        <param name="y1" type="GLdouble"/>
        <param name="x2" type="GLdouble"/>
        <param name="y2" type="GLdouble"/>
    </function>

    <function name="Rectdv" offset="87">
        <param name="v1" type="const GLdouble *" count="2"/>
        <param name="v2" type="const GLdouble *" count="2"/>
        <glx rop="45"/>
    </function>

    <function name="Rectf" offset="88" vectorequiv="Rectfv">
        <param name="x1" type="GLfloat"/>
        <param name="y1" type="GLfloat"/>
        <param name="x2" type="GLfloat"/>
        <param name="y2" type="GLfloat"/>
    </function>

    <function name="Rectfv" offset="89">
        <param name="v1" type="const GLfloat *" count="2"/>
        <param name="v2" type="const GLfloat *" count="2"/>
        <glx rop="46"/>
    </function>

    <function name="Recti" offset="90" vectorequiv="Rectiv">
        <param name="x1" type="GLint"/>
        <param name="y1" type="GLint"/>
        <param name="x2" type="GLint"/>
        <param name="y2" type="GLint"/>
    </function>

    <function name="Rectiv" offset="91">
        <param name="v1" type="const GLint *" count="2"/>
        <param name="v2" type="const GLint *" count="2"/>
        <glx rop="47"/>
    </function>

    <function name="Rects" offset="92" vectorequiv="Rectsv">
        <param name="x1" type="GLshort"/>
        <param name="y1" type="GLshort"/>
        <param name="x2" type="GLshort"/>
        <param name="y2" type="GLshort"/>
    </function>

    <function name="Rectsv" offset="93">
        <param name="v1" type="const GLshort *" count="2"/>
        <param name="v2" type="const GLshort *" count="2"/>
        <glx rop="48"/>
    </function>

    <function name="TexCoord1d" offset="94" vectorequiv="TexCoord1dv">
        <param name="s" type="GLdouble"/>
    </function>

    <function name="TexCoord1dv" offset="95">
        <param name="v" type="const GLdouble *" count="1"/>
        <glx rop="49"/>
    </function>

    <function name="TexCoord1f" offset="96" vectorequiv="TexCoord1fv">
        <param name="s" type="GLfloat"/>
    </function>

    <function name="TexCoord1fv" offset="97">
        <param name="v" type="const GLfloat *" count="1"/>
        <glx rop="50"/>
    </function>

    <function name="TexCoord1i" offset="98" vectorequiv="TexCoord1iv">
        <param name="s" type="GLint"/>
    </function>

    <function name="TexCoord1iv" offset="99">
        <param name="v" type="const GLint *" count="1"/>
        <glx rop="51"/>
    </function>

    <function name="TexCoord1s" offset="100" vectorequiv="TexCoord1sv">
        <param name="s" type="GLshort"/>
    </function>

    <function name="TexCoord1sv" offset="101">
        <param name="v" type="const GLshort *" count="1"/>
        <glx rop="52"/>
    </function>

    <function name="TexCoord2d" offset="102" vectorequiv="TexCoord2dv">
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
    </function>

    <function name="TexCoord2dv" offset="103">
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="53"/>
    </function>

    <function name="TexCoord2f" offset="104" vectorequiv="TexCoord2fv">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
    </function>

    <function name="TexCoord2fv" offset="105">
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="54"/>
    </function>

    <function name="TexCoord2i" offset="106" vectorequiv="TexCoord2iv">
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
    </function>

    <function name="TexCoord2iv" offset="107">
        <param name="v" type="const GLint *" count="2"/>
        <glx rop="55"/>
    </function>

    <function name="TexCoord2s" offset="108" vectorequiv="TexCoord2sv">
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
    </function>

    <function name="TexCoord2sv" offset="109">
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="56"/>
    </function>

    <function name="TexCoord3d" offset="110" vectorequiv="TexCoord3dv">
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
    </function>

    <function name="TexCoord3dv" offset="111">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="57"/>
    </function>

    <function name="TexCoord3f" offset="112" vectorequiv="TexCoord3fv">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
    </function>

    <function name="TexCoord3fv" offset="113">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="58"/>
    </function>

    <function name="TexCoord3i" offset="114" vectorequiv="TexCoord3iv">
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
    </function>

    <function name="TexCoord3iv" offset="115">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="59"/>
    </function>

    <function name="TexCoord3s" offset="116" vectorequiv="TexCoord3sv">
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
    </function>

    <function name="TexCoord3sv" offset="117">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="60"/>
    </function>

    <function name="TexCoord4d" offset="118" vectorequiv="TexCoord4dv">
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
        <param name="q" type="GLdouble"/>
    </function>

    <function name="TexCoord4dv" offset="119">
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="61"/>
    </function>

    <function name="TexCoord4f" offset="120" vectorequiv="TexCoord4fv">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="q" type="GLfloat"/>
    </function>

    <function name="TexCoord4fv" offset="121">
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="62"/>
    </function>

    <function name="TexCoord4i" offset="122" vectorequiv="TexCoord4iv">
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
        <param name="q" type="GLint"/>
    </function>

    <function name="TexCoord4iv" offset="123">
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="63"/>
    </function>

    <function name="TexCoord4s" offset="124" vectorequiv="TexCoord4sv">
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
        <param name="q" type="GLshort"/>
    </function>

    <function name="TexCoord4sv" offset="125">
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="64"/>
    </function>

    <function name="Vertex2d" offset="126" vectorequiv="Vertex2dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="Vertex2dv" offset="127">
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="65"/>
    </function>

    <function name="Vertex2f" offset="128" vectorequiv="Vertex2fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="Vertex2fv" offset="129">
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="66"/>
    </function>

    <function name="Vertex2i" offset="130" vectorequiv="Vertex2iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
    </function>

    <function name="Vertex2iv" offset="131">
        <param name="v" type="const GLint *" count="2"/>
        <glx rop="67"/>
    </function>

    <function name="Vertex2s" offset="132" vectorequiv="Vertex2sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="Vertex2sv" offset="133">
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="68"/>
    </function>

    <function name="Vertex3d" offset="134" vectorequiv="Vertex3dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="Vertex3dv" offset="135">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="69"/>
    </function>

    <function name="Vertex3f" offset="136" vectorequiv="Vertex3fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="Vertex3fv" offset="137">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="70"/>
    </function>

    <function name="Vertex3i" offset="138" vectorequiv="Vertex3iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
    </function>

    <function name="Vertex3iv" offset="139">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="71"/>
    </function>

    <function name="Vertex3s" offset="140" vectorequiv="Vertex3sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="Vertex3sv" offset="141">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="72"/>
    </function>

    <function name="Vertex4d" offset="142" vectorequiv="Vertex4dv">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="Vertex4dv" offset="143">
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="73"/>
    </function>

    <function name="Vertex4f" offset="144" vectorequiv="Vertex4fv">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="Vertex4fv" offset="145">
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="74"/>
    </function>

    <function name="Vertex4i" offset="146" vectorequiv="Vertex4iv">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
        <param name="w" type="GLint"/>
    </function>

    <function name="Vertex4iv" offset="147">
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="75"/>
    </function>

    <function name="Vertex4s" offset="148" vectorequiv="Vertex4sv">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
    </function>

    <function name="Vertex4sv" offset="149">
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="76"/>
    </function>

    <function name="ClipPlane" offset="150">
        <param name="plane" type="GLenum"/>
        <param name="equation" type="const GLdouble *" count="4"/>
        <glx rop="77"/>
    </function>

    <function name="ColorMaterial" offset="151">
        <param name="face" type="GLenum"/>
        <param name="mode" type="GLenum"/>
        <glx rop="78"/>
    </function>

    <function name="CullFace" offset="152">
        <param name="mode" type="GLenum"/>
        <glx rop="79"/>
    </function>

    <function name="Fogf" offset="153">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="80"/>
    </function>

    <function name="Fogfv" offset="154">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="81"/>
    </function>

    <function name="Fogi" offset="155">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="82"/>
    </function>

    <function name="Fogiv" offset="156">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="83"/>
    </function>

    <function name="FrontFace" offset="157">
        <param name="mode" type="GLenum"/>
        <glx rop="84"/>
    </function>

    <function name="Hint" offset="158">
        <param name="target" type="GLenum"/>
        <param name="mode" type="GLenum"/>
        <glx rop="85"/>
    </function>

    <function name="Lightf" offset="159">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="86"/>
    </function>

    <function name="Lightfv" offset="160">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="87"/>
    </function>

    <function name="Lighti" offset="161">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="88"/>
    </function>

    <function name="Lightiv" offset="162">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="89"/>
    </function>

    <function name="LightModelf" offset="163">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="90"/>
    </function>

    <function name="LightModelfv" offset="164">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="91"/>
    </function>

    <function name="LightModeli" offset="165">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="92"/>
    </function>

    <function name="LightModeliv" offset="166">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="93"/>
    </function>

    <function name="LineStipple" offset="167">
        <param name="factor" type="GLint"/>
        <param name="pattern" type="GLushort"/>
        <glx rop="94"/>
    </function>

    <function name="LineWidth" offset="168">
        <param name="width" type="GLfloat"/>
        <glx rop="95"/>
    </function>

    <function name="Materialf" offset="169">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="96"/>
    </function>

    <function name="Materialfv" offset="170">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="97"/>
    </function>

    <function name="Materiali" offset="171">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="98"/>
    </function>

    <function name="Materialiv" offset="172">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="99"/>
    </function>

    <function name="PointSize" offset="173">
        <param name="size" type="GLfloat"/>
        <glx rop="100"/>
    </function>

    <function name="PolygonMode" offset="174">
        <param name="face" type="GLenum"/>
        <param name="mode" type="GLenum"/>
        <glx rop="101"/>
    </function>

    <function name="PolygonStipple" offset="175">
        <param name="mask" type="const GLubyte *" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
        <glx rop="102"/>
    </function>

    <function name="Scissor" offset="176">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <glx rop="103"/>
    </function>

    <function name="ShadeModel" offset="177">
        <param name="mode" type="GLenum"/>
        <glx rop="104"/>
    </function>

    <function name="TexParameterf" offset="178">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="105"/>
    </function>

    <function name="TexParameterfv" offset="179">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="106"/>
    </function>

    <function name="TexParameteri" offset="180">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="107"/>
    </function>

    <function name="TexParameteriv" offset="181">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="108"/>
    </function>

    <function name="TexImage1D" offset="182">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
        <glx rop="109" large="true"/>
    </function>

    <function name="TexImage2D" offset="183">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
        <glx rop="110" large="true"/>
    </function>

    <function name="TexEnvf" offset="184">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="111"/>
    </function>

    <function name="TexEnvfv" offset="185">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="112"/>
    </function>

    <function name="TexEnvi" offset="186">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="113"/>
    </function>

    <function name="TexEnviv" offset="187">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="114"/>
    </function>

    <function name="TexGend" offset="188">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLdouble"/>
        <glx rop="115"/>
    </function>

    <function name="TexGendv" offset="189">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLdouble *" variable_param="pname"/>
        <glx rop="116"/>
    </function>

    <function name="TexGenf" offset="190">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="117"/>
    </function>

    <function name="TexGenfv" offset="191">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="118"/>
    </function>

    <function name="TexGeni" offset="192">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="119"/>
    </function>

    <function name="TexGeniv" offset="193">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="120"/>
    </function>

    <function name="FeedbackBuffer" offset="194">
        <param name="size" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <param name="buffer" type="GLfloat *" output="true"/>
        <glx sop="105" handcode="true"/>
    </function>

    <function name="SelectBuffer" offset="195">
        <param name="size" type="GLsizei"/>
        <param name="buffer" type="GLuint *" output="true"/>
        <glx sop="106" handcode="true"/>
    </function>

    <function name="RenderMode" offset="196">
        <param name="mode" type="GLenum"/>
        <return type="GLint"/>
        <glx sop="107" handcode="true"/>
    </function>

    <function name="InitNames" offset="197">
        <glx rop="121"/>
    </function>

    <function name="LoadName" offset="198">
        <param name="name" type="GLuint"/>
        <glx rop="122"/>
    </function>

    <function name="PassThrough" offset="199">
        <param name="token" type="GLfloat"/>
        <glx rop="123"/>
    </function>

    <function name="PopName" offset="200">
        <glx rop="124"/>
    </function>

    <function name="PushName" offset="201">
        <param name="name" type="GLuint"/>
        <glx rop="125"/>
    </function>

    <function name="DrawBuffer" offset="202">
        <param name="mode" type="GLenum"/>
        <glx rop="126"/>
    </function>

    <function name="Clear" offset="203">
        <param name="mask" type="GLbitfield"/>
        <glx rop="127"/>
    </function>

    <function name="ClearAccum" offset="204">
        <param name="red" type="GLfloat"/>
        <param name="green" type="GLfloat"/>
        <param name="blue" type="GLfloat"/>
        <param name="alpha" type="GLfloat"/>
        <glx rop="128"/>
    </function>

    <function name="ClearIndex" offset="205">
        <param name="c" type="GLfloat"/>
        <glx rop="129"/>
    </function>

    <function name="ClearColor" offset="206">
        <param name="red" type="GLclampf"/>
        <param name="green" type="GLclampf"/>
        <param name="blue" type="GLclampf"/>
        <param name="alpha" type="GLclampf"/>
        <glx rop="130"/>
    </function>

    <function name="ClearStencil" offset="207">
        <param name="s" type="GLint"/>
        <glx rop="131"/>
    </function>

    <function name="ClearDepth" offset="208">
        <param name="depth" type="GLclampd"/>
        <glx rop="132"/>
    </function>

    <function name="StencilMask" offset="209">
        <param name="mask" type="GLuint"/>
        <glx rop="133"/>
    </function>

    <function name="ColorMask" offset="210">
        <param name="red" type="GLboolean"/>
        <param name="green" type="GLboolean"/>
        <param name="blue" type="GLboolean"/>
        <param name="alpha" type="GLboolean"/>
        <glx rop="134"/>
    </function>

    <function name="DepthMask" offset="211">
        <param name="flag" type="GLboolean"/>
        <glx rop="135"/>
    </function>

    <function name="IndexMask" offset="212">
        <param name="mask" type="GLuint"/>
        <glx rop="136"/>
    </function>

    <function name="Accum" offset="213">
        <param name="op" type="GLenum"/>
        <param name="value" type="GLfloat"/>
        <glx rop="137"/>
    </function>

    <function name="Disable" offset="214">
        <param name="cap" type="GLenum"/>
        <glx rop="138" handcode="client"/>
    </function>

    <function name="Enable" offset="215">
        <param name="cap" type="GLenum"/>
        <glx rop="139" handcode="client"/>
    </function>

    <function name="Finish" offset="216">
        <glx sop="108" handcode="true"/>
    </function>

    <function name="Flush" offset="217">
        <glx sop="142" handcode="true"/>
    </function>

    <function name="PopAttrib" offset="218">
        <glx rop="141"/>
    </function>

    <function name="PushAttrib" offset="219">
        <param name="mask" type="GLbitfield"/>
        <glx rop="142"/>
    </function>

    <function name="Map1d" offset="220">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLdouble"/>
        <param name="u2" type="GLdouble"/>
        <param name="stride" type="GLint" client_only="true"/>
        <param name="order" type="GLint"/>
        <param name="points" type="const GLdouble *" variable_param="order"/>
        <glx rop="143" handcode="true"/>
    </function>

    <function name="Map1f" offset="221">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLfloat"/>
        <param name="u2" type="GLfloat"/>
        <param name="stride" type="GLint" client_only="true"/>
        <param name="order" type="GLint"/>
        <param name="points" type="const GLfloat *" variable_param="order"/>
        <glx rop="144" handcode="true"/>
    </function>

    <function name="Map2d" offset="222">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLdouble"/>
        <param name="u2" type="GLdouble"/>
        <param name="ustride" type="GLint" client_only="true"/>
        <param name="uorder" type="GLint"/>
        <param name="v1" type="GLdouble"/>
        <param name="v2" type="GLdouble"/>
        <param name="vstride" type="GLint" client_only="true"/>
        <param name="vorder" type="GLint"/>
        <param name="points" type="const GLdouble *" variable_param="uorder"/>
        <glx rop="145" handcode="true"/>
    </function>

    <function name="Map2f" offset="223">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLfloat"/>
        <param name="u2" type="GLfloat"/>
        <param name="ustride" type="GLint" client_only="true"/>
        <param name="uorder" type="GLint"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <param name="vstride" type="GLint" client_only="true"/>
        <param name="vorder" type="GLint"/>
        <param name="points" type="const GLfloat *" variable_param="uorder"/>
        <glx rop="146" handcode="true"/>
    </function>

    <function name="MapGrid1d" offset="224">
        <param name="un" type="GLint"/>
        <param name="u1" type="GLdouble"/>
        <param name="u2" type="GLdouble"/>
        <glx rop="147"/>
    </function>

    <function name="MapGrid1f" offset="225">
        <param name="un" type="GLint"/>
        <param name="u1" type="GLfloat"/>
        <param name="u2" type="GLfloat"/>
        <glx rop="148"/>
    </function>

    <function name="MapGrid2d" offset="226">
        <param name="un" type="GLint"/>
        <param name="u1" type="GLdouble"/>
        <param name="u2" type="GLdouble"/>
        <param name="vn" type="GLint"/>
        <param name="v1" type="GLdouble"/>
        <param name="v2" type="GLdouble"/>
        <glx rop="149"/>
    </function>

    <function name="MapGrid2f" offset="227">
        <param name="un" type="GLint"/>
        <param name="u1" type="GLfloat"/>
        <param name="u2" type="GLfloat"/>
        <param name="vn" type="GLint"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <glx rop="150"/>
    </function>

    <function name="EvalCoord1d" offset="228" vectorequiv="EvalCoord1dv">
        <param name="u" type="GLdouble"/>
    </function>

    <function name="EvalCoord1dv" offset="229">
        <param name="u" type="const GLdouble *" count="1"/>
        <glx rop="151"/>
    </function>

    <function name="EvalCoord1f" offset="230" vectorequiv="EvalCoord1fv">
        <param name="u" type="GLfloat"/>
    </function>

    <function name="EvalCoord1fv" offset="231">
        <param name="u" type="const GLfloat *" count="1"/>
        <glx rop="152"/>
    </function>

    <function name="EvalCoord2d" offset="232" vectorequiv="EvalCoord2dv">
        <param name="u" type="GLdouble"/>
        <param name="v" type="GLdouble"/>
    </function>

    <function name="EvalCoord2dv" offset="233">
        <param name="u" type="const GLdouble *" count="2"/>
        <glx rop="153"/>
    </function>

    <function name="EvalCoord2f" offset="234" vectorequiv="EvalCoord2fv">
        <param name="u" type="GLfloat"/>
        <param name="v" type="GLfloat"/>
    </function>

    <function name="EvalCoord2fv" offset="235">
        <param name="u" type="const GLfloat *" count="2"/>
        <glx rop="154"/>
    </function>

    <function name="EvalMesh1" offset="236">
        <param name="mode" type="GLenum"/>
        <param name="i1" type="GLint"/>
        <param name="i2" type="GLint"/>
        <glx rop="155"/>
    </function>

    <function name="EvalPoint1" offset="237">
        <param name="i" type="GLint"/>
        <glx rop="156"/>
    </function>

    <function name="EvalMesh2" offset="238">
        <param name="mode" type="GLenum"/>
        <param name="i1" type="GLint"/>
        <param name="i2" type="GLint"/>
        <param name="j1" type="GLint"/>
        <param name="j2" type="GLint"/>
        <glx rop="157"/>
    </function>

    <function name="EvalPoint2" offset="239">
        <param name="i" type="GLint"/>
        <param name="j" type="GLint"/>
        <glx rop="158"/>
    </function>

    <function name="AlphaFunc" offset="240">
        <param name="func" type="GLenum"/>
        <param name="ref" type="GLclampf"/>
        <glx rop="159"/>
    </function>

    <function name="BlendFunc" offset="241">
        <param name="sfactor" type="GLenum"/>
        <param name="dfactor" type="GLenum"/>
        <glx rop="160"/>
    </function>

    <function name="LogicOp" offset="242">
        <param name="opcode" type="GLenum"/>
        <glx rop="161"/>
    </function>

    <function name="StencilFunc" offset="243">
        <param name="func" type="GLenum"/>
        <param name="ref" type="GLint"/>
        <param name="mask" type="GLuint"/>
        <glx rop="162"/>
    </function>

    <function name="StencilOp" offset="244">
        <param name="fail" type="GLenum"/>
        <param name="zfail" type="GLenum"/>
        <param name="zpass" type="GLenum"/>
        <glx rop="163"/>
    </function>

    <function name="DepthFunc" offset="245">
        <param name="func" type="GLenum"/>
        <glx rop="164"/>
    </function>

    <function name="PixelZoom" offset="246">
        <param name="xfactor" type="GLfloat"/>
        <param name="yfactor" type="GLfloat"/>
        <glx rop="165"/>
    </function>

    <function name="PixelTransferf" offset="247">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="166"/>
    </function>

    <function name="PixelTransferi" offset="248">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="167"/>
    </function>

    <function name="PixelStoref" offset="249">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx sop="109" handcode="client"/>
    </function>

    <function name="PixelStorei" offset="250">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx sop="110" handcode="client"/>
    </function>

    <function name="PixelMapfv" offset="251">
        <param name="map" type="GLenum"/>
        <param name="mapsize" type="GLsizei" counter="true"/>
        <param name="values" type="const GLfloat *" count="mapsize"/>
        <glx rop="168" large="true"/>
    </function>

    <function name="PixelMapuiv" offset="252">
        <param name="map" type="GLenum"/>
        <param name="mapsize" type="GLsizei" counter="true"/>
        <param name="values" type="const GLuint *" count="mapsize"/>
        <glx rop="169" large="true"/>
    </function>

    <function name="PixelMapusv" offset="253">
        <param name="map" type="GLenum"/>
        <param name="mapsize" type="GLsizei" counter="true"/>
        <param name="values" type="const GLushort *" count="mapsize"/>
        <glx rop="170" large="true"/>
    </function>

    <function name="ReadBuffer" offset="254">
        <param name="mode" type="GLenum"/>
        <glx rop="171"/>
    </function>

    <function name="CopyPixels" offset="255">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <glx rop="172"/>
    </function>

    <function name="ReadPixels" offset="256">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
        <glx sop="111"/>
    </function>

    <function name="DrawPixels" offset="257">
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="0" img_pad_dimensions="false"/>
        <glx rop="173" large="true"/>
    </function>

    <function name="GetBooleanv" offset="258">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
        <glx sop="112" handcode="client"/>
    </function>

    <function name="GetClipPlane" offset="259">
        <param name="plane" type="GLenum"/>
        <param name="equation" type="GLdouble *" output="true" count="4"/>
        <glx sop="113" always_array="true"/>
    </function>

    <function name="GetDoublev" offset="260">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
        <glx sop="114" handcode="client"/>
    </function>

    <function name="GetError" offset="261">
        <return type="GLenum"/>
        <glx sop="115" handcode="client"/>
    </function>

    <function name="GetFloatv" offset="262">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="116" handcode="client"/>
    </function>

    <function name="GetIntegerv" offset="263">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="117" handcode="client"/>
    </function>

    <function name="GetLightfv" offset="264">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="118"/>
    </function>

    <function name="GetLightiv" offset="265">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="119"/>
    </function>

    <function name="GetMapdv" offset="266">
        <param name="target" type="GLenum"/>
        <param name="query" type="GLenum"/>
        <param name="v" type="GLdouble *" output="true" variable_param="target query"/>
        <glx sop="120"/>
    </function>

    <function name="GetMapfv" offset="267">
        <param name="target" type="GLenum"/>
        <param name="query" type="GLenum"/>
        <param name="v" type="GLfloat *" output="true" variable_param="target query"/>
        <glx sop="121"/>
    </function>

    <function name="GetMapiv" offset="268">
        <param name="target" type="GLenum"/>
        <param name="query" type="GLenum"/>
        <param name="v" type="GLint *" output="true" variable_param="target query"/>
        <glx sop="122"/>
    </function>

    <function name="GetMaterialfv" offset="269">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="123"/>
    </function>

    <function name="GetMaterialiv" offset="270">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="124"/>
    </function>

    <function name="GetPixelMapfv" offset="271">
        <param name="map" type="GLenum"/>
        <param name="values" type="GLfloat *" output="true" variable_param="map"/>
        <glx sop="125"/>
    </function>

    <function name="GetPixelMapuiv" offset="272">
        <param name="map" type="GLenum"/>
        <param name="values" type="GLuint *" output="true" variable_param="map"/>
        <glx sop="126"/>
    </function>

    <function name="GetPixelMapusv" offset="273">
        <param name="map" type="GLenum"/>
        <param name="values" type="GLushort *" output="true" variable_param="map"/>
        <glx sop="127"/>
    </function>

    <function name="GetPolygonStipple" offset="274">
        <param name="mask" type="GLubyte *" output="true" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP"/>
        <glx sop="128"/>
    </function>

    <function name="GetString" offset="275">
        <param name="name" type="GLenum"/>
        <return type="const GLubyte *"/>
        <glx sop="129" handcode="true"/>
    </function>

    <function name="GetTexEnvfv" offset="276">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="130"/>
    </function>

    <function name="GetTexEnviv" offset="277">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="131"/>
    </function>

    <function name="GetTexGendv" offset="278">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
        <glx sop="132"/>
    </function>

    <function name="GetTexGenfv" offset="279">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="133"/>
    </function>

    <function name="GetTexGeniv" offset="280">
        <param name="coord" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="134"/>
    </function>

    <function name="GetTexImage" offset="281">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="GLvoid *" output="true" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type"/>
        <glx sop="135" dimensions_in_reply="true"/>
    </function>

    <function name="GetTexParameterfv" offset="282">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="136"/>
    </function>

    <function name="GetTexParameteriv" offset="283">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="137"/>
    </function>

    <function name="GetTexLevelParameterfv" offset="284">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="138"/>
    </function>

    <function name="GetTexLevelParameteriv" offset="285">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="139"/>
    </function>

    <function name="IsEnabled" offset="286">
        <param name="cap" type="GLenum"/>
        <return type="GLboolean"/>
        <glx sop="140" handcode="client"/>
    </function>

    <function name="IsList" offset="287">
        <param name="list" type="GLuint"/>
        <return type="GLboolean"/>
        <glx sop="141"/>
    </function>

    <function name="DepthRange" offset="288">
        <param name="zNear" type="GLclampd"/>
        <param name="zFar" type="GLclampd"/>
        <glx rop="174"/>
    </function>

    <function name="Frustum" offset="289">
        <param name="left" type="GLdouble"/>
        <param name="right" type="GLdouble"/>
        <param name="bottom" type="GLdouble"/>
        <param name="top" type="GLdouble"/>
        <param name="zNear" type="GLdouble"/>
        <param name="zFar" type="GLdouble"/>
        <glx rop="175"/>
    </function>

    <function name="LoadIdentity" offset="290">
        <glx rop="176"/>
    </function>

    <function name="LoadMatrixf" offset="291">
        <param name="m" type="const GLfloat *" count="16"/>
        <glx rop="177"/>
    </function>

    <function name="LoadMatrixd" offset="292">
        <param name="m" type="const GLdouble *" count="16"/>
        <glx rop="178"/>
    </function>

    <function name="MatrixMode" offset="293">
        <param name="mode" type="GLenum"/>
        <glx rop="179"/>
    </function>

    <function name="MultMatrixf" offset="294">
        <param name="m" type="const GLfloat *" count="16"/>
        <glx rop="180"/>
    </function>

    <function name="MultMatrixd" offset="295">
        <param name="m" type="const GLdouble *" count="16"/>
        <glx rop="181"/>
    </function>

    <function name="Ortho" offset="296">
        <param name="left" type="GLdouble"/>
        <param name="right" type="GLdouble"/>
        <param name="bottom" type="GLdouble"/>
        <param name="top" type="GLdouble"/>
        <param name="zNear" type="GLdouble"/>
        <param name="zFar" type="GLdouble"/>
        <glx rop="182"/>
    </function>

    <function name="PopMatrix" offset="297">
        <glx rop="183"/>
    </function>

    <function name="PushMatrix" offset="298">
        <glx rop="184"/>
    </function>

    <function name="Rotated" offset="299">
        <param name="angle" type="GLdouble"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <glx rop="185"/>
    </function>

    <function name="Rotatef" offset="300">
        <param name="angle" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <glx rop="186"/>
    </function>

    <function name="Scaled" offset="301">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <glx rop="187"/>
    </function>

    <function name="Scalef" offset="302">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <glx rop="188"/>
    </function>

    <function name="Translated" offset="303">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <glx rop="189"/>
    </function>

    <function name="Translatef" offset="304">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <glx rop="190"/>
    </function>

    <function name="Viewport" offset="305">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <glx rop="191"/>
    </function>
</category>

<category name="1.1">
    <enum name="INDEX_LOGIC_OP"                           value="0x0BF1"/>
    <enum name="COLOR_LOGIC_OP"                           value="0x0BF2"/>
    <enum name="TEXTURE_INTERNAL_FORMAT"                  value="0x1003"/>
    <enum name="DOUBLE"                                   value="0x140A"/>
    <enum name="POLYGON_OFFSET_UNITS"          count="1"  value="0x2A00">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_OFFSET_POINT"                     value="0x2A01"/>
    <enum name="POLYGON_OFFSET_LINE"                      value="0x2A02"/>
    <enum name="R3_G3_B2"                                 value="0x2A10"/>
    <enum name="V2F"                                      value="0x2A20"/>
    <enum name="V3F"                                      value="0x2A21"/>
    <enum name="C4UB_V2F"                                 value="0x2A22"/>
    <enum name="C4UB_V3F"                                 value="0x2A23"/>
    <enum name="C3F_V3F"                                  value="0x2A24"/>
    <enum name="N3F_V3F"                                  value="0x2A25"/>
    <enum name="C4F_N3F_V3F"                              value="0x2A26"/>
    <enum name="T2F_V3F"                                  value="0x2A27"/>
    <enum name="T4F_V4F"                                  value="0x2A28"/>
    <enum name="T2F_C4UB_V3F"                             value="0x2A29"/>
    <enum name="T2F_C3F_V3F"                              value="0x2A2A"/>
    <enum name="T2F_N3F_V3F"                              value="0x2A2B"/>
    <enum name="T2F_C4F_N3F_V3F"                          value="0x2A2C"/>
    <enum name="T4F_C4F_N3F_V4F"                          value="0x2A2D"/>
    <enum name="POLYGON_OFFSET_FILL"                      value="0x8037"/>
    <enum name="POLYGON_OFFSET_FACTOR"         count="1"  value="0x8038">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POLYGON_OFFSET_BIAS"                      value="0x8039"/>
    <enum name="ALPHA4"                                   value="0x803B"/>
    <enum name="ALPHA8"                                   value="0x803C"/>
    <enum name="ALPHA12"                                  value="0x803D"/>
    <enum name="ALPHA16"                                  value="0x803E"/>
    <enum name="LUMINANCE4"                               value="0x803F"/>
    <enum name="LUMINANCE8"                               value="0x8040"/>
    <enum name="LUMINANCE12"                              value="0x8041"/>
    <enum name="LUMINANCE16"                              value="0x8042"/>
    <enum name="LUMINANCE4_ALPHA4"                        value="0x8043"/>
    <enum name="LUMINANCE6_ALPHA2"                        value="0x8044"/>
    <enum name="LUMINANCE8_ALPHA8"                        value="0x8045"/>
    <enum name="LUMINANCE12_ALPHA4"                       value="0x8046"/>
    <enum name="LUMINANCE12_ALPHA12"                      value="0x8047"/>
    <enum name="LUMINANCE16_ALPHA16"                      value="0x8048"/>
    <enum name="INTENSITY"                                value="0x8049"/>
    <enum name="INTENSITY4"                               value="0x804A"/>
    <enum name="INTENSITY8"                               value="0x804B"/>
    <enum name="INTENSITY12"                              value="0x804C"/>
    <enum name="INTENSITY16"                              value="0x804D"/>
    <enum name="RGB4"                                     value="0x804F"/>
    <enum name="RGB5"                                     value="0x8050"/>
    <enum name="RGB8"                                     value="0x8051"/>
    <enum name="RGB10"                                    value="0x8052"/>
    <enum name="RGB12"                                    value="0x8053"/>
    <enum name="RGB16"                                    value="0x8054"/>
    <enum name="RGBA2"                                    value="0x8055"/>
    <enum name="RGBA4"                                    value="0x8056"/>
    <enum name="RGB5_A1"                                  value="0x8057"/>
    <enum name="RGBA8"                                    value="0x8058"/>
    <enum name="RGB10_A2"                                 value="0x8059"/>
    <enum name="RGBA12"                                   value="0x805A"/>
    <enum name="RGBA16"                                   value="0x805B"/>
    <enum name="TEXTURE_RED_SIZE"              count="1"  value="0x805C">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_GREEN_SIZE"            count="1"  value="0x805D">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BLUE_SIZE"             count="1"  value="0x805E">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_ALPHA_SIZE"            count="1"  value="0x805F">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_LUMINANCE_SIZE"        count="1"  value="0x8060">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_INTENSITY_SIZE"        count="1"  value="0x8061">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="PROXY_TEXTURE_1D"                         value="0x8063"/>
    <enum name="PROXY_TEXTURE_2D"                         value="0x8064"/>
    <enum name="TEXTURE_PRIORITY"              count="1"  value="0x8066">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_RESIDENT"              count="1"  value="0x8067">
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_1D"            count="1"  value="0x8068">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_2D"            count="1"  value="0x8069">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY"                  count="1"  value="0x8074">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NORMAL_ARRAY"                  count="1"  value="0x8075">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_ARRAY"                   count="1"  value="0x8076">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_ARRAY"                   count="1"  value="0x8077">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COORD_ARRAY"           count="1"  value="0x8078">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="EDGE_FLAG_ARRAY"               count="1"  value="0x8079">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY_SIZE"             count="1"  value="0x807A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY_TYPE"             count="1"  value="0x807B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY_STRIDE"           count="1"  value="0x807C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NORMAL_ARRAY_TYPE"             count="1"  value="0x807E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NORMAL_ARRAY_STRIDE"           count="1"  value="0x807F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_ARRAY_SIZE"              count="1"  value="0x8081">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_ARRAY_TYPE"              count="1"  value="0x8082">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_ARRAY_STRIDE"            count="1"  value="0x8083">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_ARRAY_TYPE"              count="1"  value="0x8085">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_ARRAY_STRIDE"            count="1"  value="0x8086">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COORD_ARRAY_SIZE"      count="1"  value="0x8088">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COORD_ARRAY_TYPE"      count="1"  value="0x8089">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COORD_ARRAY_STRIDE"    count="1"  value="0x808A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="EDGE_FLAG_ARRAY_STRIDE"        count="1"  value="0x808C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY_POINTER"                     value="0x808E"/>
    <enum name="NORMAL_ARRAY_POINTER"                     value="0x808F"/>
    <enum name="COLOR_ARRAY_POINTER"                      value="0x8090"/>
    <enum name="INDEX_ARRAY_POINTER"                      value="0x8091"/>
    <enum name="TEXTURE_COORD_ARRAY_POINTER"              value="0x8092"/>
    <enum name="EDGE_FLAG_ARRAY_POINTER"                  value="0x8093"/>
    <enum name="CLIENT_PIXEL_STORE_BIT"                   value="0x00000001"/>
    <enum name="CLIENT_VERTEX_ARRAY_BIT"                  value="0x00000002"/>
    <enum name="ALL_CLIENT_ATTRIB_BITS"                   value="0xFFFFFFFF"/>
    <enum name="CLIENT_ALL_ATTRIB_BITS"                   value="0xFFFFFFFF"/>

    <function name="ArrayElement" offset="306">
        <param name="i" type="GLint"/>
        <glx handcode="true"/>
    </function>

    <function name="ColorPointer" offset="308">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="DisableClientState" offset="309">
        <param name="array" type="GLenum"/>
        <glx handcode="true"/>
    </function>

    <function name="DrawArrays" offset="310">
        <param name="mode" type="GLenum"/>
        <param name="first" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <glx rop="193" handcode="true"/>
    </function>

    <function name="DrawElements" offset="311">
        <param name="mode" type="GLenum"/>
        <param name="count" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="EdgeFlagPointer" offset="312">
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="EnableClientState" offset="313">
        <param name="array" type="GLenum"/>
        <glx handcode="true"/>
    </function>

    <function name="GetPointerv" offset="329">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLvoid **" output="true"/>
        <glx handcode="true"/>
    </function>

    <function name="IndexPointer" offset="314">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="InterleavedArrays" offset="317">
        <param name="format" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="NormalPointer" offset="318">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="TexCoordPointer" offset="320">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="VertexPointer" offset="321">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="PolygonOffset" offset="319">
        <param name="factor" type="GLfloat"/>
        <param name="units" type="GLfloat"/>
        <glx rop="192"/>
    </function>

    <function name="CopyTexImage1D" offset="323">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <glx rop="4119"/>
    </function>

    <function name="CopyTexImage2D" offset="324">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <glx rop="4120"/>
    </function>

    <function name="CopyTexSubImage1D" offset="325">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <glx rop="4121"/>
    </function>

    <function name="CopyTexSubImage2D" offset="326">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <glx rop="4122"/>
    </function>

    <function name="TexSubImage1D" offset="332">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_xoff="xoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="4099" large="true"/>
    </function>

    <function name="TexSubImage2D" offset="333">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="4100" large="true"/>
    </function>

    <function name="AreTexturesResident" offset="322">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="const GLuint *" count="n"/>
        <param name="residences" type="GLboolean *" output="true" count="n"/>
        <return type="GLboolean"/>
        <glx sop="143" handcode="client" always_array="true"/>
    </function>

    <function name="BindTexture" offset="307">
        <param name="target" type="GLenum"/>
        <param name="texture" type="GLuint"/>
        <glx rop="4117"/>
    </function>

    <function name="DeleteTextures" offset="327">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="const GLuint *" count="n"/>
        <glx sop="144"/>
    </function>

    <function name="GenTextures" offset="328">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="GLuint *" output="true" count="n"/>
        <glx sop="145" always_array="true"/>
    </function>

    <function name="IsTexture" offset="330">
        <param name="texture" type="GLuint"/>
        <return type="GLboolean"/>
        <glx sop="146"/>
    </function>

    <function name="PrioritizeTextures" offset="331">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="const GLuint *" count="n"/>
        <param name="priorities" type="const GLclampf *" count="n"/>
        <glx rop="4118"/>
    </function>

    <function name="Indexub" offset="315" vectorequiv="Indexubv">
        <param name="c" type="GLubyte"/>
    </function>

    <function name="Indexubv" offset="316">
        <param name="c" type="const GLubyte *" count="1"/>
        <glx rop="194"/>
    </function>

    <function name="PopClientAttrib" offset="334">
        <glx handcode="true"/>
    </function>

    <function name="PushClientAttrib" offset="335">
        <param name="mask" type="GLbitfield"/>
        <glx handcode="true"/>
    </function>
</category>

<category name="1.2">
    <enum name="UNSIGNED_BYTE_3_3_2"                      value="0x8032"/>
    <enum name="UNSIGNED_SHORT_4_4_4_4"                   value="0x8033"/>
    <enum name="UNSIGNED_SHORT_5_5_5_1"                   value="0x8034"/>
    <enum name="UNSIGNED_INT_8_8_8_8"                     value="0x8035"/>
    <enum name="UNSIGNED_INT_10_10_10_2"                  value="0x8036"/>
    <enum name="RESCALE_NORMAL"                count="1"  value="0x803A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_3D"            count="1"  value="0x806A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_SKIP_IMAGES"              count="1"  value="0x806B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PACK_IMAGE_HEIGHT"             count="1"  value="0x806C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_SKIP_IMAGES"            count="1"  value="0x806D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNPACK_IMAGE_HEIGHT"           count="1"  value="0x806E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_3D"                    count="1"  value="0x806F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROXY_TEXTURE_3D"                         value="0x8070"/>
    <enum name="TEXTURE_DEPTH"                 count="1"  value="0x8071">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_WRAP_R"                count="1"  value="0x8072">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="MAX_3D_TEXTURE_SIZE"           count="1"  value="0x8073">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="UNSIGNED_BYTE_2_3_3_REV"                  value="0x8362"/>
    <enum name="UNSIGNED_SHORT_5_6_5"                     value="0x8363"/>
    <enum name="UNSIGNED_SHORT_5_6_5_REV"                 value="0x8364"/>
    <enum name="UNSIGNED_SHORT_4_4_4_4_REV"               value="0x8365"/>
    <enum name="UNSIGNED_SHORT_1_5_5_5_REV"               value="0x8366"/>
    <enum name="UNSIGNED_INT_8_8_8_8_REV"                 value="0x8367"/>
    <enum name="UNSIGNED_INT_2_10_10_10_REV"              value="0x8368"/>
    <enum name="BGR"                                      value="0x80E0"/>
    <enum name="BGRA"                                     value="0x80E1"/>
    <enum name="MAX_ELEMENTS_VERTICES"         count="1"  value="0x80E8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_ELEMENTS_INDICES"          count="1"  value="0x80E9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLAMP_TO_EDGE"                            value="0x812F"/>
    <enum name="TEXTURE_MIN_LOD"               count="1"  value="0x813A">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_MAX_LOD"               count="1"  value="0x813B">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BASE_LEVEL"            count="1"  value="0x813C">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_MAX_LEVEL"             count="1"  value="0x813D">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="LIGHT_MODEL_COLOR_CONTROL"     count="1"  value="0x81F8">
        <size name="LightModelfv"/>
        <size name="LightModeliv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SINGLE_COLOR"                             value="0x81F9"/>
    <enum name="SEPARATE_SPECULAR_COLOR"                  value="0x81FA"/>
    <enum name="SMOOTH_POINT_SIZE_RANGE"       count="2"  value="0x0B12">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SMOOTH_POINT_SIZE_GRANULARITY" count="1"  value="0x0B13">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SMOOTH_LINE_WIDTH_RANGE"       count="2"  value="0x0B22">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SMOOTH_LINE_WIDTH_GRANULARITY" count="1"  value="0x0B23">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALIASED_POINT_SIZE_RANGE"      count="2"  value="0x846D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ALIASED_LINE_WIDTH_RANGE"      count="2"  value="0x846E">
        <size name="Get" mode="get"/>
    </enum>

    <!-- These enums are actually part of the ARB_imaging subset. -->

    <enum name="CONSTANT_COLOR"                           value="0x8001"/>
    <enum name="ONE_MINUS_CONSTANT_COLOR"                 value="0x8002"/>
    <enum name="CONSTANT_ALPHA"                           value="0x8003"/>
    <enum name="ONE_MINUS_CONSTANT_ALPHA"                 value="0x8004"/>
    <enum name="BLEND_COLOR"                   count="4"  value="0x8005">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FUNC_ADD"                                 value="0x8006"/>
    <enum name="MIN"                                      value="0x8007"/>
    <enum name="MAX"                                      value="0x8008"/>
    <enum name="BLEND_EQUATION"                count="1"  value="0x8009">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FUNC_SUBTRACT"                            value="0x800A"/>
    <enum name="FUNC_REVERSE_SUBTRACT"                    value="0x800B"/>
    <enum name="CONVOLUTION_1D"                count="1"  value="0x8010">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_2D"                count="1"  value="0x8011">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SEPARABLE_2D"                  count="1"  value="0x8012">
        <size name="Get" mode="get"/>
    </enum>

    <enum name="CONVOLUTION_BORDER_MODE"       count="1"  value="0x8013">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_BORDER_COLOR"      count="4"  value="0x8154">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_FILTER_SCALE"      count="4"  value="0x8014">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_FILTER_BIAS"       count="4"  value="0x8015">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="REDUCE"                                   value="0x8016"/>
    <enum name="CONVOLUTION_FORMAT"            count="1"  value="0x8017">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_WIDTH"             count="1"  value="0x8018">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_HEIGHT"            count="1"  value="0x8019">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="MAX_CONVOLUTION_WIDTH"         count="1"  value="0x801A">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_CONVOLUTION_HEIGHT"        count="1"  value="0x801B">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_RED_SCALE"    count="1"  value="0x801C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_GREEN_SCALE"  count="1"  value="0x801D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_BLUE_SCALE"   count="1"  value="0x801E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_ALPHA_SCALE"  count="1"  value="0x801F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_RED_BIAS"     count="1"  value="0x8020">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_GREEN_BIAS"   count="1"  value="0x8021">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_BLUE_BIAS"    count="1"  value="0x8022">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_ALPHA_BIAS"   count="1"  value="0x8023">
        <size name="Get" mode="get"/>
    </enum>

    <enum name="HISTOGRAM"                     count="1"  value="0x8024">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROXY_HISTOGRAM"                          value="0x8025"/>
    <enum name="HISTOGRAM_WIDTH"               count="1"  value="0x8026">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_FORMAT"              count="1"  value="0x8027">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_RED_SIZE"            count="1"  value="0x8028">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_GREEN_SIZE"          count="1"  value="0x8029">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_BLUE_SIZE"           count="1"  value="0x802A">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_ALPHA_SIZE"          count="1"  value="0x802B">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_LUMINANCE_SIZE"      count="1"  value="0x802C">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_SINK"                count="1"  value="0x802D">
        <size name="GetHistogramParameterfv" mode="get"/>
        <size name="GetHistogramParameteriv" mode="get"/>
    </enum>
    <enum name="MINMAX"                        count="1"  value="0x802E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MINMAX_FORMAT"                 count="1"  value="0x802F">
        <size name="GetMinmaxParameterfv" mode="get"/>
        <size name="GetMinmaxParameteriv" mode="get"/>
    </enum>
    <enum name="MINMAX_SINK"                   count="1"  value="0x8030">
        <size name="GetMinmaxParameterfv" mode="get"/>
        <size name="GetMinmaxParameteriv" mode="get"/>
    </enum>

    <enum name="COLOR_MATRIX"                  count="16" value="0x80B1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_MATRIX_STACK_DEPTH"      count="1"  value="0x80B2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH"  count="1"  value="0x80B3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_RED_SCALE"   count="1"  value="0x80B4">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_GREEN_SCALE" count="1"  value="0x80B5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_BLUE_SCALE"  count="1"  value="0x80B6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE" count="1"  value="0x80B7">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_RED_BIAS"    count="1"  value="0x80B8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_GREEN_BIAS"  count="1"  value="0x80B9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_BLUE_BIAS"   count="1"  value="0x80BA">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS"  count="1"  value="0x80BB">
        <size name="Get" mode="get"/>
    </enum>

    <enum name="COLOR_TABLE"                   count="1"  value="0x80D0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_COLOR_TABLE"  count="1"  value="0x80D1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_COLOR_MATRIX_COLOR_TABLE" count="1"  value="0x80D2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROXY_COLOR_TABLE"                              value="0x80D3"/>
    <enum name="PROXY_POST_CONVOLUTION_COLOR_TABLE"             value="0x80D4"/>
    <enum name="PROXY_POST_COLOR_MATRIX_COLOR_TABLE"            value="0x80D5"/>

    <enum name="COLOR_TABLE_SCALE"             count="4"  value="0x80D6">
        <size name="ColorTableParameterfv"/>
        <size name="ColorTableParameteriv"/>
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_BIAS"              count="4"  value="0x80D7">
        <size name="ColorTableParameterfv"/>
        <size name="ColorTableParameteriv"/>
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_FORMAT"            count="1"  value="0x80D8">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_WIDTH"             count="1"  value="0x80D9">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_RED_SIZE"          count="1"  value="0x80DA">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_GREEN_SIZE"        count="1"  value="0x80DB">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_BLUE_SIZE"         count="1"  value="0x80DC">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_ALPHA_SIZE"        count="1"  value="0x80DD">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_LUMINANCE_SIZE"    count="1"  value="0x80DE">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_INTENSITY_SIZE"    count="1"  value="0x80DF">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>


    <function name="BlendColor" offset="336">
        <param name="red" type="GLclampf"/>
        <param name="green" type="GLclampf"/>
        <param name="blue" type="GLclampf"/>
        <param name="alpha" type="GLclampf"/>
        <glx rop="4096"/>
    </function>

    <function name="BlendEquation" offset="337">
        <param name="mode" type="GLenum"/>
        <glx rop="4097"/>
    </function>

    <function name="DrawRangeElements" offset="338">
        <param name="mode" type="GLenum"/>
        <param name="start" type="GLuint"/>
        <param name="end" type="GLuint"/>
        <param name="count" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="ColorTable" offset="339">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="const GLvoid *" img_width="width" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
        <glx rop="2053" large="true"/>
    </function>

    <function name="ColorTableParameterfv" offset="340">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="2054"/>
    </function>

    <function name="ColorTableParameteriv" offset="341">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="2055"/>
    </function>

    <function name="CopyColorTable" offset="342">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <glx rop="2056"/>
    </function>

    <function name="GetColorTable" offset="343">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
        <glx sop="147" dimensions_in_reply="true"/>
    </function>

    <function name="GetColorTableParameterfv" offset="344">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="148"/>
    </function>

    <function name="GetColorTableParameteriv" offset="345">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="149"/>
    </function>

    <function name="ColorSubTable" offset="346">
        <param name="target" type="GLenum"/>
        <param name="start" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="data" type="const GLvoid *" img_width="count" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
        <glx rop="195" large="true"/>
    </function>

    <function name="CopyColorSubTable" offset="347">
        <param name="target" type="GLenum"/>
        <param name="start" type="GLsizei"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <glx rop="196"/>
    </function>

    <function name="ConvolutionFilter1D" offset="348">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="4101" large="true"/>
    </function>

    <function name="ConvolutionFilter2D" offset="349">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="4102" large="true"/>
    </function>

    <function name="ConvolutionParameterf" offset="350">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat"/>
        <glx rop="4103"/>
    </function>

    <function name="ConvolutionParameterfv" offset="351">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="4104"/>
    </function>

    <function name="ConvolutionParameteri" offset="352">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint"/>
        <glx rop="4105"/>
    </function>

    <function name="ConvolutionParameteriv" offset="353">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="4106"/>
    </function>

    <function name="CopyConvolutionFilter1D" offset="354">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <glx rop="4107"/>
    </function>

    <function name="CopyConvolutionFilter2D" offset="355">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <glx rop="4108"/>
    </function>

    <function name="GetConvolutionFilter" offset="356">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
        <glx sop="150" dimensions_in_reply="true"/>
    </function>

    <function name="GetConvolutionParameterfv" offset="357">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="151"/>
    </function>

    <function name="GetConvolutionParameteriv" offset="358">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="152"/>
    </function>

    <function name="GetSeparableFilter" offset="359">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="row" type="GLvoid *" output="true"/>
        <param name="column" type="GLvoid *" output="true"/>
        <param name="span" type="GLvoid *" output="true"/>
        <glx sop="153" handcode="true"/>
    </function>

    <function name="SeparableFilter2D" offset="360">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="row" type="const GLvoid *"/>
        <param name="column" type="const GLvoid *"/>
        <glx rop="4109" handcode="true"/>
    </function>

    <function name="GetHistogram" offset="361">
        <param name="target" type="GLenum"/>
        <param name="reset" type="GLboolean"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
        <glx sop="154" dimensions_in_reply="true" img_reset="reset"/>
    </function>

    <function name="GetHistogramParameterfv" offset="362">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="155"/>
    </function>

    <function name="GetHistogramParameteriv" offset="363">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="156"/>
    </function>

    <function name="GetMinmax" offset="364">
        <param name="target" type="GLenum"/>
        <param name="reset" type="GLboolean"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
        <glx sop="157" img_reset="reset"/>
    </function>

    <function name="GetMinmaxParameterfv" offset="365">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx sop="158"/>
    </function>

    <function name="GetMinmaxParameteriv" offset="366">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="159"/>
    </function>

    <function name="Histogram" offset="367">
        <param name="target" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="internalformat" type="GLenum"/>
        <param name="sink" type="GLboolean"/>
        <glx rop="4110"/>
    </function>

    <function name="Minmax" offset="368">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="sink" type="GLboolean"/>
        <glx rop="4111"/>
    </function>

    <function name="ResetHistogram" offset="369">
        <param name="target" type="GLenum"/>
        <glx rop="4112"/>
    </function>

    <function name="ResetMinmax" offset="370">
        <param name="target" type="GLenum"/>
        <glx rop="4113"/>
    </function>

    <function name="TexImage3D" offset="371">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
        <glx rop="4114" large="true"/>
    </function>

    <function name="TexSubImage3D" offset="372">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="4115" large="true"/>
    </function>

    <function name="CopyTexSubImage3D" offset="373">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <glx rop="4123"/>
    </function>
</category>

<category name="1.3">
    <enum name="TEXTURE0"                                 value="0x84C0"/>
    <enum name="TEXTURE1"                                 value="0x84C1"/>
    <enum name="TEXTURE2"                                 value="0x84C2"/>
    <enum name="TEXTURE3"                                 value="0x84C3"/>
    <enum name="TEXTURE4"                                 value="0x84C4"/>
    <enum name="TEXTURE5"                                 value="0x84C5"/>
    <enum name="TEXTURE6"                                 value="0x84C6"/>
    <enum name="TEXTURE7"                                 value="0x84C7"/>
    <enum name="TEXTURE8"                                 value="0x84C8"/>
    <enum name="TEXTURE9"                                 value="0x84C9"/>
    <enum name="TEXTURE10"                                value="0x84CA"/>
    <enum name="TEXTURE11"                                value="0x84CB"/>
    <enum name="TEXTURE12"                                value="0x84CC"/>
    <enum name="TEXTURE13"                                value="0x84CD"/>
    <enum name="TEXTURE14"                                value="0x84CE"/>
    <enum name="TEXTURE15"                                value="0x84CF"/>
    <enum name="TEXTURE16"                                value="0x84D0"/>
    <enum name="TEXTURE17"                                value="0x84D1"/>
    <enum name="TEXTURE18"                                value="0x84D2"/>
    <enum name="TEXTURE19"                                value="0x84D3"/>
    <enum name="TEXTURE20"                                value="0x84D4"/>
    <enum name="TEXTURE21"                                value="0x84D5"/>
    <enum name="TEXTURE22"                                value="0x84D6"/>
    <enum name="TEXTURE23"                                value="0x84D7"/>
    <enum name="TEXTURE24"                                value="0x84D8"/>
    <enum name="TEXTURE25"                                value="0x84D9"/>
    <enum name="TEXTURE26"                                value="0x84DA"/>
    <enum name="TEXTURE27"                                value="0x84DB"/>
    <enum name="TEXTURE28"                                value="0x84DC"/>
    <enum name="TEXTURE29"                                value="0x84DD"/>
    <enum name="TEXTURE30"                                value="0x84DE"/>
    <enum name="TEXTURE31"                                value="0x84DF"/>
    <enum name="ACTIVE_TEXTURE"                count="1"  value="0x84E0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIENT_ACTIVE_TEXTURE"         count="1"  value="0x84E1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_UNITS"             count="1"  value="0x84E2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TRANSPOSE_MODELVIEW_MATRIX"               value="0x84E3"/>
    <enum name="TRANSPOSE_PROJECTION_MATRIX"              value="0x84E4"/>
    <enum name="TRANSPOSE_TEXTURE_MATRIX"                 value="0x84E5"/>
    <enum name="TRANSPOSE_COLOR_MATRIX"                   value="0x84E6"/>
    <enum name="MULTISAMPLE"                   count="1"  value="0x809D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_ALPHA_TO_COVERAGE"      count="1"  value="0x809E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_ALPHA_TO_ONE"           count="1"  value="0x809F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE"               count="1"  value="0x80A0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_BUFFERS"                count="1"  value="0x80A8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLES"                       count="1"  value="0x80A9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE_VALUE"         count="1"  value="0x80AA">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE_INVERT"        count="1"  value="0x80AB">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MULTISAMPLE_BIT"                          value="0x20000000"/>
    <enum name="NORMAL_MAP"                               value="0x8511"/>
    <enum name="REFLECTION_MAP"                           value="0x8512"/>
    <enum name="TEXTURE_CUBE_MAP"              count="1"  value="0x8513">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_CUBE_MAP"      count="1"  value="0x8514">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X"              value="0x8515"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X"              value="0x8516"/>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y"              value="0x8517"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y"              value="0x8518"/>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z"              value="0x8519"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z"              value="0x851A"/>
    <enum name="PROXY_TEXTURE_CUBE_MAP"                   value="0x851B"/>
    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE"     count="1"  value="0x851C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COMPRESSED_ALPHA"                         value="0x84E9"/>
    <enum name="COMPRESSED_LUMINANCE"                     value="0x84EA"/>
    <enum name="COMPRESSED_LUMINANCE_ALPHA"               value="0x84EB"/>
    <enum name="COMPRESSED_INTENSITY"                     value="0x84EC"/>
    <enum name="COMPRESSED_RGB"                           value="0x84ED"/>
    <enum name="COMPRESSED_RGBA"                          value="0x84EE"/>
    <enum name="TEXTURE_COMPRESSION_HINT"      count="1"  value="0x84EF">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE" count="1"  value="0x86A0">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPRESSED"            count="1"  value="0x86A1">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS" count="1" value="0x86A2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COMPRESSED_TEXTURE_FORMATS"    count="-1"  value="0x86A3">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLAMP_TO_BORDER"                          value="0x812D"/>
    <enum name="COMBINE"                                  value="0x8570"/>
    <enum name="COMBINE_RGB"                   count="1"  value="0x8571">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="COMBINE_ALPHA"                 count="1"  value="0x8572">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE0_RGB"                   count="1"  value="0x8580">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE1_RGB"                   count="1"  value="0x8581">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE2_RGB"                   count="1"  value="0x8582">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE0_ALPHA"                 count="1"  value="0x8588">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE1_ALPHA"                 count="1"  value="0x8589">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE2_ALPHA"                 count="1"  value="0x858A">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND0_RGB"                  count="1"  value="0x8590">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND1_RGB"                  count="1"  value="0x8591">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND2_RGB"                  count="1"  value="0x8592">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND0_ALPHA"                count="1"  value="0x8598">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND1_ALPHA"                count="1"  value="0x8599">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND2_ALPHA"                count="1"  value="0x859A">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="RGB_SCALE"                     count="1"  value="0x8573">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="ADD_SIGNED"                               value="0x8574"/>
    <enum name="INTERPOLATE"                              value="0x8575"/>
    <enum name="SUBTRACT"                                 value="0x84E7"/>
    <enum name="CONSTANT"                                 value="0x8576"/>
    <enum name="PRIMARY_COLOR"                            value="0x8577"/>
    <enum name="PREVIOUS"                                 value="0x8578"/>
    <enum name="DOT3_RGB"                                 value="0x86AE"/>
    <enum name="DOT3_RGBA"                                value="0x86AF"/>

    <function name="ActiveTexture" alias="ActiveTextureARB">
        <param name="texture" type="GLenum"/>
    </function>

    <function name="ClientActiveTexture" alias="ClientActiveTextureARB">
        <param name="texture" type="GLenum"/>
    </function>

    <function name="MultiTexCoord1d" alias="MultiTexCoord1dARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord1dv" alias="MultiTexCoord1dvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="MultiTexCoord1f" alias="MultiTexCoord1fARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord1fv" alias="MultiTexCoord1fvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="MultiTexCoord1i" alias="MultiTexCoord1iARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
    </function>

    <function name="MultiTexCoord1iv" alias="MultiTexCoord1ivARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *"/>
    </function>

    <function name="MultiTexCoord1s" alias="MultiTexCoord1sARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
    </function>

    <function name="MultiTexCoord1sv" alias="MultiTexCoord1svARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="MultiTexCoord2d" alias="MultiTexCoord2dARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord2dv" alias="MultiTexCoord2dvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="MultiTexCoord2f" alias="MultiTexCoord2fARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord2fv" alias="MultiTexCoord2fvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="MultiTexCoord2i" alias="MultiTexCoord2iARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
    </function>

    <function name="MultiTexCoord2iv" alias="MultiTexCoord2ivARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *"/>
    </function>

    <function name="MultiTexCoord2s" alias="MultiTexCoord2sARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
    </function>

    <function name="MultiTexCoord2sv" alias="MultiTexCoord2svARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="MultiTexCoord3d" alias="MultiTexCoord3dARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord3dv" alias="MultiTexCoord3dvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="MultiTexCoord3f" alias="MultiTexCoord3fARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord3fv" alias="MultiTexCoord3fvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="MultiTexCoord3i" alias="MultiTexCoord3iARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
    </function>

    <function name="MultiTexCoord3iv" alias="MultiTexCoord3ivARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *"/>
    </function>

    <function name="MultiTexCoord3s" alias="MultiTexCoord3sARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
    </function>

    <function name="MultiTexCoord3sv" alias="MultiTexCoord3svARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="MultiTexCoord4d" alias="MultiTexCoord4dARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
        <param name="q" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord4dv" alias="MultiTexCoord4dvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="MultiTexCoord4f" alias="MultiTexCoord4fARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="q" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord4fv" alias="MultiTexCoord4fvARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="MultiTexCoord4i" alias="MultiTexCoord4iARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
        <param name="q" type="GLint"/>
    </function>

    <function name="MultiTexCoord4iv" alias="MultiTexCoord4ivARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *"/>
    </function>

    <function name="MultiTexCoord4s" alias="MultiTexCoord4sARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
        <param name="q" type="GLshort"/>
    </function>

    <function name="MultiTexCoord4sv" alias="MultiTexCoord4svARB">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="LoadTransposeMatrixf" alias="LoadTransposeMatrixfARB">
        <param name="m" type="const GLfloat *"/>
    </function>

    <function name="LoadTransposeMatrixd" alias="LoadTransposeMatrixdARB">
        <param name="m" type="const GLdouble *"/>
    </function>

    <function name="MultTransposeMatrixf" alias="MultTransposeMatrixfARB">
        <param name="m" type="const GLfloat *"/>
    </function>

    <function name="MultTransposeMatrixd" alias="MultTransposeMatrixdARB">
        <param name="m" type="const GLdouble *"/>
    </function>

    <function name="SampleCoverage" alias="SampleCoverageARB">
        <param name="value" type="GLclampf"/>
        <param name="invert" type="GLboolean"/>
    </function>

    <function name="CompressedTexImage3D" alias="CompressedTexImage3DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CompressedTexImage2D" alias="CompressedTexImage2DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CompressedTexImage1D" alias="CompressedTexImage1DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CompressedTexSubImage3D" alias="CompressedTexSubImage3DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CompressedTexSubImage2D" alias="CompressedTexSubImage2DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CompressedTexSubImage1D" alias="CompressedTexSubImage1DARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="GetCompressedTexImage" alias="GetCompressedTexImageARB">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="img" type="GLvoid *" output="true"/>
    </function>
</category>

<category name="1.4">
    <enum name="BLEND_DST_RGB"                 count="1"  value="0x80C8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_SRC_RGB"                 count="1"  value="0x80C9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_DST_ALPHA"               count="1"  value="0x80CA">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_SRC_ALPHA"               count="1"  value="0x80CB">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SIZE_MIN"                count="1"  value="0x8126">
        <size name="PointParameterfvEXT"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_SIZE_MAX"                count="1"  value="0x8127">
        <size name="PointParameterfvEXT"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_FADE_THRESHOLD_SIZE"     count="1"  value="0x8128">
        <size name="PointParameterfvEXT"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POINT_DISTANCE_ATTENUATION"    count="3"  value="0x8129">
        <size name="PointParameterfvEXT"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="GENERATE_MIPMAP"               count="1"  value="0x8191">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="GENERATE_MIPMAP_HINT"                     value="0x8192"/>
    <enum name="DEPTH_COMPONENT16"                        value="0x81A5"/>
    <enum name="DEPTH_COMPONENT24"                        value="0x81A6"/>
    <enum name="DEPTH_COMPONENT32"                        value="0x81A7"/>
    <enum name="MIRRORED_REPEAT"                          value="0x8370"/>
    <enum name="FOG_COORDINATE_SOURCE"         count="1"  value="0x8450">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORDINATE"                           value="0x8451"/>
    <enum name="FRAGMENT_DEPTH"                           value="0x8452"/>
    <enum name="CURRENT_FOG_COORDINATE"        count="1"  value="0x8453">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORDINATE_ARRAY_TYPE"     count="1"  value="0x8454">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORDINATE_ARRAY_STRIDE"   count="1"  value="0x8455">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORDINATE_ARRAY_POINTER"             value="0x8456"/>
    <enum name="FOG_COORDINATE_ARRAY"          count="1"  value="0x8457">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_SUM"                                value="0x8458"/>
    <enum name="CURRENT_SECONDARY_COLOR"       count="4"  value="0x8459">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SECONDARY_COLOR_ARRAY_SIZE"    count="1"  value="0x845A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SECONDARY_COLOR_ARRAY_TYPE"    count="1"  value="0x845B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SECONDARY_COLOR_ARRAY_STRIDE"  count="1"  value="0x845C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SECONDARY_COLOR_ARRAY_POINTER"            value="0x845D"/>
    <enum name="SECONDARY_COLOR_ARRAY"         count="1"  value="0x845E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_LOD_BIAS"          count="1"  value="0x84FD">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_FILTER_CONTROL"                   value="0x8500"/>
    <enum name="TEXTURE_LOD_BIAS"              count="1"  value="0x8501">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="INCR_WRAP"                                value="0x8507"/>
    <enum name="DECR_WRAP"                                value="0x8508"/>
    <enum name="TEXTURE_DEPTH_SIZE"            count="1"  value="0x884A">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="DEPTH_TEXTURE_MODE"            count="1"  value="0x884B">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPARE_MODE"          count="1"  value="0x884C">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPARE_FUNC"          count="1"  value="0x884D">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="COMPARE_R_TO_TEXTURE"                     value="0x884E"/>

    <function name="BlendFuncSeparate" alias="BlendFuncSeparateEXT">
        <param name="sfactorRGB" type="GLenum"/>
        <param name="dfactorRGB" type="GLenum"/>
        <param name="sfactorAlpha" type="GLenum"/>
        <param name="dfactorAlpha" type="GLenum"/>
    </function>

    <function name="FogCoordf" alias="FogCoordfEXT">
        <param name="coord" type="GLfloat"/>
    </function>

    <function name="FogCoordfv" alias="FogCoordfvEXT">
        <param name="coord" type="const GLfloat *"/>
    </function>

    <function name="FogCoordd" alias="FogCoorddEXT">
        <param name="coord" type="GLdouble"/>
    </function>

    <function name="FogCoorddv" alias="FogCoorddvEXT">
        <param name="coord" type="const GLdouble *"/>
    </function>

    <function name="FogCoordPointer" alias="FogCoordPointerEXT">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>

    <function name="MultiDrawArrays" alias="MultiDrawArraysEXT">
        <param name="mode" type="GLenum"/>
        <param name="first" type="const GLint *"/>
        <param name="count" type="const GLsizei *"/>
        <param name="primcount" type="GLsizei"/>
    </function>

    <function name="MultiDrawElements" alias="MultiDrawElementsEXT">
        <param name="mode" type="GLenum"/>
        <param name="count" type="const GLsizei *"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid **"/>
        <param name="primcount" type="GLsizei"/>
    </function>

    <function name="PointParameterf" alias="PointParameterfEXT">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
    </function>

    <function name="PointParameterfv" alias="PointParameterfvEXT">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="PointParameteri" alias="PointParameteriNV">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
    </function>

    <function name="PointParameteriv" alias="PointParameterivNV">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="SecondaryColor3b" alias="SecondaryColor3bEXT">
        <param name="red" type="GLbyte"/>
        <param name="green" type="GLbyte"/>
        <param name="blue" type="GLbyte"/>
    </function>

    <function name="SecondaryColor3bv" alias="SecondaryColor3bvEXT">
        <param name="v" type="const GLbyte *"/>
    </function>

    <function name="SecondaryColor3d" alias="SecondaryColor3dEXT">
        <param name="red" type="GLdouble"/>
        <param name="green" type="GLdouble"/>
        <param name="blue" type="GLdouble"/>
    </function>

    <function name="SecondaryColor3dv" alias="SecondaryColor3dvEXT">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="SecondaryColor3f" alias="SecondaryColor3fEXT">
        <param name="red" type="GLfloat"/>
        <param name="green" type="GLfloat"/>
        <param name="blue" type="GLfloat"/>
    </function>

    <function name="SecondaryColor3fv" alias="SecondaryColor3fvEXT">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="SecondaryColor3i" alias="SecondaryColor3iEXT">
        <param name="red" type="GLint"/>
        <param name="green" type="GLint"/>
        <param name="blue" type="GLint"/>
    </function>

    <function name="SecondaryColor3iv" alias="SecondaryColor3ivEXT">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="SecondaryColor3s" alias="SecondaryColor3sEXT">
        <param name="red" type="GLshort"/>
        <param name="green" type="GLshort"/>
        <param name="blue" type="GLshort"/>
    </function>

    <function name="SecondaryColor3sv" alias="SecondaryColor3svEXT">
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="SecondaryColor3ub" alias="SecondaryColor3ubEXT">
        <param name="red" type="GLubyte"/>
        <param name="green" type="GLubyte"/>
        <param name="blue" type="GLubyte"/>
    </function>

    <function name="SecondaryColor3ubv" alias="SecondaryColor3ubvEXT">
        <param name="v" type="const GLubyte *"/>
    </function>

    <function name="SecondaryColor3ui" alias="SecondaryColor3uiEXT">
        <param name="red" type="GLuint"/>
        <param name="green" type="GLuint"/>
        <param name="blue" type="GLuint"/>
    </function>

    <function name="SecondaryColor3uiv" alias="SecondaryColor3uivEXT">
        <param name="v" type="const GLuint *"/>
    </function>

    <function name="SecondaryColor3us" alias="SecondaryColor3usEXT">
        <param name="red" type="GLushort"/>
        <param name="green" type="GLushort"/>
        <param name="blue" type="GLushort"/>
    </function>

    <function name="SecondaryColor3usv" alias="SecondaryColor3usvEXT">
        <param name="v" type="const GLushort *"/>
    </function>

    <function name="SecondaryColorPointer" alias="SecondaryColorPointerEXT">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>

    <function name="WindowPos2d" alias="WindowPos2dMESA">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="WindowPos2dv" alias="WindowPos2dvMESA">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="WindowPos2f" alias="WindowPos2fMESA">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="WindowPos2fv" alias="WindowPos2fvMESA">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="WindowPos2i" alias="WindowPos2iMESA">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
    </function>

    <function name="WindowPos2iv" alias="WindowPos2ivMESA">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="WindowPos2s" alias="WindowPos2sMESA">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="WindowPos2sv" alias="WindowPos2svMESA">
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="WindowPos3d" alias="WindowPos3dMESA">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="WindowPos3dv" alias="WindowPos3dvMESA">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="WindowPos3f" alias="WindowPos3fMESA">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="WindowPos3fv" alias="WindowPos3fvMESA">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="WindowPos3i" alias="WindowPos3iMESA">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
    </function>

    <function name="WindowPos3iv" alias="WindowPos3ivMESA">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="WindowPos3s" alias="WindowPos3sMESA">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="WindowPos3sv" alias="WindowPos3svMESA">
        <param name="v" type="const GLshort *"/>
    </function>
</category>

<category name="1.5">
    <enum name="BUFFER_SIZE"                              value="0x8764"/>
    <enum name="BUFFER_USAGE"                             value="0x8765"/>
    <enum name="QUERY_COUNTER_BITS"                       value="0x8864"/>
    <enum name="CURRENT_QUERY"                            value="0x8865"/>
    <enum name="QUERY_RESULT"                             value="0x8866"/>
    <enum name="QUERY_RESULT_AVAILABLE"                   value="0x8867"/>
    <enum name="ARRAY_BUFFER"                             value="0x8892"/>
    <enum name="ELEMENT_ARRAY_BUFFER"                     value="0x8893"/>
    <enum name="ARRAY_BUFFER_BINDING"                     value="0x8894"/>
    <enum name="ELEMENT_ARRAY_BUFFER_BINDING"             value="0x8895"/>
    <enum name="VERTEX_ARRAY_BUFFER_BINDING"              value="0x8896"/>
    <enum name="NORMAL_ARRAY_BUFFER_BINDING"              value="0x8897"/>
    <enum name="COLOR_ARRAY_BUFFER_BINDING"               value="0x8898"/>
    <enum name="INDEX_ARRAY_BUFFER_BINDING"               value="0x8899"/>
    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING"       value="0x889A"/>
    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING"           value="0x889B"/>
    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING"     value="0x889C"/>
    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING"      value="0x889D"/>
    <enum name="WEIGHT_ARRAY_BUFFER_BINDING"              value="0x889E"/>
    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"       value="0x889F"/>
    <enum name="READ_ONLY"                                value="0x88B8"/>
    <enum name="WRITE_ONLY"                               value="0x88B9"/>
    <enum name="READ_WRITE"                               value="0x88BA"/>
    <enum name="BUFFER_ACCESS"                            value="0x88BB"/>
    <enum name="BUFFER_MAPPED"                            value="0x88BC"/>
    <enum name="BUFFER_MAP_POINTER"                       value="0x88BD"/>
    <enum name="STREAM_DRAW"                              value="0x88E0"/>
    <enum name="STREAM_READ"                              value="0x88E1"/>
    <enum name="STREAM_COPY"                              value="0x88E2"/>
    <enum name="STATIC_DRAW"                              value="0x88E4"/>
    <enum name="STATIC_READ"                              value="0x88E5"/>
    <enum name="STATIC_COPY"                              value="0x88E6"/>
    <enum name="DYNAMIC_DRAW"                             value="0x88E8"/>
    <enum name="DYNAMIC_READ"                             value="0x88E9"/>
    <enum name="DYNAMIC_COPY"                             value="0x88EA"/>
    <enum name="SAMPLES_PASSED"                count="1"  value="0x8914"/>
    <enum name="FOG_COORD_SRC"                            value="0x8450">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORD"                                value="0x8451"/>
    <enum name="CURRENT_FOG_COORD"             count="1"  value="0x8453">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORD_ARRAY_TYPE"          count="1"  value="0x8454">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORD_ARRAY_STRIDE"        count="1"  value="0x8455">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORD_ARRAY_POINTER"                  value="0x8456"/>
    <enum name="FOG_COORD_ARRAY"               count="1"  value="0x8457">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORD_ARRAY_BUFFER_BINDING"           value="0x889D"/>
    <enum name="SRC0_RGB"                                 value="0x8580"/>
    <enum name="SRC1_RGB"                                 value="0x8581"/>
    <enum name="SRC2_RGB"                                 value="0x8582"/>
    <enum name="SRC0_ALPHA"                               value="0x8588"/>
    <enum name="SRC1_ALPHA"                               value="0x8589"/>
    <enum name="SRC2_ALPHA"                               value="0x858A"/>

    <type name="intptr"   size="4"                  glx_name="CARD32"/>
    <type name="sizeiptr" size="4"  unsigned="true" glx_name="CARD32"/>

    <function name="BindBuffer" alias="BindBufferARB">
        <param name="target" type="GLenum"/>
        <param name="buffer" type="GLuint"/>
    </function>

    <function name="BufferData" alias="BufferDataARB">
        <param name="target" type="GLenum"/>
        <param name="size" type="GLsizeiptr"/>
        <param name="data" type="const GLvoid *"/>
        <param name="usage" type="GLenum"/>
    </function>

    <function name="BufferSubData" alias="BufferSubDataARB">
        <param name="target" type="GLenum"/>
        <param name="offset" type="GLintptr"/>
        <param name="size" type="GLsizeiptr"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="DeleteBuffers" alias="DeleteBuffersARB">
        <param name="n" type="GLsizei"/>
        <param name="buffer" type="const GLuint *"/>
    </function>

    <function name="GenBuffers" alias="GenBuffersARB">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="buffer" type="GLuint *" output="true" count="n"/>
    </function>

    <function name="GetBufferParameteriv" alias="GetBufferParameterivARB">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
    </function>

    <function name="GetBufferPointerv" alias="GetBufferPointervARB">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLvoid **" output="true"/>
    </function>

    <function name="GetBufferSubData" alias="GetBufferSubDataARB">
        <param name="target" type="GLenum"/>
        <param name="offset" type="GLintptr"/>
        <param name="size" type="GLsizeiptr"/>
        <param name="data" type="GLvoid *" output="true"/>
    </function>

    <function name="IsBuffer" alias="IsBufferARB">
        <param name="buffer" type="GLuint"/>
        <return type="GLboolean"/>
    </function>

    <function name="MapBuffer" alias="MapBufferARB">
        <param name="target" type="GLenum"/>
        <param name="access" type="GLenum"/>
        <return type="GLvoid *"/>
    </function>

    <function name="UnmapBuffer" alias="UnmapBufferARB">
        <param name="target" type="GLenum"/>
        <return type="GLboolean"/>
    </function>

    <function name="GenQueries" alias="GenQueriesARB">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="ids" type="GLuint *" output="true" count="n"/>
    </function>

    <function name="DeleteQueries" alias="DeleteQueriesARB">
        <param name="n" type="GLsizei"/>
        <param name="ids" type="const GLuint *"/>
    </function>

    <function name="IsQuery" alias="IsQueryARB">
        <param name="id" type="GLuint"/>
        <return type="GLboolean"/>
    </function>

    <function name="BeginQuery" alias="BeginQueryARB">
        <param name="target" type="GLenum"/>
        <param name="id" type="GLuint"/>
    </function>

    <function name="EndQuery" alias="EndQueryARB">
        <param name="target" type="GLenum"/>
    </function>

    <function name="GetQueryiv" alias="GetQueryivARB">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
    </function>

    <function name="GetQueryObjectiv" alias="GetQueryObjectivARB">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
    </function>

    <function name="GetQueryObjectuiv" alias="GetQueryObjectuivARB">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
    </function>
</category>


<category name="2.0">
    <!-- XXX some of the enums and functions probably need additional -->
    <!-- flags/attributes. -->

    <type name="char"   size="1" glx_name="CARD8"/>

    <enum name="BLEND_EQUATION_RGB"            value="0x8009"/>
    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED"      value="0x8622"/>
    <enum name="VERTEX_ATTRIB_ARRAY_SIZE"         value="0x8623"/>
    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE"       value="0x8624"/>
    <enum name="VERTEX_ATTRIB_ARRAY_TYPE"         value="0x8625"/>
    <enum name="CURRENT_VERTEX_ATTRIB"            value="0x8626"/>
    <enum name="VERTEX_PROGRAM_POINT_SIZE"        value="0x8642"/>
    <enum name="VERTEX_PROGRAM_TWO_SIDE"          value="0x8643"/>
    <enum name="VERTEX_ATTRIB_ARRAY_POINTER"      value="0x8645"/>
    <enum name="STENCIL_BACK_FUNC"                value="0x8800"/>
    <enum name="STENCIL_BACK_FAIL"                value="0x8801"/>
    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL"     value="0x8802"/>
    <enum name="STENCIL_BACK_PASS_DEPTH_PASS"     value="0x8803"/>
    <enum name="MAX_DRAW_BUFFERS"                 value="0x8824"/>
    <enum name="DRAW_BUFFER0"                     value="0x8825"/>
    <enum name="DRAW_BUFFER1"                     value="0x8826"/>
    <enum name="DRAW_BUFFER2"                     value="0x8827"/>
    <enum name="DRAW_BUFFER3"                     value="0x8828"/>
    <enum name="DRAW_BUFFER4"                     value="0x8829"/>
    <enum name="DRAW_BUFFER5"                     value="0x882A"/>
    <enum name="DRAW_BUFFER6"                     value="0x882B"/>
    <enum name="DRAW_BUFFER7"                     value="0x882C"/>
    <enum name="DRAW_BUFFER8"                     value="0x882D"/>
    <enum name="DRAW_BUFFER9"                     value="0x882E"/>
    <enum name="DRAW_BUFFER10"                    value="0x882F"/>
    <enum name="DRAW_BUFFER11"                    value="0x8830"/>
    <enum name="DRAW_BUFFER12"                    value="0x8831"/>
    <enum name="DRAW_BUFFER13"                    value="0x8832"/>
    <enum name="DRAW_BUFFER14"                    value="0x8833"/>
    <enum name="DRAW_BUFFER15"                    value="0x8834"/>
    <enum name="BLEND_EQUATION_ALPHA"             value="0x883D"/>
    <enum name="POINT_SPRITE"                     value="0x8861"/>
    <enum name="COORD_REPLACE"                    value="0x8862"/>
    <enum name="MAX_VERTEX_ATTRIBS"               value="0x8869"/>
    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED"   value="0x886A"/>
    <enum name="MAX_TEXTURE_COORDS"               value="0x8871"/>
    <enum name="MAX_TEXTURE_IMAGE_UNITS"          value="0x8872"/>
    <enum name="FRAGMENT_SHADER"                  value="0x8B30"/>
    <enum name="VERTEX_SHADER"                    value="0x8B31"/>
    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS"  value="0x8B49"/>
    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS"    value="0x8B4A"/>
    <enum name="MAX_VARYING_FLOATS"               value="0x8B4B"/>
    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS"   value="0x8B4C"/>
    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS" value="0x8B4D"/>
    <enum name="SHADER_TYPE"                      value="0x8B4F"/>
    <enum name="FLOAT_VEC2"                       value="0x8B50"/>
    <enum name="FLOAT_VEC3"                       value="0x8B51"/>
    <enum name="FLOAT_VEC4"                       value="0x8B52"/>
    <enum name="INT_VEC2"                         value="0x8B53"/>
    <enum name="INT_VEC3"                         value="0x8B54"/>
    <enum name="INT_VEC4"                         value="0x8B55"/>
    <enum name="BOOL"                             value="0x8B56"/>
    <enum name="BOOL_VEC2"                        value="0x8B57"/>
    <enum name="BOOL_VEC3"                        value="0x8B58"/>
    <enum name="BOOL_VEC4"                        value="0x8B59"/>
    <enum name="FLOAT_MAT2"                       value="0x8B5A"/>
    <enum name="FLOAT_MAT3"                       value="0x8B5B"/>
    <enum name="FLOAT_MAT4"                       value="0x8B5C"/>
    <enum name="SAMPLER_1D"                       value="0x8B5D"/>
    <enum name="SAMPLER_2D"                       value="0x8B5E"/>
    <enum name="SAMPLER_3D"                       value="0x8B5F"/>
    <enum name="SAMPLER_CUBE"                     value="0x8B60"/>
    <enum name="SAMPLER_1D_SHADOW"                value="0x8B61"/>
    <enum name="SAMPLER_2D_SHADOW"                value="0x8B62"/>
    <enum name="DELETE_STATUS"                    value="0x8B80"/>
    <enum name="COMPILE_STATUS"                   value="0x8B81"/>
    <enum name="LINK_STATUS"                      value="0x8B82"/>
    <enum name="VALIDATE_STATUS"                  value="0x8B83"/>
    <enum name="INFO_LOG_LENGTH"                  value="0x8B84"/>
    <enum name="ATTACHED_SHADERS"                 value="0x8B85"/>
    <enum name="ACTIVE_UNIFORMS"                  value="0x8B86"/>
    <enum name="ACTIVE_UNIFORM_MAX_LENGTH"        value="0x8B87"/>
    <enum name="SHADER_SOURCE_LENGTH"             value="0x8B88"/>
    <enum name="ACTIVE_ATTRIBUTES"                value="0x8B89"/>
    <enum name="ACTIVE_ATTRIBUTE_MAX_LENGTH"      value="0x8B8A"/>
    <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT"  value="0x8B8B"/>
    <enum name="SHADING_LANGUAGE_VERSION"         value="0x8B8C"/>
    <enum name="CURRENT_PROGRAM"                  value="0x8B8D"/>
    <enum name="POINT_SPRITE_COORD_ORIGIN" count="1"  value="0x8CA0">
        <size name="PointParameterfvEXT"/>
        <size name="PointParameterivNV"/>
    </enum>
    <enum name="LOWER_LEFT"                       value="0x8CA1"/>
    <enum name="UPPER_LEFT"                       value="0x8CA2"/>
    <enum name="STENCIL_BACK_REF"                 value="0x8CA3"/>
    <enum name="STENCIL_BACK_VALUE_MASK"          value="0x8CA4"/>
    <enum name="STENCIL_BACK_WRITEMASK"           value="0x8CA5"/>

    <function name="BlendEquationSeparate" alias="BlendEquationSeparateEXT">
        <param name="modeRGB" type="GLenum"/>
        <param name="modeA" type="GLenum"/>
    </function>

    <function name="DrawBuffers" alias="DrawBuffersARB">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="bufs" type="const GLenum *" count="n"/>
    </function>

    <function name="StencilFuncSeparate" offset="assign">
        <param name="face" type="GLenum"/>
        <param name="func" type="GLenum"/>
        <param name="ref" type="GLint"/>
        <param name="mask" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="StencilOpSeparate" offset="assign">
        <param name="face" type="GLenum"/>
        <param name="sfail" type="GLenum"/>
        <param name="zfail" type="GLenum"/>
        <param name="zpass" type="GLenum"/>
        <glx ignore="true"/>
    </function>

    <function name="StencilMaskSeparate" offset="assign">
        <param name="face" type="GLenum"/>
        <param name="mask" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="AttachShader" offset="assign">
        <param name="program" type="GLuint"/>
        <param name="shader" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="BindAttribLocation" alias="BindAttribLocationARB">
        <param name="program" type="GLuint"/>
        <param name="index" type="GLuint"/>
        <param name="name" type="const GLchar *"/>
        <glx ignore="true"/>
    </function>

    <function name="CompileShader" alias="CompileShaderARB">
        <param name="shader" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="CreateProgram" offset="assign">
        <return type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="CreateShader" offset="assign">
        <param name="type" type="GLenum"/>
        <return type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="DeleteProgram" offset="assign">
        <param name="program" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="DeleteShader" offset="assign">
        <param name="program" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="DetachShader" offset="assign">
        <param name="program" type="GLuint"/>
        <param name="shader" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="DisableVertexAttribArray" alias="DisableVertexAttribArrayARB">
        <param name="index" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="EnableVertexAttribArray" alias="EnableVertexAttribArrayARB">
        <param name="index" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="GetActiveAttrib" alias="GetActiveAttribARB">
        <param name="program" type="GLuint"/>
        <param name="index" type="GLuint"/>
        <param name="bufSize" type="GLsizei "/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="size" type="GLint *" output="true"/>
        <param name="type" type="GLenum *" output="true"/>
        <param name="name" type="GLchar *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetActiveUniform" alias="GetActiveUniformARB">
        <param name="program" type="GLuint"/>
        <param name="index" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="size" type="GLint *" output="true"/>
        <param name="type" type="GLenum *" output="true"/>
        <param name="name" type="GLchar *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetAttachedShaders" offset="assign">
        <param name="program" type="GLuint"/>
        <param name="maxCount" type="GLsizei"/>
        <param name="count" type="GLsizei *" output="true"/>
        <param name="obj" type="GLuint *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetAttribLocation" alias="GetAttribLocationARB">
        <param name="program" type="GLuint"/>
        <param name="name" type="const GLchar *"/>
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="GetProgramiv" offset="assign">
        <param name="program" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetProgramInfoLog" offset="assign">
        <param name="program" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *"/>
        <param name="infoLog" type="GLchar *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetShaderiv" offset="assign">
        <param name="shader" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetShaderInfoLog" offset="assign">
        <param name="shader" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *"/>
        <param name="infoLog" type="GLchar *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetShaderSource" alias="GetShaderSourceARB">
        <param name="shader" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="source" type="GLchar *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformLocation" alias="GetUniformLocationARB">
        <param name="program" type="GLuint"/>
        <param name="name" type="const GLchar *"/>
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformfv" alias="GetUniformfvARB">
        <param name="program" type="GLuint"/>
        <param name="location" type="GLint"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformiv" alias="GetUniformivARB">
        <param name="program" type="GLuint"/>
        <param name="location" type="GLint"/>
        <param name="params" type="GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetVertexAttribdv" alias="GetVertexAttribdvARB">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetVertexAttribfv" alias="GetVertexAttribfvARB">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetVertexAttribiv" alias="GetVertexAttribivARB">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetVertexAttribPointerv" alias="GetVertexAttribPointervNV">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="pointer" type="GLvoid **" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="IsProgram" offset="assign">
        <param name="program" type="GLuint"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>

    <function name="IsShader" offset="assign">
        <param name="shader" type="GLuint"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>

    <function name="LinkProgram" alias="LinkProgramARB">
        <param name="program" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="ShaderSource" alias="ShaderSourceARB">
        <param name="shader" type="GLuint"/>
        <param name="count" type="GLsizei"/>
        <param name="string" type="const GLchar **"/>
        <param name="length" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="UseProgram" alias="UseProgramObjectARB">
        <param name="program" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1f" alias="Uniform1fARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform2f" alias="Uniform2fARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform3f" alias="Uniform3fARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform4f" alias="Uniform4fARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <param name="v3" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1i" alias="Uniform1iARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform2i" alias="Uniform2iARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform3i" alias="Uniform3iARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <param name="v2" type="GLint"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform4i" alias="Uniform4iARB">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <param name="v2" type="GLint"/>
        <param name="v3" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1fv" alias="Uniform1fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform2fv" alias="Uniform2fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform3fv" alias="Uniform3fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform4fv" alias="Uniform4fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1iv" alias="Uniform1ivARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform2iv" alias="Uniform2ivARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform3iv" alias="Uniform3ivARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>
    <function name="Uniform4iv" alias="Uniform4ivARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="UniformMatrix2fv" alias="UniformMatrix2fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix3fv" alias="UniformMatrix3fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix4fv" alias="UniformMatrix4fvARB">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="ValidateProgram" alias="ValidateProgramARB">
        <param name="program" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="VertexAttrib1d" alias="VertexAttrib1dARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
    </function>
    <function name="VertexAttrib1dv" alias="VertexAttrib1dvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *"/>
    </function>
    <function name="VertexAttrib1f" alias="VertexAttrib1fARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
    </function>
    <function name="VertexAttrib1fv" alias="VertexAttrib1fvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *"/>
    </function>
    <function name="VertexAttrib1s" alias="VertexAttrib1sARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
    </function>
    <function name="VertexAttrib1sv" alias="VertexAttrib1svARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="VertexAttrib2d" alias="VertexAttrib2dARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>
    <function name="VertexAttrib2dv" alias="VertexAttrib2dvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *"/>
    </function>
    <function name="VertexAttrib2f" alias="VertexAttrib2fARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>
    <function name="VertexAttrib2fv" alias="VertexAttrib2fvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *"/>
    </function>
    <function name="VertexAttrib2s" alias="VertexAttrib2sARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>
    <function name="VertexAttrib2sv" alias="VertexAttrib2svARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="VertexAttrib3d" alias="VertexAttrib3dARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>
    <function name="VertexAttrib3dv" alias="VertexAttrib3dvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *"/>
    </function>
    <function name="VertexAttrib3f" alias="VertexAttrib3fARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>
    <function name="VertexAttrib3fv" alias="VertexAttrib3fvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *"/>
    </function>
    <function name="VertexAttrib3s" alias="VertexAttrib3sARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>
    <function name="VertexAttrib3sv" alias="VertexAttrib3svARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="VertexAttrib4Nbv" alias="VertexAttrib4NbvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLbyte *"/>
    </function>
    <function name="VertexAttrib4Niv" alias="VertexAttrib4NivARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLint *"/>
    </function>
    <function name="VertexAttrib4Nsv" alias="VertexAttrib4NsvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *"/>
    </function>
    <function name="VertexAttrib4Nub" alias="VertexAttrib4NubARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLubyte"/>
        <param name="y" type="GLubyte"/>
        <param name="z" type="GLubyte"/>
        <param name="w" type="GLubyte"/>
    </function>
    <function name="VertexAttrib4Nubv" alias="VertexAttrib4NubvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLubyte *"/>
    </function>
    <function name="VertexAttrib4Nuiv" alias="VertexAttrib4NuivARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLuint *"/>
    </function>
    <function name="VertexAttrib4Nusv" alias="VertexAttrib4NusvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLushort *"/>
    </function>
    <function name="VertexAttrib4bv" alias="VertexAttrib4bvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLbyte *" count="4"/>
    </function>
    <function name="VertexAttrib4d" alias="VertexAttrib4dARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>
    <function name="VertexAttrib4dv" alias="VertexAttrib4dvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *"/>
    </function>
    <function name="VertexAttrib4f" alias="VertexAttrib4fARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>
    <function name="VertexAttrib4fv" alias="VertexAttrib4fvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *"/>
    </function>
    <function name="VertexAttrib4iv" alias="VertexAttrib4ivARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLint *" count="4"/>
    </function>
    <function name="VertexAttrib4s" alias="VertexAttrib4sARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
    </function>
    <function name="VertexAttrib4sv" alias="VertexAttrib4svARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *"/>
    </function>
    <function name="VertexAttrib4ubv" alias="VertexAttrib4ubvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLubyte *" count="4"/>
    </function>
    <function name="VertexAttrib4uiv" alias="VertexAttrib4uivARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLuint *" count="4"/>
    </function>
    <function name="VertexAttrib4usv" alias="VertexAttrib4usvARB">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLushort *" count="4"/>
    </function>

    <function name="VertexAttribPointer" alias="VertexAttribPointerARB">
        <param name="index" type="GLuint"/>
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="normalized" type="GLboolean"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>

</category>


<category name="2.1">
    <!-- XXX some of the enums and functions probably need additional -->
    <!-- flags/attributes. -->

    <enum name="CURRENT_RASTER_SECONDARY_COLOR" value="0x845F"/>
    <enum name="PIXEL_PACK_BUFFER"              value="0x88EB"/>
    <enum name="PIXEL_UNPACK_BUFFER"            value="0x88EC"/>
    <enum name="PIXEL_PACK_BUFFER_BINDING"      value="0x88ED"/>
    <enum name="PIXEL_UNPACK_BUFFER_BINDING"    value="0x88EF"/>
    <enum name="FLOAT_MAT2x3"                   value="0x8B65"/>
    <enum name="FLOAT_MAT2x4"                   value="0x8B66"/>
    <enum name="FLOAT_MAT3x2"                   value="0x8B67"/>
    <enum name="FLOAT_MAT3x4"                   value="0x8B68"/>
    <enum name="FLOAT_MAT4x2"                   value="0x8B69"/>
    <enum name="FLOAT_MAT4x3"                   value="0x8B6A"/>
    <enum name="SRGB"                           value="0x8C40"/>
    <enum name="SRGB8"                          value="0x8C41"/>
    <enum name="SRGB_ALPHA"                     value="0x8C42"/>
    <enum name="SRGB8_ALPHA8"                   value="0x8C43"/>
    <enum name="SLUMINANCE_ALPHA"               value="0x8C44"/>
    <enum name="SLUMINANCE8_ALPHA8"             value="0x8C45"/>
    <enum name="SLUMINANCE"                     value="0x8C46"/>
    <enum name="SLUMINANCE8"                    value="0x8C47"/>
    <enum name="COMPRESSED_SRGB"                value="0x8C48"/>
    <enum name="COMPRESSED_SRGB_ALPHA"          value="0x8C49"/>
    <enum name="COMPRESSED_SLUMINANCE"          value="0x8C4A"/>
    <enum name="COMPRESSED_SLUMINANCE_ALPHA"    value="0x8C4B"/>

    <function name="UniformMatrix2x3fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix3x2fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix2x4fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix4x2fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix3x4fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>
    <function name="UniformMatrix4x3fv" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

</category>


<!-- ARB extensions sorted by extension number. -->

<category name="GL_ARB_multitexture" number="1">
    <enum name="TEXTURE0_ARB"                             value="0x84C0"/>
    <enum name="TEXTURE1_ARB"                             value="0x84C1"/>
    <enum name="TEXTURE2_ARB"                             value="0x84C2"/>
    <enum name="TEXTURE3_ARB"                             value="0x84C3"/>
    <enum name="TEXTURE4_ARB"                             value="0x84C4"/>
    <enum name="TEXTURE5_ARB"                             value="0x84C5"/>
    <enum name="TEXTURE6_ARB"                             value="0x84C6"/>
    <enum name="TEXTURE7_ARB"                             value="0x84C7"/>
    <enum name="TEXTURE8_ARB"                             value="0x84C8"/>
    <enum name="TEXTURE9_ARB"                             value="0x84C9"/>
    <enum name="TEXTURE10_ARB"                            value="0x84CA"/>
    <enum name="TEXTURE11_ARB"                            value="0x84CB"/>
    <enum name="TEXTURE12_ARB"                            value="0x84CC"/>
    <enum name="TEXTURE13_ARB"                            value="0x84CD"/>
    <enum name="TEXTURE14_ARB"                            value="0x84CE"/>
    <enum name="TEXTURE15_ARB"                            value="0x84CF"/>
    <enum name="TEXTURE16_ARB"                            value="0x84D0"/>
    <enum name="TEXTURE17_ARB"                            value="0x84D1"/>
    <enum name="TEXTURE18_ARB"                            value="0x84D2"/>
    <enum name="TEXTURE19_ARB"                            value="0x84D3"/>
    <enum name="TEXTURE20_ARB"                            value="0x84D4"/>
    <enum name="TEXTURE21_ARB"                            value="0x84D5"/>
    <enum name="TEXTURE22_ARB"                            value="0x84D6"/>
    <enum name="TEXTURE23_ARB"                            value="0x84D7"/>
    <enum name="TEXTURE24_ARB"                            value="0x84D8"/>
    <enum name="TEXTURE25_ARB"                            value="0x84D9"/>
    <enum name="TEXTURE26_ARB"                            value="0x84DA"/>
    <enum name="TEXTURE27_ARB"                            value="0x84DB"/>
    <enum name="TEXTURE28_ARB"                            value="0x84DC"/>
    <enum name="TEXTURE29_ARB"                            value="0x84DD"/>
    <enum name="TEXTURE30_ARB"                            value="0x84DE"/>
    <enum name="TEXTURE31_ARB"                            value="0x84DF"/>
    <enum name="ACTIVE_TEXTURE_ARB"            count="1"  value="0x84E0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CLIENT_ACTIVE_TEXTURE_ARB"     count="1"  value="0x84E1">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_UNITS_ARB"         count="1"  value="0x84E2">
        <size name="Get" mode="get"/>
    </enum>

    <function name="ActiveTextureARB" offset="374">
        <param name="texture" type="GLenum"/>
        <glx rop="197"/>
    </function>

    <function name="ClientActiveTextureARB" offset="375">
        <param name="texture" type="GLenum"/>
        <glx handcode="true"/>
    </function>

    <function name="MultiTexCoord1dARB" offset="376" vectorequiv="MultiTexCoord1dvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord1dvARB" offset="377">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *" count="1"/>
        <glx rop="198"/>
    </function>

    <function name="MultiTexCoord1fARB" offset="378" vectorequiv="MultiTexCoord1fvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord1fvARB" offset="379">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *" count="1"/>
        <glx rop="199"/>
    </function>

    <function name="MultiTexCoord1iARB" offset="380" vectorequiv="MultiTexCoord1ivARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
    </function>

    <function name="MultiTexCoord1ivARB" offset="381">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *" count="1"/>
        <glx rop="200"/>
    </function>

    <function name="MultiTexCoord1sARB" offset="382" vectorequiv="MultiTexCoord1svARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
    </function>

    <function name="MultiTexCoord1svARB" offset="383">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *" count="1"/>
        <glx rop="201"/>
    </function>

    <function name="MultiTexCoord2dARB" offset="384" vectorequiv="MultiTexCoord2dvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord2dvARB" offset="385">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="202"/>
    </function>

    <function name="MultiTexCoord2fARB" offset="386" vectorequiv="MultiTexCoord2fvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord2fvARB" offset="387">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="203"/>
    </function>

    <function name="MultiTexCoord2iARB" offset="388" vectorequiv="MultiTexCoord2ivARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
    </function>

    <function name="MultiTexCoord2ivARB" offset="389">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *" count="2"/>
        <glx rop="204"/>
    </function>

    <function name="MultiTexCoord2sARB" offset="390" vectorequiv="MultiTexCoord2svARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
    </function>

    <function name="MultiTexCoord2svARB" offset="391">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="205"/>
    </function>

    <function name="MultiTexCoord3dARB" offset="392" vectorequiv="MultiTexCoord3dvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord3dvARB" offset="393">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="206"/>
    </function>

    <function name="MultiTexCoord3fARB" offset="394" vectorequiv="MultiTexCoord3fvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord3fvARB" offset="395">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="207"/>
    </function>

    <function name="MultiTexCoord3iARB" offset="396" vectorequiv="MultiTexCoord3ivARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
    </function>

    <function name="MultiTexCoord3ivARB" offset="397">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="208"/>
    </function>

    <function name="MultiTexCoord3sARB" offset="398" vectorequiv="MultiTexCoord3svARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
    </function>

    <function name="MultiTexCoord3svARB" offset="399">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="209"/>
    </function>

    <function name="MultiTexCoord4dARB" offset="400" vectorequiv="MultiTexCoord4dvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLdouble"/>
        <param name="t" type="GLdouble"/>
        <param name="r" type="GLdouble"/>
        <param name="q" type="GLdouble"/>
    </function>

    <function name="MultiTexCoord4dvARB" offset="401">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="210"/>
    </function>

    <function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="q" type="GLfloat"/>
    </function>

    <function name="MultiTexCoord4fvARB" offset="403">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="211"/>
    </function>

    <function name="MultiTexCoord4iARB" offset="404" vectorequiv="MultiTexCoord4ivARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLint"/>
        <param name="t" type="GLint"/>
        <param name="r" type="GLint"/>
        <param name="q" type="GLint"/>
    </function>

    <function name="MultiTexCoord4ivARB" offset="405">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="212"/>
    </function>

    <function name="MultiTexCoord4sARB" offset="406" vectorequiv="MultiTexCoord4svARB">
        <param name="target" type="GLenum"/>
        <param name="s" type="GLshort"/>
        <param name="t" type="GLshort"/>
        <param name="r" type="GLshort"/>
        <param name="q" type="GLshort"/>
    </function>

    <function name="MultiTexCoord4svARB" offset="407">
        <param name="target" type="GLenum"/>
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="213"/>
    </function>
</category>

<!-- ARB extension number 2 is a GLX extension. -->

<category name="GL_ARB_transpose_matrix" number="3">
    <enum name="TRANSPOSE_MODELVIEW_MATRIX_ARB"           value="0x84E3"/>
    <enum name="TRANSPOSE_PROJECTION_MATRIX_ARB"          value="0x84E4"/>
    <enum name="TRANSPOSE_TEXTURE_MATRIX_ARB"             value="0x84E5"/>
    <enum name="TRANSPOSE_COLOR_MATRIX_ARB"               value="0x84E6"/>

    <function name="LoadTransposeMatrixfARB" offset="assign">
        <param name="m" type="const GLfloat *"/>
        <glx handcode="true"/>
    </function>

    <function name="LoadTransposeMatrixdARB" offset="assign">
        <param name="m" type="const GLdouble *"/>
        <glx handcode="true"/>
    </function>

    <function name="MultTransposeMatrixfARB" offset="assign">
        <param name="m" type="const GLfloat *"/>
        <glx handcode="true"/>
    </function>

    <function name="MultTransposeMatrixdARB" offset="assign">
        <param name="m" type="const GLdouble *"/>
        <glx handcode="true"/>
    </function>
</category>

<!-- ARB extension number 4 is a WGL extension. -->

<category name="GL_ARB_multisample" number="5">
    <enum name="MULTISAMPLE_ARB"               count="1"  value="0x809D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_ALPHA_TO_COVERAGE_ARB"  count="1"  value="0x809E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_ALPHA_TO_ONE_ARB"       count="1"  value="0x809F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE_ARB"           count="1"  value="0x80A0">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_BUFFERS_ARB"            count="1"  value="0x80A8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLES_ARB"                   count="1"  value="0x80A9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE_VALUE_ARB"     count="1"  value="0x80AA">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SAMPLE_COVERAGE_INVERT_ARB"    count="1"  value="0x80AB">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MULTISAMPLE_BIT_ARB"                      value="0x20000000"/>

    <function name="SampleCoverageARB" offset="assign">
        <param name="value" type="GLclampf"/>
        <param name="invert" type="GLboolean"/>
        <glx rop="229"/>
    </function>
</category>

<category name="GL_ARB_texture_env_add" number="6">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_ARB_texture_cube_map" number="7">
    <enum name="NORMAL_MAP_ARB"                           value="0x8511"/>
    <enum name="REFLECTION_MAP_ARB"                       value="0x8512"/>
    <enum name="TEXTURE_CUBE_MAP_ARB"          count="1"  value="0x8513">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_CUBE_MAP_ARB"  count="1"  value="0x8514">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_ARB"          value="0x8515"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_ARB"          value="0x8516"/>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_ARB"          value="0x8517"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB"          value="0x8518"/>
    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_ARB"          value="0x8519"/>
    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB"          value="0x851A"/>
    <enum name="PROXY_TEXTURE_CUBE_MAP_ARB"               value="0x851B"/>
    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_ARB" count="1"  value="0x851C">
        <size name="Get" mode="get"/>
    </enum>
</category>

<!-- ARB extension number 8 is a WGL extension. -->
<!-- ARB extension number 9 is a WGL extension. -->
<!-- ARB extension number 10 is a WGL extension. -->
<!-- ARB extension number 11 is a WGL extension. -->

<category name="GL_ARB_texture_compression" number="12">
    <enum name="COMPRESSED_ALPHA_ARB"                     value="0x84E9"/>
    <enum name="COMPRESSED_LUMINANCE_ARB"                 value="0x84EA"/>
    <enum name="COMPRESSED_LUMINANCE_ALPHA_ARB"           value="0x84EB"/>
    <enum name="COMPRESSED_INTENSITY_ARB"                 value="0x84EC"/>
    <enum name="COMPRESSED_RGB_ARB"                       value="0x84ED"/>
    <enum name="COMPRESSED_RGBA_ARB"                      value="0x84EE"/>
    <enum name="TEXTURE_COMPRESSION_HINT_ARB"  count="1"  value="0x84EF">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE_ARB" count="1" value="0x86A0">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPRESSED_ARB"        count="1"  value="0x86A1">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS_ARB" count="1" value="0x86A2">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPRESSED_FORMATS_ARB"           value="0x86A3"/>

    <function name="CompressedTexImage3DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="216" handcode="client"/>
    </function>

    <function name="CompressedTexImage2DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="215" handcode="client"/>
    </function>

    <function name="CompressedTexImage1DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="214" handcode="client"/>
    </function>

    <function name="CompressedTexSubImage3DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="219" handcode="client"/>
    </function>

    <function name="CompressedTexSubImage2DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="218" handcode="client"/>
    </function>

    <function name="CompressedTexSubImage1DARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="imageSize" type="GLsizei" counter="true"/>
        <param name="data" type="const GLvoid *" count="imageSize"/>
        <glx rop="217" handcode="client"/>
    </function>

    <function name="GetCompressedTexImageARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="img" type="GLvoid *" output="true"/>

        <!-- This has to be hand coded because the image size is in the
             "wrong" place.  Technically, this should be a
             'always_array="true"' case.  The size field in the reply would
             be at offset 12.  However, the size is actually at offset 16.
             This is where the 'width' is in a GetTexImage reply. -->
        <glx sop="160" handcode="true"/>
    </function>
</category>

<category name="GL_ARB_texture_border_clamp" number="13">
    <enum name="CLAMP_TO_BORDER_ARB"                      value="0x812D"/>
</category>

<category name="GL_ARB_point_parameters" number="14">
    <enum name="POINT_SIZE_MIN_ARB"            count="1"  value="0x8126">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_SIZE_MAX_ARB"            count="1"  value="0x8127">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_FADE_THRESHOLD_SIZE_ARB" count="1"  value="0x8128">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_DISTANCE_ATTENUATION_ARB" count="3" value="0x8129">
        <size name="PointParameterfvEXT"/>
    </enum>

    <function name="PointParameterfARB" alias="PointParameterfEXT">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="2065"/>
    </function>

    <function name="PointParameterfvARB" alias="PointParameterfvEXT">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="2066"/>
    </function>
</category>

<category name="GL_ARB_vertex_blend" number="15">
    <enum name="MAX_VERTEX_UNITS_ARB"          count="1"  value="0x86A4">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACTIVE_VERTEX_UNITS_ARB"       count="1"  value="0x86A5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_SUM_UNITY_ARB"          count="1"  value="0x86A6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_BLEND_ARB"              count="1"  value="0x86A7">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_WEIGHT_ARB"            count="1"  value="0x86A8">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_ARRAY_TYPE_ARB"         count="1"  value="0x86A9">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_ARRAY_STRIDE_ARB"       count="1"  value="0x86AA">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_ARRAY_SIZE_ARB"         count="1"  value="0x86AB">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_ARRAY_POINTER_ARB"                 value="0x86AC"/>
    <enum name="WEIGHT_ARRAY_ARB"              count="1"  value="0x86AD">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW0_ARB"                count="16" value="0x1700">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW1_ARB"                count="16" value="0x850A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW2_ARB"                count="16" value="0x8722">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW3_ARB"                count="16" value="0x8723">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW4_ARB"                count="16" value="0x8724">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW5_ARB"                count="16" value="0x8725">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW6_ARB"                count="16" value="0x8726">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW7_ARB"                count="16" value="0x8727">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW8_ARB"                count="16" value="0x8728">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW9_ARB"                count="16" value="0x8729">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW10_ARB"               count="16" value="0x872A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW11_ARB"               count="16" value="0x872B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW12_ARB"               count="16" value="0x872C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW13_ARB"               count="16" value="0x872D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW14_ARB"               count="16" value="0x872E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW15_ARB"               count="16" value="0x872F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW16_ARB"               count="16" value="0x8730">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW17_ARB"               count="16" value="0x8731">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW18_ARB"               count="16" value="0x8732">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW19_ARB"               count="16" value="0x8733">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW20_ARB"               count="16" value="0x8734">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW21_ARB"               count="16" value="0x8735">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW22_ARB"               count="16" value="0x8736">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW23_ARB"               count="16" value="0x8737">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW24_ARB"               count="16" value="0x8738">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW25_ARB"               count="16" value="0x8739">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW26_ARB"               count="16" value="0x873A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW27_ARB"               count="16" value="0x873B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW28_ARB"               count="16" value="0x873C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW29_ARB"               count="16" value="0x873D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW30_ARB"               count="16" value="0x873E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MODELVIEW31_ARB"               count="16" value="0x873F">
        <size name="Get" mode="get"/>
    </enum>

    <function name="WeightbvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLbyte *"/>
    </function>

    <function name="WeightsvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLshort *"/>
    </function>

    <function name="WeightivARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLint *"/>
    </function>

    <function name="WeightfvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLfloat *"/>
    </function>

    <function name="WeightdvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLdouble *"/>
    </function>

    <function name="WeightubvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLubyte *"/>
    </function>

    <function name="WeightusvARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLushort *"/>
    </function>

    <function name="WeightuivARB">
        <param name="size" type="GLint"/>
        <param name="weights" type="const GLuint *"/>
    </function>

    <function name="WeightPointerARB">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="VertexBlendARB">
        <param name="count" type="GLint"/>
    </function>
</category>

<category name="GL_ARB_matrix_palette" number="16">
    <enum name="MATRIX_PALETTE_ARB"            count="1"  value="0x8840">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_MATRIX_PALETTE_STACK_DEPTH_ARB" count="1" value="0x8841">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_PALETTE_MATRICES_ARB"      count="1"  value="0x8842">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_PALETTE_MATRIX_ARB"    count="1"  value="0x8843">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_INDEX_ARRAY_ARB"        count="1"  value="0x8844">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_MATRIX_INDEX_ARB"      count="1"  value="0x8845">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_INDEX_ARRAY_SIZE_ARB"   count="1"  value="0x8846">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_INDEX_ARRAY_TYPE_ARB"   count="1"  value="0x8847">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_INDEX_ARRAY_STRIDE_ARB" count="1"  value="0x8848">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX_INDEX_ARRAY_POINTER_ARB"           value="0x8849"/>

    <function name="CurrentPaletteMatrixARB">
        <param name="index" type="GLint"/>
        <glx ignore="true" rop="4329"/>
    </function>

    <function name="MatrixIndexubvARB">
        <param name="size" type="GLint" counter="true"/>
        <param name="indices" type="const GLubyte *" count="size"/>
        <glx ignore="true" rop="4326"/>
    </function>

    <function name="MatrixIndexusvARB">
        <param name="size" type="GLint" counter="true"/>
        <param name="indices" type="const GLushort *" count="size"/>
        <glx ignore="true" rop="4327"/>
    </function>

    <function name="MatrixIndexuivARB">
        <param name="size" type="GLint" counter="true"/>
        <param name="indices" type="const GLuint *" count="size"/>
        <glx ignore="true" rop="4328"/>
    </function>

    <function name="MatrixIndexPointerARB">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>
</category>

<category name="GL_ARB_texture_env_combine" number="17">
    <enum name="COMBINE_ARB"                              value="0x8570"/>
    <enum name="COMBINE_RGB_ARB"                          value="0x8571"/>
    <enum name="COMBINE_ALPHA_ARB"                        value="0x8572"/>
    <enum name="SOURCE0_RGB_ARB"                          value="0x8580"/>
    <enum name="SOURCE1_RGB_ARB"                          value="0x8581"/>
    <enum name="SOURCE2_RGB_ARB"                          value="0x8582"/>
    <enum name="SOURCE0_ALPHA_ARB"                        value="0x8588"/>
    <enum name="SOURCE1_ALPHA_ARB"                        value="0x8589"/>
    <enum name="SOURCE2_ALPHA_ARB"                        value="0x858A"/>
    <enum name="OPERAND0_RGB_ARB"                         value="0x8590"/>
    <enum name="OPERAND1_RGB_ARB"                         value="0x8591"/>
    <enum name="OPERAND2_RGB_ARB"                         value="0x8592"/>
    <enum name="OPERAND0_ALPHA_ARB"                       value="0x8598"/>
    <enum name="OPERAND1_ALPHA_ARB"                       value="0x8599"/>
    <enum name="OPERAND2_ALPHA_ARB"                       value="0x859A"/>
    <enum name="RGB_SCALE_ARB"                            value="0x8573"/>
    <enum name="ADD_SIGNED_ARB"                           value="0x8574"/>
    <enum name="INTERPOLATE_ARB"                          value="0x8575"/>
    <enum name="SUBTRACT_ARB"                             value="0x84E7"/>
    <enum name="CONSTANT_ARB"                             value="0x8576"/>
    <enum name="PRIMARY_COLOR_ARB"                        value="0x8577"/>
    <enum name="PREVIOUS_ARB"                             value="0x8578"/>
</category>

<category name="GL_ARB_texture_env_crossbar" number="18">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_ARB_texture_env_dot3" number="19">
    <enum name="DOT3_RGB_ARB"                             value="0x86AE"/>
    <enum name="DOT3_RGBA_ARB"                            value="0x86AF"/>
</category>

<!-- ARB extension number 20 is a WGL extension. -->

<category name="GL_ARB_texture_mirrored_repeat" number="21">
    <enum name="MIRRORED_REPEAT_ARB"                      value="0x8370"/>
</category>

<category name="GL_ARB_depth_texture" number="22">
    <enum name="DEPTH_COMPONENT16_ARB"                    value="0x81A5"/>
    <enum name="DEPTH_COMPONENT24_ARB"                    value="0x81A6"/>
    <enum name="DEPTH_COMPONENT32_ARB"                    value="0x81A7"/>
    <enum name="TEXTURE_DEPTH_SIZE_ARB"        count="1"  value="0x884A">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="DEPTH_TEXTURE_MODE_ARB"        count="1"  value="0x884B">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<category name="GL_ARB_shadow" number="23">
    <enum name="TEXTURE_COMPARE_MODE_ARB"      count="1"  value="0x884C">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPARE_FUNC_ARB"      count="1"  value="0x884D">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="COMPARE_R_TO_TEXTURE_ARB"                 value="0x884E"/>
</category>

<category name="GL_ARB_shadow_ambient" number="24">
    <enum name="TEXTURE_COMPARE_FAIL_VALUE_ARB" count="1" value="0x80BF">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<category name="GL_ARB_window_pos" number="25">
    <function name="WindowPos2dARB" alias="WindowPos2dMESA">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="WindowPos2fARB" alias="WindowPos2fMESA">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="WindowPos2iARB" alias="WindowPos2iMESA">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
    </function>

    <function name="WindowPos2sARB" alias="WindowPos2sMESA">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="WindowPos2dvARB" alias="WindowPos2dvMESA">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="WindowPos2fvARB" alias="WindowPos2fvMESA">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="WindowPos2ivARB" alias="WindowPos2ivMESA">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="WindowPos2svARB" alias="WindowPos2svMESA">
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="WindowPos3dARB" alias="WindowPos3dMESA">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="WindowPos3fARB" alias="WindowPos3fMESA">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="WindowPos3iARB" alias="WindowPos3iMESA">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
    </function>

    <function name="WindowPos3sARB" alias="WindowPos3sMESA">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="WindowPos3dvARB" alias="WindowPos3dvMESA">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="WindowPos3fvARB" alias="WindowPos3fvMESA">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="WindowPos3ivARB" alias="WindowPos3ivMESA">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="WindowPos3svARB" alias="WindowPos3svMESA">
        <param name="v" type="const GLshort *"/>
    </function>
</category>

<category name="GL_ARB_vertex_program" number="26">
    <enum name="COLOR_SUM_ARB"                 count="1"  value="0x8458">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_PROGRAM_ARB"            count="1"  value="0x8620">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED_ARB" count="1" value="0x8622">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_SIZE_ARB"  count="1"  value="0x8623">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE_ARB" count="1" value="0x8624">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_TYPE_ARB"  count="1"  value="0x8625">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="CURRENT_VERTEX_ATTRIB_ARB"     count="1"  value="0x8626">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_LENGTH_ARB"            count="1"  value="0x8627">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_STRING_ARB"                       value="0x8628"/>
    <enum name="MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB" count="1" value="0x862E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_MATRICES_ARB"      count="1"  value="0x862F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_MATRIX_STACK_DEPTH_ARB" count="1" value="0x8640">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="CURRENT_MATRIX_ARB"            count="16" value="0x8641">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_PROGRAM_POINT_SIZE_ARB" count="1"  value="0x8642">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_PROGRAM_TWO_SIDE_ARB"   count="1"  value="0x8643">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_POINTER_ARB"          value="0x8645"/>
    <enum name="PROGRAM_ERROR_POSITION_ARB"    count="1"  value="0x864B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROGRAM_BINDING_ARB"           count="1"  value="0x8677">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_VERTEX_ATTRIBS_ARB"        count="1"  value="0x8869">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"       value="0x886A"/>
    <enum name="PROGRAM_ERROR_STRING_ARB"                 value="0x8874"/>
    <enum name="PROGRAM_FORMAT_ASCII_ARB"                 value="0x8875"/>
    <enum name="PROGRAM_FORMAT_ARB"            count="1"  value="0x8876">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_INSTRUCTIONS_ARB"      count="1"  value="0x88A0">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_INSTRUCTIONS_ARB"  count="1"  value="0x88A1">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A2">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A3">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_TEMPORARIES_ARB"       count="1"  value="0x88A4">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_TEMPORARIES_ARB"   count="1"  value="0x88A5">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A6">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A7">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_PARAMETERS_ARB"        count="1"  value="0x88A8">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_PARAMETERS_ARB"    count="1"  value="0x88A9">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_PARAMETERS_ARB" count="1"  value="0x88AA">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_PARAMETERS_ARB" count="1" value="0x88AB">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_ATTRIBS_ARB"           count="1"  value="0x88AC">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_ATTRIBS_ARB"       count="1"  value="0x88AD">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_ATTRIBS_ARB"    count="1"  value="0x88AE">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_ATTRIBS_ARB" count="1" value="0x88AF">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_ADDRESS_REGISTERS_ARB" count="1"  value="0x88B0">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_ADDRESS_REGISTERS_ARB" count="1" value="0x88B1">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B2">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B3">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_LOCAL_PARAMETERS_ARB" count="1" value="0x88B4">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_ENV_PARAMETERS_ARB" count="1" value="0x88B5">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_UNDER_NATIVE_LIMITS_ARB" count="1" value="0x88B6">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="TRANSPOSE_CURRENT_MATRIX_ARB"  count="16" value="0x88B7">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MATRIX0_ARB"                              value="0x88C0"/>
    <enum name="MATRIX1_ARB"                              value="0x88C1"/>
    <enum name="MATRIX2_ARB"                              value="0x88C2"/>
    <enum name="MATRIX3_ARB"                              value="0x88C3"/>
    <enum name="MATRIX4_ARB"                              value="0x88C4"/>
    <enum name="MATRIX5_ARB"                              value="0x88C5"/>
    <enum name="MATRIX6_ARB"                              value="0x88C6"/>
    <enum name="MATRIX7_ARB"                              value="0x88C7"/>
    <enum name="MATRIX8_ARB"                              value="0x88C8"/>
    <enum name="MATRIX9_ARB"                              value="0x88C9"/>
    <enum name="MATRIX10_ARB"                             value="0x88CA"/>
    <enum name="MATRIX11_ARB"                             value="0x88CB"/>
    <enum name="MATRIX12_ARB"                             value="0x88CC"/>
    <enum name="MATRIX13_ARB"                             value="0x88CD"/>
    <enum name="MATRIX14_ARB"                             value="0x88CE"/>
    <enum name="MATRIX15_ARB"                             value="0x88CF"/>
    <enum name="MATRIX16_ARB"                             value="0x88D0"/>
    <enum name="MATRIX17_ARB"                             value="0x88D1"/>
    <enum name="MATRIX18_ARB"                             value="0x88D2"/>
    <enum name="MATRIX19_ARB"                             value="0x88D3"/>
    <enum name="MATRIX20_ARB"                             value="0x88D4"/>
    <enum name="MATRIX21_ARB"                             value="0x88D5"/>
    <enum name="MATRIX22_ARB"                             value="0x88D6"/>
    <enum name="MATRIX23_ARB"                             value="0x88D7"/>
    <enum name="MATRIX24_ARB"                             value="0x88D8"/>
    <enum name="MATRIX25_ARB"                             value="0x88D9"/>
    <enum name="MATRIX26_ARB"                             value="0x88DA"/>
    <enum name="MATRIX27_ARB"                             value="0x88DB"/>
    <enum name="MATRIX28_ARB"                             value="0x88DC"/>
    <enum name="MATRIX29_ARB"                             value="0x88DD"/>
    <enum name="MATRIX30_ARB"                             value="0x88DE"/>
    <enum name="MATRIX31_ARB"                             value="0x88DF"/>

    <function name="GetVertexAttribdvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
        <glx handcode="client" vendorpriv="1301"/>
    </function>

    <function name="GetVertexAttribfvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx handcode="client" vendorpriv="1302"/>
    </function>

    <function name="GetVertexAttribivARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx handcode="client" vendorpriv="1303"/>
    </function>

    <function name="VertexAttrib1dARB" offset="assign" vectorequiv="VertexAttrib1dvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
    </function>

    <function name="VertexAttrib1dvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="1"/>
        <glx rop="4197" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib1fARB" offset="assign" vectorequiv="VertexAttrib1fvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
    </function>

    <function name="VertexAttrib1fvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="1"/>
        <glx rop="4193"/>
    </function>

    <function name="VertexAttrib1sARB" offset="assign" vectorequiv="VertexAttrib1svARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
    </function>

    <function name="VertexAttrib1svARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="1"/>
        <glx rop="4189"/>
    </function>

    <function name="VertexAttrib2dARB" offset="assign" vectorequiv="VertexAttrib2dvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="VertexAttrib2dvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="4198" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib2fARB" offset="assign" vectorequiv="VertexAttrib2fvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="VertexAttrib2fvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="4194"/>
    </function>

    <function name="VertexAttrib2sARB" offset="assign" vectorequiv="VertexAttrib2svARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="VertexAttrib2svARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="4190"/>
    </function>

    <function name="VertexAttrib3dARB" offset="assign" vectorequiv="VertexAttrib3dvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="VertexAttrib3dvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="4199" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib3fARB" offset="assign" vectorequiv="VertexAttrib3fvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="VertexAttrib3fvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="4195"/>
    </function>

    <function name="VertexAttrib3sARB" offset="assign" vectorequiv="VertexAttrib3svARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="VertexAttrib3svARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="4191"/>
    </function>

    <function name="VertexAttrib4dARB" offset="assign" vectorequiv="VertexAttrib4dvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="VertexAttrib4dvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="4200" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib4fARB" offset="assign" vectorequiv="VertexAttrib4fvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="VertexAttrib4fvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="4196"/>
    </function>

    <function name="VertexAttrib4sARB" offset="assign" vectorequiv="VertexAttrib4svARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
    </function>

    <function name="VertexAttrib4svARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="4192"/>
    </function>

    <function name="VertexAttrib4NubARB" offset="assign" vectorequiv="VertexAttrib4NubvARB">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLubyte"/>
        <param name="y" type="GLubyte"/>
        <param name="z" type="GLubyte"/>
        <param name="w" type="GLubyte"/>
    </function>

    <function name="VertexAttrib4NubvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLubyte *" count="4"/>
        <glx rop="4201"/>
    </function>

    <function name="VertexAttrib4bvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLbyte *" count="4"/>
        <glx rop="4230"/>
    </function>

    <function name="VertexAttrib4ivARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="4231"/>
    </function>

    <function name="VertexAttrib4ubvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLubyte *" count="4"/>
        <glx rop="4232"/>
    </function>

    <function name="VertexAttrib4usvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLushort *" count="4"/>
        <glx rop="4233"/>
    </function>

    <function name="VertexAttrib4uivARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLuint *" count="4"/>
        <glx rop="4234"/>
    </function>

    <function name="VertexAttrib4NbvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLbyte *" count="4"/>
        <glx rop="4235"/>
    </function>

    <function name="VertexAttrib4NsvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="4236"/>
    </function>

    <function name="VertexAttrib4NivARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLint *" count="4"/>
        <glx rop="4237"/>
    </function>

    <function name="VertexAttrib4NusvARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLushort *" count="4"/>
        <glx rop="4238"/>
    </function>

    <function name="VertexAttrib4NuivARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLuint *" count="4"/>
        <glx rop="4239"/>
    </function>

    <function name="VertexAttribPointerARB" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="normalized" type="GLboolean"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="EnableVertexAttribArrayARB" offset="assign">
        <param name="index" type="GLuint"/>
        <glx handcode="true"/>
    </function>

    <function name="DisableVertexAttribArrayARB" offset="assign">
        <param name="index" type="GLuint"/>
        <glx handcode="true"/>
    </function>

    <function name="ProgramStringARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="string" type="const GLvoid *" count="len"/>
        <glx rop="4217" large="true"/>
    </function>

    <function name="BindProgramARB" alias="BindProgramNV">
        <param name="target" type="GLenum"/>
        <param name="program" type="GLuint"/>
    </function>

    <function name="DeleteProgramsARB" alias="DeleteProgramsNV">
        <param name="n" type="GLsizei"/>
        <param name="programs" type="const GLuint *"/>
    </function>

    <function name="GenProgramsARB" alias="GenProgramsNV">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="programs" type="GLuint *" output="true" count="n"/>
    </function>

    <function name="IsProgramARB" alias="IsProgramNV">
        <param name="program" type="GLuint"/>
        <return type="GLboolean"/>
    </function>

    <function name="ProgramEnvParameter4dARB" offset="assign" vectorequiv="ProgramEnvParameter4dvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="ProgramEnvParameter4dvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLdouble *" count="4"/>
        <glx rop="4185" doubles_in_order="true"/>
    </function>

    <function name="ProgramEnvParameter4fARB" offset="assign" vectorequiv="ProgramEnvParameter4fvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="ProgramEnvParameter4fvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLfloat *" count="4"/>
        <glx rop="4184"/>
    </function>

    <function name="ProgramLocalParameter4dARB" offset="assign" vectorequiv="ProgramLocalParameter4dvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="ProgramLocalParameter4dvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLdouble *" count="4"/>
        <glx rop="4216" doubles_in_order="true"/>
    </function>

    <function name="ProgramLocalParameter4fARB" offset="assign" vectorequiv="ProgramLocalParameter4fvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="ProgramLocalParameter4fvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLfloat *" count="4"/>
        <glx rop="4215"/>
    </function>

    <!-- The GetProgramEnvParameter[df]vARB are handcoded because there
         is an extra CARD32 of padding after the "index" field.  Originally,
         GetProgranEnvParameter[df]vARB and GetProgramParameter[df]vNV
         shared the same GLX protocol.  The pad field was where the pname
         parameter was in the NV functions.  When this error was discovered
         and fixed, there was already at least one implementation of
         GLX protocol for ARB_vertex_program, but there were no
         implementations of NV_vertex_program.  The sollution was to renumber
         the opcodes for NV_vertex_program and convert the unused field in
         the ARB_vertex_program protocol to unused padding.
      -->

    <function name="GetProgramEnvParameterdvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="GLdouble *" output="true" count="4"/>
        <glx vendorpriv="1297" handcode="client" doubles_in_order="true"/>
    </function>

    <function name="GetProgramEnvParameterfvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="GLfloat *" output="true" count="4"/>
        <glx vendorpriv="1296" handcode="client"/>
    </function>

    <function name="GetProgramLocalParameterdvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="GLdouble *" output="true" count="4"/>
        <glx vendorpriv="1306" handcode="client" doubles_in_order="true"/>
    </function>

    <function name="GetProgramLocalParameterfvARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="GLfloat *" output="true" count="4"/>
        <glx vendorpriv="1305" handcode="client"/>
    </function>


    <function name="GetProgramivARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="1307"/>
    </function>

    <function name="GetProgramStringARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="string" type="GLvoid *" output="true"/>
        <glx vendorpriv="1308" handcode="server" always_array="true"/>
    </function>

    <function name="GetVertexAttribPointervARB" alias="GetVertexAttribPointervNV">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="pointer" type="GLvoid **" output="true"/>
    </function>
</category>

<category name="GL_ARB_fragment_program" number="27">
    <enum name="FRAGMENT_PROGRAM_ARB"          count="1"  value="0x8804">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROGRAM_ALU_INSTRUCTIONS_ARB"  count="1"  value="0x8805">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_TEX_INSTRUCTIONS_ARB"  count="1"  value="0x8806">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_TEX_INDIRECTIONS_ARB"  count="1"  value="0x8807">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x8808">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x8809">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x880A">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_ALU_INSTRUCTIONS_ARB" count="1" value="0x880B">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_TEX_INSTRUCTIONS_ARB" count="1" value="0x880C">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_TEX_INDIRECTIONS_ARB" count="1" value="0x880D">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x880E">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x880F">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x8810">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_COORDS_ARB"        count="1"  value="0x8871">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_IMAGE_UNITS_ARB"   count="1"  value="0x8872">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_ARB_vertex_buffer_object" number="28">
    <enum name="BUFFER_SIZE_ARB"               count="1"  value="0x8764">
        <size name="GetBufferParameterivARB" mode="get"/>
    </enum>
    <enum name="BUFFER_USAGE_ARB"              count="1"  value="0x8765">
        <size name="GetBufferParameterivARB" mode="get"/>
    </enum>
    <enum name="ARRAY_BUFFER_BINDING_ARB"      count="1"  value="0x8894">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ELEMENT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8895">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8896">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="NORMAL_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8897">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8898">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="INDEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8899">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="WEIGHT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889F">
        <size name="GetVertexAttribdvARB" mode="get"/>
        <size name="GetVertexAttribfvARB" mode="get"/>
        <size name="GetVertexAttribivARB" mode="get"/>
    </enum>
    <enum name="READ_ONLY_ARB"                            value="0x88B8"/>
    <enum name="WRITE_ONLY_ARB"                           value="0x88B9"/>
    <enum name="READ_WRITE_ARB"                           value="0x88BA"/>
    <enum name="BUFFER_ACCESS_ARB"             count="1"  value="0x88BB">
        <size name="GetBufferParameterivARB" mode="get"/>
    </enum>
    <enum name="BUFFER_MAPPED_ARB"             count="1"  value="0x88BC">
        <size name="GetBufferParameterivARB" mode="get"/>
    </enum>
    <enum name="BUFFER_MAP_POINTER_ARB"                   value="0x88BD"/>
    <enum name="STREAM_DRAW_ARB"                          value="0x88E0"/>
    <enum name="STREAM_READ_ARB"                          value="0x88E1"/>
    <enum name="STREAM_COPY_ARB"                          value="0x88E2"/>
    <enum name="STATIC_DRAW_ARB"                          value="0x88E4"/>
    <enum name="STATIC_READ_ARB"                          value="0x88E5"/>
    <enum name="STATIC_COPY_ARB"                          value="0x88E6"/>
    <enum name="DYNAMIC_DRAW_ARB"                         value="0x88E8"/>
    <enum name="DYNAMIC_READ_ARB"                         value="0x88E9"/>
    <enum name="DYNAMIC_COPY_ARB"                         value="0x88EA"/>

    <type name="intptrARB"   size="4"                  glx_name="CARD32"/>
    <type name="sizeiptrARB" size="4"  unsigned="true" glx_name="CARD32"/>

    <function name="BindBufferARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="buffer" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="BufferDataARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="size" type="GLsizeiptrARB" counter="true"/>
        <param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
        <param name="usage" type="GLenum"/>
        <glx ignore="true"/>
    </function>

    <function name="BufferSubDataARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="offset" type="GLintptrARB"/>
        <param name="size" type="GLsizeiptrARB" counter="true"/>
        <param name="data" type="const GLvoid *" count="size"/>
        <glx ignore="true"/>
    </function>

    <function name="DeleteBuffersARB" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="buffer" type="const GLuint *" count="n"/>
        <glx ignore="true"/>
    </function>

    <function name="GenBuffersARB" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="buffer" type="GLuint *" output="true" count="n"/>
        <glx ignore="true"/>
    </function>

    <function name="GetBufferParameterivARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetBufferPointervARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLvoid **" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetBufferSubDataARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="offset" type="GLintptrARB"/>
        <param name="size" type="GLsizeiptrARB" counter="true"/>
        <param name="data" type="GLvoid *" output="true" count="size"/>
        <glx ignore="true"/>
    </function>

    <function name="IsBufferARB" offset="assign">
        <param name="buffer" type="GLuint"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>

    <function name="MapBufferARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="access" type="GLenum"/>
        <return type="GLvoid *"/>
        <glx ignore="true"/>
    </function>

    <function name="UnmapBufferARB" offset="assign">
        <param name="target" type="GLenum"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_ARB_occlusion_query" number="29">
    <enum name="QUERY_COUNTER_BITS_ARB"        count="1"  value="0x8864">
        <size name="GetQueryivARB" mode="get"/>
    </enum>
    <enum name="CURRENT_QUERY_ARB"             count="1"  value="0x8865">
        <size name="GetQueryivARB" mode="get"/>
    </enum>
    <enum name="QUERY_RESULT_ARB"              count="1"  value="0x8866">
        <size name="GetQueryObjectivARB" mode="get"/>
        <size name="GetQueryObjectuivARB" mode="get"/>
    </enum>
    <enum name="QUERY_RESULT_AVAILABLE_ARB"    count="1"  value="0x8867">
        <size name="GetQueryObjectivARB" mode="get"/>
        <size name="GetQueryObjectuivARB" mode="get"/>
    </enum>
    <enum name="SAMPLES_PASSED_ARB"                       value="0x8914"/>

    <function name="GenQueriesARB" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="ids" type="GLuint *" output="true" count="n"/>
        <glx sop="162" always_array="true"/>
    </function>

    <function name="DeleteQueriesARB" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="ids" type="const GLuint *" count="n"/>
        <glx sop="161"/>
    </function>

    <function name="IsQueryARB" offset="assign">
        <param name="id" type="GLuint"/>
        <return type="GLboolean"/>
        <glx sop="163"/>
    </function>

    <function name="BeginQueryARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="id" type="GLuint"/>
        <glx rop="231"/>
    </function>

    <function name="EndQueryARB" offset="assign">
        <param name="target" type="GLenum"/>
        <glx rop="232"/>
    </function>

    <function name="GetQueryivARB" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="164"/>
    </function>

    <function name="GetQueryObjectivARB" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx sop="165"/>
    </function>

    <function name="GetQueryObjectuivARB" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
        <glx sop="166"/>
    </function>
</category>

<category name="GL_ARB_shader_objects" number="30">
    <enum name="PROGRAM_OBJECT_ARB"                       value="0x8B40"/>
    <enum name="SHADER_OBJECT_ARB"                        value="0x8B48"/>
    <enum name="OBJECT_TYPE_ARB"                          value="0x8B4E"/>
    <enum name="OBJECT_SUBTYPE_ARB"                       value="0x8B4F"/>
    <enum name="FLOAT_VEC2_ARB"                           value="0x8B50"/>
    <enum name="FLOAT_VEC3_ARB"                           value="0x8B51"/>
    <enum name="FLOAT_VEC4_ARB"                           value="0x8B52"/>
    <enum name="INT_VEC2_ARB"                             value="0x8B53"/>
    <enum name="INT_VEC3_ARB"                             value="0x8B54"/>
    <enum name="INT_VEC4_ARB"                             value="0x8B55"/>
    <enum name="BOOL_ARB"                                 value="0x8B56"/>
    <enum name="BOOL_VEC2_ARB"                            value="0x8B57"/>
    <enum name="BOOL_VEC3_ARB"                            value="0x8B58"/>
    <enum name="BOOL_VEC4_ARB"                            value="0x8B59"/>
    <enum name="FLOAT_MAT2_ARB"                           value="0x8B5A"/>
    <enum name="FLOAT_MAT3_ARB"                           value="0x8B5B"/>
    <enum name="FLOAT_MAT4_ARB"                           value="0x8B5C"/>
    <enum name="OBJECT_DELETE_STATUS_ARB"                 value="0x8B80"/>
    <enum name="OBJECT_COMPILE_STATUS_ARB"                value="0x8B81"/>
    <enum name="OBJECT_LINK_STATUS_ARB"                   value="0x8B82"/>
    <enum name="OBJECT_VALIDATE_STATUS_ARB"               value="0x8B83"/>
    <enum name="OBJECT_INFO_LOG_LENGTH_ARB"               value="0x8B84"/>
    <enum name="OBJECT_ATTACHED_OBJECTS_ARB"              value="0x8B85"/>
    <enum name="OBJECT_ACTIVE_UNIFORMS_ARB"               value="0x8B86"/>
    <enum name="OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"     value="0x8B87"/>
    <enum name="OBJECT_SHADER_SOURCE_LENGTH_ARB"          value="0x8B88"/>

    <type name="charARB"   size="1" glx_name="CARD8"/>
    <type name="handleARB" size="4" glx_name="CARD32"/>

    <function name="DeleteObjectARB" offset="assign">
        <param name="obj" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="GetHandleARB" offset="assign">
        <param name="pname" type="GLenum"/>
        <return type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="DetachObjectARB" offset="assign">
        <param name="containerObj" type="GLhandleARB"/>
        <param name="attachedObj" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="CreateShaderObjectARB" offset="assign">
        <param name="shaderType" type="GLenum"/>
        <return type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="ShaderSourceARB" offset="assign">
        <param name="shader" type="GLhandleARB"/>
        <param name="count" type="GLsizei"/>
        <param name="string" type="const GLcharARB **"/>
        <param name="length" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="CompileShaderARB" offset="assign">
        <param name="shader" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="CreateProgramObjectARB" offset="assign">
        <return type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="AttachObjectARB" offset="assign">
        <param name="containerObj" type="GLhandleARB"/>
        <param name="obj" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="LinkProgramARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="UseProgramObjectARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="ValidateProgramARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1fARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform2fARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform3fARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform4fARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLfloat"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <param name="v3" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1iARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform2iARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform3iARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <param name="v2" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform4iARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="v0" type="GLint"/>
        <param name="v1" type="GLint"/>
        <param name="v2" type="GLint"/>
        <param name="v3" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform2fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform3fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform4fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform1ivARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform2ivARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform3ivARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="Uniform4ivARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="value" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="UniformMatrix2fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="UniformMatrix3fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="UniformMatrix4fvARB" offset="assign">
        <param name="location" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="transpose" type="GLboolean"/>
        <param name="value" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetObjectParameterfvARB" offset="assign">
        <param name="obj" type="GLhandleARB"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetObjectParameterivARB" offset="assign">
        <param name="obj" type="GLhandleARB"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetInfoLogARB" offset="assign">
        <param name="obj" type="GLhandleARB"/>
        <param name="maxLength" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="infoLog" type="GLcharARB *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetAttachedObjectsARB" offset="assign">
        <param name="containerObj" type="GLhandleARB"/>
        <param name="maxLength" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="infoLog" type="GLhandleARB *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformLocationARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="name" type="const GLcharARB *"/>
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="GetActiveUniformARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="index" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="size" type="GLint *" output="true"/>
        <param name="type" type="GLenum *" output="true"/>
        <param name="name" type="GLcharARB *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformfvARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="location" type="GLint"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetUniformivARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="location" type="GLint"/>
        <param name="params" type="GLint *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetShaderSourceARB" offset="assign">
        <param name="shader" type="GLhandleARB"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="source" type="GLcharARB *" output="true"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_ARB_vertex_shader" number="31">
    <enum name="VERTEX_SHADER_ARB"                        value="0x8B31"/>
    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS_ARB"        value="0x8B4A"/>
    <enum name="MAX_VARYING_FLOATS_ARB"                   value="0x8B4B"/>
    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"       value="0x8B4C"/>
    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"     value="0x8B4D"/>
    <enum name="OBJECT_ACTIVE_ATTRIBUTES_ARB"             value="0x8B89"/>
    <enum name="OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"   value="0x8B8A"/>

    <function name="BindAttribLocationARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="index" type="GLuint"/>
        <param name="name" type="const GLcharARB *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetActiveAttribARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="index" type="GLuint"/>
        <param name="bufSize" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="size" type="GLint *" output="true"/>
        <param name="type" type="GLenum *" output="true"/>
        <param name="name" type="GLcharARB *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="GetAttribLocationARB" offset="assign">
        <param name="program" type="GLhandleARB"/>
        <param name="name" type="const GLcharARB *"/>
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_ARB_fragment_shader" number="32">
    <enum name="FRAGMENT_SHADER_ARB"                      value="0x8B30"/>
    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB"      value="0x8B49"/>
</category>

<category name="GL_ARB_shading_language_100" number="33">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_ARB_texture_non_power_of_two" number="34">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_ARB_point_sprite" number="35">
    <enum name="POINT_SPRITE_ARB"              count="1"  value="0x8861">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COORD_REPLACE_ARB"             count="1"  value="0x8862">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
</category>

<category name="GL_ARB_fragment_program_shadow" number="36">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_ARB_draw_buffers" number="37">
    <enum name="MAX_DRAW_BUFFERS_ARB"          count="1"  value="0x8824">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER0_ARB"              count="1"  value="0x8825">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER1_ARB"              count="1"  value="0x8826">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER2_ARB"              count="1"  value="0x8827">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER3_ARB"              count="1"  value="0x8828">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER4_ARB"              count="1"  value="0x8829">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER5_ARB"              count="1"  value="0x882A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER6_ARB"              count="1"  value="0x882B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER7_ARB"              count="1"  value="0x882C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER8_ARB"              count="1"  value="0x882D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER9_ARB"              count="1"  value="0x882E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER10_ARB"             count="1"  value="0x882F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER11_ARB"             count="1"  value="0x8830">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER12_ARB"             count="1"  value="0x8831">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER13_ARB"             count="1"  value="0x8832">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER14_ARB"             count="1"  value="0x8833">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER15_ARB"             count="1"  value="0x8834">
        <size name="Get" mode="get"/>
    </enum>

    <function name="DrawBuffersARB" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="bufs" type="const GLenum *" count="n"/>
        <glx rop="233" large="true"/>
    </function>
</category>

<category name="GL_ARB_texture_rectangle" number="38">
    <enum name="TEXTURE_RECTANGLE_ARB"         count="1"  value="0x84F5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_RECTANGLE_ARB" count="1"  value="0x84F6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROXY_TEXTURE_RECTANGLE_ARB"              value="0x84F7"/>
    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_ARB" count="1" value="0x84F8">
        <size name="Get" mode="get"/>
    </enum>
</category>

<xi:include href="ARB_ES2_compatibility.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_copy_buffer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_depth_clamp.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_map_buffer_range.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_sync.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_seamless_cube_map.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_draw_elements_base_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="NV_conditional_render.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="NV_primitive_restart.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="NV_texture_barrier.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_sampler_objects.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_transform_feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_draw_instanced.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_geometry_shader4.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_color_buffer_float.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<!-- Non-ARB extensions sorted by extension number. -->

<category name="GL_EXT_blend_color" number="2">
    <enum name="CONSTANT_COLOR_EXT"                       value="0x8001"/>
    <enum name="ONE_MINUS_CONSTANT_COLOR_EXT"             value="0x8002"/>
    <enum name="CONSTANT_ALPHA_EXT"                       value="0x8003"/>
    <enum name="ONE_MINUS_CONSTANT_ALPHA_EXT"             value="0x8004"/>
    <enum name="BLEND_COLOR_EXT"               count="4"  value="0x8005">
        <size name="Get" mode="get"/>
    </enum>

    <function name="BlendColorEXT" alias="BlendColor">
        <param name="red" type="GLclampf"/>
        <param name="green" type="GLclampf"/>
        <param name="blue" type="GLclampf"/>
        <param name="alpha" type="GLclampf"/>
    </function>
</category>

<category name="GL_EXT_polygon_offset" number="3">
    <function name="PolygonOffsetEXT" offset="assign">
        <param name="factor" type="GLfloat"/>
        <param name="bias" type="GLfloat"/>
        <glx rop="4098" ignore="true"/>
    </function>
</category>

<category name="GL_EXT_texture" number="4">
    <enum name="ALPHA4_EXT"                               value="0x803B"/>
    <enum name="ALPHA8_EXT"                               value="0x803C"/>
    <enum name="ALPHA12_EXT"                              value="0x803D"/>
    <enum name="ALPHA16_EXT"                              value="0x803E"/>
    <enum name="LUMINANCE4_EXT"                           value="0x803F"/>
    <enum name="LUMINANCE8_EXT"                           value="0x8040"/>
    <enum name="LUMINANCE12_EXT"                          value="0x8041"/>
    <enum name="LUMINANCE16_EXT"                          value="0x8042"/>
    <enum name="LUMINANCE4_ALPHA4_EXT"                    value="0x8043"/>
    <enum name="LUMINANCE6_ALPHA2_EXT"                    value="0x8044"/>
    <enum name="LUMINANCE8_ALPHA8_EXT"                    value="0x8045"/>
    <enum name="LUMINANCE12_ALPHA4_EXT"                   value="0x8046"/>
    <enum name="LUMINANCE12_ALPHA12_EXT"                  value="0x8047"/>
    <enum name="LUMINANCE16_ALPHA16_EXT"                  value="0x8048"/>
    <enum name="INTENSITY_EXT"                            value="0x8049"/>
    <enum name="INTENSITY4_EXT"                           value="0x804A"/>
    <enum name="INTENSITY8_EXT"                           value="0x804B"/>
    <enum name="INTENSITY12_EXT"                          value="0x804C"/>
    <enum name="INTENSITY16_EXT"                          value="0x804D"/>
    <enum name="RGB2_EXT"                                 value="0x804E"/>
    <enum name="RGB4_EXT"                                 value="0x804F"/>
    <enum name="RGB5_EXT"                                 value="0x8050"/>
    <enum name="RGB8_EXT"                                 value="0x8051"/>
    <enum name="RGB10_EXT"                                value="0x8052"/>
    <enum name="RGB12_EXT"                                value="0x8053"/>
    <enum name="RGB16_EXT"                                value="0x8054"/>
    <enum name="RGBA2_EXT"                                value="0x8055"/>
    <enum name="RGBA4_EXT"                                value="0x8056"/>
    <enum name="RGB5_A1_EXT"                              value="0x8057"/>
    <enum name="RGBA8_EXT"                                value="0x8058"/>
    <enum name="RGB10_A2_EXT"                             value="0x8059"/>
    <enum name="RGBA12_EXT"                               value="0x805A"/>
    <enum name="RGBA16_EXT"                               value="0x805B"/>
    <enum name="TEXTURE_RED_SIZE_EXT"          count="1"  value="0x805C">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_GREEN_SIZE_EXT"        count="1"  value="0x805D">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_BLUE_SIZE_EXT"         count="1"  value="0x805E">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_ALPHA_SIZE_EXT"        count="1"  value="0x805F">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_LUMINANCE_SIZE_EXT"    count="1"  value="0x8060">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_INTENSITY_SIZE_EXT"    count="1"  value="0x8061">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>
    <enum name="REPLACE_EXT"                              value="0x8062"/>
    <enum name="PROXY_TEXTURE_1D_EXT"                     value="0x8063"/>
    <enum name="PROXY_TEXTURE_2D_EXT"                     value="0x8064"/>
    <enum name="TEXTURE_TOO_LARGE_EXT"                    value="0x8065"/>
</category>

<!-- Extension number 5 is not listed in the extension registry. -->

<category name="GL_EXT_texture3D" number="6">
    <function name="TexImage3DEXT" alias="TexImage3D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *"/>
    </function>

    <function name="TexSubImage3DEXT" alias="TexSubImage3D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *"/>
    </function>
</category>

<category name="GL_SGIS_texture_filter4" number="7">
    <function name="GetTexFilterFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="filter" type="GLenum"/>
        <param name="weights" type="GLfloat *" output="true"/>
        <glx vendorpriv="4101" ignore="true"/>
    </function>

    <function name="TexFilterFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="filter" type="GLenum"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="weights" type="const GLfloat *" count="n"/>
        <glx rop="2064" ignore="true"/>
    </function>
</category>

<!-- Extension number 8 is not listed in the extension registry. -->

<category name="GL_EXT_subtexture" number="9">
    <function name="TexSubImage1DEXT" alias="TexSubImage1D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *"/>
    </function>

    <function name="TexSubImage2DEXT" alias="TexSubImage2D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *"/>
    </function>
</category>

<category name="GL_EXT_copy_texture" number="10">
    <function name="CopyTexImage1DEXT" alias="CopyTexImage1D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="border" type="GLint"/>
    </function>

    <function name="CopyTexImage2DEXT" alias="CopyTexImage2D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="border" type="GLint"/>
    </function>

    <function name="CopyTexSubImage1DEXT" alias="CopyTexSubImage1D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
    </function>

    <function name="CopyTexSubImage2DEXT" alias="CopyTexSubImage2D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
    </function>

    <function name="CopyTexSubImage3DEXT" alias="CopyTexSubImage3D">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
    </function>
</category>

<category name="GL_EXT_histogram" number="11">
    <enum name="HISTOGRAM_EXT"                            value="0x8024"/>
    <enum name="PROXY_HISTOGRAM_EXT"                      value="0x8025"/>
    <enum name="HISTOGRAM_WIDTH_EXT"           count="1"  value="0x8026">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_FORMAT_EXT"          count="1"  value="0x8027">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_RED_SIZE_EXT"        count="1"  value="0x8028">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_GREEN_SIZE_EXT"      count="1"  value="0x8029">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_BLUE_SIZE_EXT"       count="1"  value="0x802A">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_ALPHA_SIZE_EXT"      count="1"  value="0x802B">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_LUMINANCE_SIZE_EXT"  count="1"  value="0x802C">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="HISTOGRAM_SINK_EXT"            count="1"  value="0x802D">
        <size name="GetHistogramParameterfvEXT" mode="get"/>
        <size name="GetHistogramParameterivEXT" mode="get"/>
    </enum>
    <enum name="MINMAX_EXT"                               value="0x802E"/>
    <enum name="MINMAX_FORMAT_EXT"             count="1"  value="0x802F">
        <size name="GetMinmaxParameterfvEXT" mode="get"/>
        <size name="GetMinmaxParameterivEXT" mode="get"/>
    </enum>
    <enum name="MINMAX_SINK_EXT"               count="1"  value="0x8030">
        <size name="GetMinmaxParameterfvEXT" mode="get"/>
        <size name="GetMinmaxParameterivEXT" mode="get"/>
    </enum>
    <enum name="TABLE_TOO_LARGE_EXT"                      value="0x8031"/>

    <function name="GetHistogramEXT" alias="GetHistogram" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="reset" type="GLboolean"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
        <glx vendorpriv="5" dimensions_in_reply="true" img_reset="reset"/>
    </function>

    <function name="GetHistogramParameterfvEXT" alias="GetHistogramParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="6"/>
    </function>

    <function name="GetHistogramParameterivEXT" alias="GetHistogramParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="7"/>
    </function>

    <function name="GetMinmaxEXT" alias="GetMinmax" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="reset" type="GLboolean"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
        <glx vendorpriv="8" img_reset="reset"/>
    </function>

    <function name="GetMinmaxParameterfvEXT" alias="GetMinmaxParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="9"/>
    </function>

    <function name="GetMinmaxParameterivEXT" alias="GetMinmaxParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="10"/>
    </function>

    <function name="HistogramEXT" alias="Histogram" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="internalformat" type="GLenum"/>
        <param name="sink" type="GLboolean"/>
    </function>

    <function name="MinmaxEXT" alias="Minmax" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="sink" type="GLboolean"/>
    </function>

    <function name="ResetHistogramEXT" alias="ResetHistogram" static_dispatch="false">
        <param name="target" type="GLenum"/>
    </function>

    <function name="ResetMinmaxEXT" alias="ResetMinmax" static_dispatch="false">
        <param name="target" type="GLenum"/>
    </function>
</category>

<category name="GL_EXT_convolution" number="12">
    <enum name="CONVOLUTION_BORDER_MODE_EXT"   count="1"  value="0x8013">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_FILTER_SCALE_EXT"  count="4"  value="0x8014">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_FILTER_BIAS_EXT"   count="4"  value="0x8015">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="REDUCE_EXT"                               value="0x8016"/>
    <enum name="CONVOLUTION_FORMAT_EXT"        count="1"  value="0x8017">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_WIDTH_EXT"         count="1"  value="0x8018">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="CONVOLUTION_HEIGHT_EXT"        count="1"  value="0x8019">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
    <enum name="MAX_CONVOLUTION_WIDTH_EXT"     count="1"  value="0x801A">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_CONVOLUTION_HEIGHT_EXT"    count="1"  value="0x801B">
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_RED_SCALE_EXT" count="1" value="0x801C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_GREEN_SCALE_EXT" count="1" value="0x801D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_BLUE_SCALE_EXT" count="1" value="0x801E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_ALPHA_SCALE_EXT" count="1" value="0x801F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_RED_BIAS_EXT" count="1"  value="0x8020">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_GREEN_BIAS_EXT" count="1" value="0x8021">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_BLUE_BIAS_EXT" count="1" value="0x8022">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="POST_CONVOLUTION_ALPHA_BIAS_EXT" count="1" value="0x8023">
        <size name="Get" mode="get"/>
    </enum>

    <function name="ConvolutionFilter1DEXT" alias="ConvolutionFilter1D" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="const GLvoid *"/>
    </function>

    <function name="ConvolutionFilter2DEXT" alias="ConvolutionFilter2D" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="const GLvoid *"/>
    </function>

    <function name="ConvolutionParameterfEXT" alias="ConvolutionParameterf" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat"/>
    </function>

    <function name="ConvolutionParameterfvEXT" alias="ConvolutionParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="ConvolutionParameteriEXT" alias="ConvolutionParameteri" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint"/>
    </function>

    <function name="ConvolutionParameterivEXT" alias="ConvolutionParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="CopyConvolutionFilter1DEXT" alias="CopyConvolutionFilter1D" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
    </function>

    <function name="CopyConvolutionFilter2DEXT" alias="CopyConvolutionFilter2D" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
    </function>

    <function name="GetConvolutionFilterEXT" alias="GetConvolutionFilter" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
        <glx vendorpriv="1" dimensions_in_reply="true"/>
    </function>

    <function name="GetConvolutionParameterfvEXT" alias="GetConvolutionParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="2"/>
    </function>

    <function name="GetConvolutionParameterivEXT" alias="GetConvolutionParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="3"/>
    </function>

    <function name="GetSeparableFilterEXT" alias="GetSeparableFilter" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="row" type="GLvoid *" output="true"/>
        <param name="column" type="GLvoid *" output="true"/>
        <param name="span" type="GLvoid *" output="true"/>
        <glx vendorpriv="4" handcode="true"/>
    </function>

    <function name="SeparableFilter2DEXT" alias="SeparableFilter2D" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="row" type="const GLvoid *"/>
        <param name="column" type="const GLvoid *"/>
    </function>
</category>

<category name="GL_SGI_color_matrix" number="13">
    <enum name="COLOR_MATRIX_SGI"                         value="0x80B1"/>
    <enum name="COLOR_MATRIX_STACK_DEPTH_SGI"             value="0x80B2"/>
    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH_SGI"         value="0x80B3"/>
    <enum name="POST_COLOR_MATRIX_RED_SCALE_SGI"          value="0x80B4"/>
    <enum name="POST_COLOR_MATRIX_GREEN_SCALE_SGI"        value="0x80B5"/>
    <enum name="POST_COLOR_MATRIX_BLUE_SCALE_SGI"         value="0x80B6"/>
    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE_SGI"        value="0x80B7"/>
    <enum name="POST_COLOR_MATRIX_RED_BIAS_SGI"           value="0x80B8"/>
    <enum name="POST_COLOR_MATRIX_GREEN_BIAS_SGI"         value="0x80B9"/>
    <enum name="POST_COLOR_MATRIX_BLUE_BIAS_SGI"          value="0x80BA"/>
    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS_SGI"         value="0x80BB"/>
</category>

<category name="GL_SGI_color_table" number="14">
    <enum name="COLOR_TABLE_SCALE_SGI"         count="4"  value="0x80D6">
        <size name="ColorTableParameterfvSGI"/>
        <size name="ColorTableParameterivSGI"/>
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_BIAS_SGI"          count="4"  value="0x80D7">
        <size name="ColorTableParameterfvSGI"/>
        <size name="ColorTableParameterivSGI"/>
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_FORMAT_SGI"        count="1"  value="0x80D8">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_WIDTH_SGI"         count="1"  value="0x80D9">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_RED_SIZE_SGI"      count="1"  value="0x80DA">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_GREEN_SIZE_SGI"    count="1"  value="0x80DB">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_BLUE_SIZE_SGI"     count="1"  value="0x80DC">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_ALPHA_SIZE_SGI"    count="1"  value="0x80DD">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_LUMINANCE_SIZE_SGI" count="1" value="0x80DE">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_INTENSITY_SIZE_SGI" count="1" value="0x80DF">
        <size name="GetColorTableParameterfvSGI" mode="get"/>
        <size name="GetColorTableParameterivSGI" mode="get"/>
    </enum>

    <function name="ColorTableSGI" alias="ColorTable" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="const GLvoid *"/>
    </function>

    <function name="ColorTableParameterfvSGI" alias="ColorTableParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="ColorTableParameterivSGI" alias="ColorTableParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="CopyColorTableSGI" alias="CopyColorTable" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
    </function>

    <function name="GetColorTableSGI" alias="GetColorTable" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
        <glx vendorpriv="4098" dimensions_in_reply="true"/>
    </function>

    <function name="GetColorTableParameterfvSGI" alias="GetColorTableParameterfv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="4099"/>
    </function>

    <function name="GetColorTableParameterivSGI" alias="GetColorTableParameteriv" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="4100"/>
    </function>
</category>

<category name="GL_SGIS_pixel_texture" number="15">
    <function name="PixelTexGenParameteriSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="PixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="PixelTexGenParameterfSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="PixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetPixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetPixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_SGIS_texture4D" number="16">
    <function name="TexImage4DSGIS">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="size4d" type="GLsizei"/>
        <param name="border" type="GLint"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
        <glx rop="2057" ignore="true"/>
    </function>

    <function name="TexSubImage4DSGIS">
        <param name="target" type="GLenum"/>
        <param name="level" type="GLint"/>
        <param name="xoffset" type="GLint"/>
        <param name="yoffset" type="GLint"/>
        <param name="zoffset" type="GLint"/>
        <param name="woffset" type="GLint"/>
        <param name="width" type="GLsizei"/>
        <param name="height" type="GLsizei"/>
        <param name="depth" type="GLsizei"/>
        <param name="size4d" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="UNUSED" type="GLuint" padding="true"/>
        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_woff="woffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
        <glx rop="2058" ignore="true"/>
    </function>
</category>

<category name="GL_SGI_texture_color_table" number="17">
    <enum name="TEXTURE_COLOR_TABLE_SGI"                  value="0x80BC"/>
    <enum name="PROXY_TEXTURE_COLOR_TABLE_SGI"            value="0x80BD"/>
</category>

<!-- Extension number 19 is not listed in the extension registry. -->

<category name="GL_EXT_texture_object" number="20">
    <function name="AreTexturesResidentEXT" alias="AreTexturesResident">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="const GLuint *" count="n"/>
        <param name="residences" type="GLboolean *" output="true" count="n"/>
        <return type="GLboolean"/>
        <glx vendorpriv="11" handcode="client" always_array="true"/>
    </function>

    <function name="BindTextureEXT" alias="BindTexture">
        <param name="target" type="GLenum"/>
        <param name="texture" type="GLuint"/>
    </function>

    <function name="DeleteTexturesEXT" alias="DeleteTextures">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="const GLuint *" count="n"/>
        <glx vendorpriv="12"/>
    </function>

    <function name="GenTexturesEXT" alias="GenTextures">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="textures" type="GLuint *" output="true" count="n"/>
        <glx vendorpriv="13" always_array="true"/>
    </function>

    <function name="IsTextureEXT" alias="IsTexture">
        <param name="texture" type="GLuint"/>
        <return type="GLboolean"/>
        <glx vendorpriv="14"/>
    </function>

    <function name="PrioritizeTexturesEXT" alias="PrioritizeTextures">
        <param name="n" type="GLsizei"/>
        <param name="textures" type="const GLuint *"/>
        <param name="priorities" type="const GLclampf *"/>
    </function>
</category>

<category name="GL_SGIS_detail_texture" number="21">
    <function name="DetailTexFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="points" type="const GLfloat *" count="n"/>
        <glx rop="2051" ignore="true"/>
    </function>

    <function name="GetDetailTexFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="points" type="GLfloat *" output="true"/>
        <glx vendorpriv="4096" ignore="true"/>
    </function>
</category>

<category name="GL_SGIS_sharpen_texture" number="22">
    <function name="SharpenTexFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
        <glx rop="2052" ignore="true"/>
    </function>

    <function name="GetSharpenTexFuncSGIS">
        <param name="target" type="GLenum"/>
        <param name="points" type="GLfloat *" output="true"/>
        <glx vendorpriv="4097" ignore="true"/>
    </function>
</category>

<category name="GL_SGIS_multisample" number="25">
    <function name="SampleMaskSGIS" offset="assign" static_dispatch="false">
        <param name="value" type="GLclampf"/>
        <param name="invert" type="GLboolean"/>
        <glx rop="2048"/>
    </function>

    <function name="SamplePatternSGIS" offset="assign" static_dispatch="false">
        <param name="pattern" type="GLenum"/>
        <glx rop="2049"/>
    </function>
</category>

<!-- Extension number 26 is not listed in the extension registry. -->

<category name="GL_EXT_rescale_normal" number="27">
    <enum name="RESCALE_NORMAL_EXT"            count="1"  value="0x803A">
        <size name="Get" mode="get"/>
    </enum>
</category>

<!-- Extension number 28 is a GLX extension. -->
<!-- Extension number 29 is not listed in the extension registry. -->

<category name="GL_EXT_vertex_array" number="30">
    <function name="ArrayElementEXT" alias="ArrayElement">
        <param name="i" type="GLint"/>
    </function>

    <function name="ColorPointerEXT" offset="assign">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="DrawArraysEXT" alias="DrawArrays">
        <param name="mode" type="GLenum"/>
        <param name="first" type="GLint"/>
        <param name="count" type="GLsizei"/>
    </function>

    <function name="EdgeFlagPointerEXT" offset="assign">
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLboolean *"/>
        <glx handcode="true"/>
    </function>

    <function name="GetPointervEXT" alias="GetPointerv">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLvoid **" output="true"/>
    </function>

    <function name="IndexPointerEXT" offset="assign">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="NormalPointerEXT" offset="assign">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="TexCoordPointerEXT" offset="assign">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="VertexPointerEXT" offset="assign">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>
</category>

<category name="GL_SGIS_generate_mipmap" number="32">
    <enum name="GENERATE_MIPMAP_SGIS"          count="1"  value="0x8191">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="GENERATE_MIPMAP_HINT_SGIS"                value="0x8192"/>
</category>

<category name="GL_SGIX_clipmap" number="33">
    <enum name="LINEAR_CLIPMAP_LINEAR_SGIX"               value="0x8170"/>
    <enum name="TEXTURE_CLIPMAP_CENTER_SGIX"   count="2"  value="0x8171">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_CLIPMAP_FRAME_SGIX"    count="1"  value="0x8172">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_CLIPMAP_OFFSET_SGIX"   count="2"  value="0x8173">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX" count="3" value="0x8174">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_CLIPMAP_LOD_OFFSET_SGIX"          value="0x8175"/>
    <enum name="TEXTURE_CLIPMAP_DEPTH_SGIX"               value="0x8176"/>
    <enum name="MAX_CLIPMAP_DEPTH_SGIX"                   value="0x8177"/>
    <enum name="MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX"           value="0x8178"/>
    <enum name="NEAREST_CLIPMAP_NEAREST_SGIX"             value="0x844D"/>
    <enum name="NEAREST_CLIPMAP_LINEAR_SGIX"              value="0x844E"/>
    <enum name="LINEAR_CLIPMAP_NEAREST_SGIX"              value="0x844F"/>
</category>

<category name="GL_SGIX_shadow" number="34">
    <enum name="TEXTURE_COMPARE_SGIX"          count="1"  value="0x819A">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_COMPARE_OPERATOR_SGIX" count="1"  value="0x819B">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_LEQUAL_R_SGIX"                    value="0x819C"/>
    <enum name="TEXTURE_GEQUAL_R_SGIX"                    value="0x819D"/>
</category>

<category name="GL_SGIS_texture_edge_clamp" number="35">
    <enum name="CLAMP_TO_EDGE_SGIS"                       value="0x812F"/>
</category>

<category name="GL_SGIS_texture_border_clamp" number="36">
    <enum name="CLAMP_TO_BORDER_SGIS"                     value="0x812D"/>
</category>

<category name="GL_EXT_blend_minmax" number="37">
    <enum name="FUNC_ADD_EXT"                             value="0x8006"/>
    <enum name="MIN_EXT"                                  value="0x8007"/>
    <enum name="MAX_EXT"                                  value="0x8008"/>
    <enum name="BLEND_EQUATION_EXT"            count="1"  value="0x8009">
        <size name="Get" mode="get"/>
    </enum>

    <function name="BlendEquationEXT" alias="BlendEquation">
        <param name="mode" type="GLenum"/>
    </function>
</category>

<category name="GL_EXT_blend_subtract" number="38">
    <enum name="FUNC_SUBTRACT_EXT"                        value="0x800A"/>
    <enum name="FUNC_REVERSE_SUBTRACT_EXT"                value="0x800B"/>

    <!-- <function name="BlendEquationEXT" alias="BlendEquation">
        <param name="mode" type="GLenum"/>
    </function> -->
</category>

<!-- Extension number 40 is a GLX extension. -->
<!-- Extension number 41 is a GLX extension. -->
<!-- Extension number 42 is a GLX extension. -->
<!-- Extension number 43 is a GLX extension. -->
<!-- Extension number 44 is a GLX extension. -->
<!-- Extension number 46 is not listed in the extension registry. -->
<!-- Extension number 47 is a GLX extension. -->
<!-- Extension number 48 is not listed in the extension registry. -->
<!-- Extension number 49 is a GLX extension. -->
<!-- Extension number 50 is a GLX extension. -->

<category name="GL_SGIX_sprite" number="52">
    <function name="SpriteParameterfSGIX">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="SpriteParameterfvSGIX">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="SpriteParameteriSGIX">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="SpriteParameterivSGIX">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_point_parameters" number="54">
    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
        <size name="PointParameterfvEXT"/>
    </enum>

    <function name="PointParameterfEXT" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="2065"/>
    </function>

    <function name="PointParameterfvEXT" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="2066"/>
    </function>
</category>

<category name="GL_SGIX_instruments" number="55">
    <function name="GetInstrumentsSGIX">
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="InstrumentsBufferSGIX">
        <param name="size" type="GLsizei"/>
        <param name="buffer" type="GLint *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="PollInstrumentsSGIX">
        <param name="marker_p" type="GLint *" output="true"/>
        <return type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="ReadInstrumentsSGIX">
        <param name="marker" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="StartInstrumentsSGIX">
        <glx ignore="true"/>
    </function>

    <function name="StopInstrumentsSGIX">
        <param name="marker" type="GLint"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_SGIX_texture_scale_bias" number="56">
    <enum name="POST_TEXTURE_FILTER_BIAS_SGIX"  count="4" value="0x8179">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="POST_TEXTURE_FILTER_SCALE_SGIX" count="4" value="0x817A">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="POST_TEXTURE_FILTER_BIAS_RANGE_SGIX"      value="0x817B"/>
    <enum name="POST_TEXTURE_FILTER_SCALE_RANGE_SGIX"     value="0x817C"/>
</category>

<category name="GL_SGIX_framezoom" number="57">
    <function name="FrameZoomSGIX">
        <param name="factor" type="GLint"/>
        <glx rop="2072" ignore="true"/>
    </function>
</category>

<category name="GL_SGIX_tag_sample_buffer" number="58">
    <function name="TagSampleBufferSGIX">
        <glx rop="2050" ignore="true"/>
    </function>
</category>

<!-- Extension number 59 is not listed in the extension registry. -->

<category name="GL_SGIX_reference_plane" number="60">
    <function name="ReferencePlaneSGIX">
        <param name="equation" type="const GLdouble *" count="4"/>
        <glx rop="2071" ignore="true"/>
    </function>
</category>

<category name="GL_SGIX_flush_raster" number="61">
    <function name="FlushRasterSGIX">
        <glx vendorpriv="4105" ignore="true"/>
    </function>
</category>

<!-- Extension number 62 is a GLX extension. -->

<category name="GL_SGIX_depth_texture" number="63">
    <enum name="DEPTH_COMPONENT16_SGIX"                   value="0x81A5"/>
    <enum name="DEPTH_COMPONENT24_SGIX"                   value="0x81A6"/>
    <enum name="DEPTH_COMPONENT32_SGIX"                   value="0x81A7"/>
</category>

<category name="GL_SGIS_fog_function" number="64">
    <function name="FogFuncSGIS">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
        <glx rop="2067" ignore="true"/>
    </function>

    <function name="GetFogFuncSGIS">
        <param name="points" type="GLfloat *" output="true"/>
        <!-- GLX protocol for this function is unknown. -->
    </function>
</category>

<category name="GL_SGIX_fog_offset" number="65">
    <enum name="FOG_OFFSET_SGIX"                          value="0x8198"/>
    <enum name="FOG_OFFSET_VALUE_SGIX"         count="1"  value="0x8199">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
    </enum>
</category>

<category name="GL_HP_image_transform" number="66">
    <function name="ImageTransformParameteriHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
    </function>

    <function name="ImageTransformParameterfHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
    </function>

    <function name="ImageTransformParameterivHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="ImageTransformParameterfvHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="GetImageTransformParameterivHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
    </function>

    <function name="GetImageTransformParameterfvHP">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
    </function>
</category>

<category name="GL_HP_convolution_border_modes" number="67">
    <enum name="IGNORE_BORDER_HP"                         value="0x8150"/>
    <enum name="CONSTANT_BORDER_HP"                       value="0x8151"/>
    <enum name="REPLICATE_BORDER_HP"                      value="0x8153"/>
    <enum name="CONVOLUTION_BORDER_COLOR_HP"   count="4"  value="0x8154">
        <size name="ConvolutionParameterfv"/>
        <size name="ConvolutionParameteriv"/>
        <size name="GetConvolutionParameterfv" mode="get"/>
        <size name="GetConvolutionParameteriv" mode="get"/>
    </enum>
</category>

<!-- Extension number 68 is not listed in the extension registry. -->
<!-- Extension number 70 is not listed in the extension registry. -->
<!-- Extension number 71 is not listed in the extension registry. -->
<!-- Extension number 72 is not listed in the extension registry. -->
<!-- Extension number 73 is not listed in the extension registry. -->

<category name="GL_EXT_color_subtable" number="74">
    <function name="ColorSubTableEXT" alias="ColorSubTable" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="start" type="GLsizei"/>
        <param name="count" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="data" type="const GLvoid *"/>
    </function>

    <function name="CopyColorSubTableEXT" alias="CopyColorSubTable" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="start" type="GLsizei"/>
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="width" type="GLsizei"/>
    </function>
</category>

<!-- Extension number 75 is a GLU extension. -->

<category name="GL_PGI_misc_hints" number="77">
    <function name="HintPGI">
        <param name="target" type="GLenum"/>
        <param name="mode" type="GLint"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_paletted_texture" number="78">
    <enum name="COLOR_TABLE_FORMAT_EXT"        count="1"  value="0x80D8">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_WIDTH_EXT"         count="1"  value="0x80D9">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_RED_SIZE_EXT"      count="1"  value="0x80DA">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_GREEN_SIZE_EXT"    count="1"  value="0x80DB">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_BLUE_SIZE_EXT"     count="1"  value="0x80DC">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_ALPHA_SIZE_EXT"    count="1"  value="0x80DD">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_LUMINANCE_SIZE_EXT" count="1" value="0x80DE">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="COLOR_TABLE_INTENSITY_SIZE_EXT" count="1" value="0x80DF">
        <size name="GetColorTableParameterfv" mode="get"/>
        <size name="GetColorTableParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_INDEX_SIZE_EXT"        count="1"  value="0x80ED">
        <size name="GetTexLevelParameterfv" mode="get"/>
        <size name="GetTexLevelParameteriv" mode="get"/>
    </enum>

    <function name="ColorTableEXT" alias="ColorTable">
        <param name="target" type="GLenum"/>
        <param name="internalformat" type="GLenum"/>
        <param name="width" type="GLsizei"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="const GLvoid *"/>
    </function>

    <function name="GetColorTableEXT" alias="GetColorTable">
        <param name="target" type="GLenum"/>
        <param name="format" type="GLenum"/>
        <param name="type" type="GLenum"/>
        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
        <glx vendorpriv="4098" dimensions_in_reply="true"/>
    </function>

    <function name="GetColorTableParameterivEXT" alias="GetColorTableParameteriv">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="4100"/>
    </function>

    <function name="GetColorTableParameterfvEXT" alias="GetColorTableParameterfv">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="4099"/>
    </function>
</category>

<category name="GL_EXT_clip_volume_hint" number="79">
    <enum name="CLIP_VOLUME_CLIPPING_HINT_EXT" count="1"  value="0x80F0">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_SGIX_list_priority" number="80">
    <function name="GetListParameterfvSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetListParameterivSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="ListParameterfSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="ListParameterfvSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="ListParameteriSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="ListParameterivSGIX">
        <param name="list" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>
</category>

<!-- Extension number 82 is not listed in the extension registry. -->
<!-- Extension number 83 is a GLX extension. -->

<category name="GL_SGIX_texture_lod_bias" number="84">
    <enum name="TEXTURE_LOD_BIAS_S_SGIX"       count="1"  value="0x818E">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_LOD_BIAS_T_SGIX"       count="1"  value="0x818F">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_LOD_BIAS_R_SGIX"       count="1"  value="0x8190">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<!-- Extension number 85 is a GLU extension. -->
<!-- Extension number 86 is a GLX extension. -->
<!-- Extension number 87 is not listed in the extension registry. -->
<!-- Extension number 88 is not listed in the extension registry. -->
<!-- Extension number 89 is not listed in the extension registry. -->


<category name="GL_SGIX_shadow_ambient" number="90">
    <enum name="SHADOW_AMBIENT_SGIX"           count="1"  value="0x80BF">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<!-- Extension number 91 is a GLX extension. -->
<!-- Extension number 92 is a GLX extension. -->

<category name="GL_EXT_index_material" number="94">
    <function name="IndexMaterialEXT">
        <param name="face" type="GLenum"/>
        <param name="mode" type="GLenum"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_index_func" number="95">
    <function name="IndexFuncEXT">
        <param name="func" type="GLenum"/>
        <param name="ref" type="GLclampf"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_compiled_vertex_array" number="97">
    <function name="LockArraysEXT" offset="assign">
        <param name="first" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <glx handcode="true" ignore="true"/>
    </function>

    <function name="UnlockArraysEXT" offset="assign">
        <glx handcode="true" ignore="true"/>
    </function>
</category>

<category name="GL_EXT_cull_vertex" number="98">
    <enum name="CULL_VERTEX_EXT"                          value="0x81AA"/>
    <enum name="CULL_VERTEX_OBJECT_POSITION_EXT" count="4" value="0x81AB">
        <size name="CullParameterfv"/>
        <size name="CullParameterdv"/>
    </enum>
    <enum name="CULL_VERTEX_EYE_POSITION_EXT"  count="4"  value="0x81AC">
        <size name="CullParameterfv"/>
        <size name="CullParameterdv"/>
    </enum>

    <function name="CullParameterdvEXT">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *"/> <!-- Spec bug. Should be const. -->
        <glx ignore="true"/>
    </function>

    <function name="CullParameterfvEXT">
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *"/> <!-- Spec bug. Should be const. -->
        <glx ignore="true"/>
    </function>
</category>

<!-- Extension number 99 is not listed in the extension registry. -->
<!-- Extension number 100 is a GLU extension. -->

<!-- Shouldn't this be EXT_fragment_lighting? -->
<category name="GL_SGIX_fragment_lighting" number="102">
    <function name="FragmentColorMaterialSGIX">
        <param name="face" type="GLenum"/>
        <param name="mode" type="GLenum"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightfSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightfvSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightiSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightivSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightModelfSGIX">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightModelfvSGIX">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightModeliSGIX">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentLightModelivSGIX">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentMaterialfSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentMaterialfvSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentMaterialiSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="FragmentMaterialivSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="GetFragmentLightfvSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetFragmentLightivSGIX">
        <param name="light" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetFragmentMaterialfvSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="GetFragmentMaterialivSGIX">
        <param name="face" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx ignore="true"/>
    </function>

    <function name="LightEnviSGIX">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx ignore="true"/>
    </function>
</category>

<!-- Extension number 103 is not listed in the extension registry. -->
<!-- Extension number 104 is not listed in the extension registry. -->
<!-- Extension number 105 is not listed in the extension registry. -->
<!-- Extension number 106 is not listed in the extension registry. -->
<!-- Extension number 107 is not listed in the extension registry. -->
<!-- Extension number 108 is not listed in the extension registry. -->
<!-- Extension number 109 is not listed in the extension registry. -->

<category name="GL_IBM_rasterpos_clip" number="110">
    <enum name="RASTER_POSITION_UNCLIPPED_IBM"  count="1" value="0x19262">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_EXT_draw_range_elements" number="112">
    <function name="DrawRangeElementsEXT" alias="DrawRangeElements">
        <param name="mode" type="GLenum"/>
        <param name="start" type="GLuint"/>
        <param name="end" type="GLuint"/>
        <param name="count" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>
</category>

<!-- Extension number 115 is a GLX extension. -->
<!-- Extension number 116 is not listed in the extension registry. -->

<category name="GL_EXT_light_texture" number="117">
    <function name="ApplyTextureEXT">
        <param name="mode" type="GLenum"/>
    </function>

    <function name="TextureLightEXT">
        <param name="pname" type="GLenum"/>
    </function>

    <function name="TextureMaterialEXT">
        <param name="face" type="GLenum"/>
        <param name="mode" type="GLenum"/>
    </function>
</category>

<!-- Extension number 118 is not listed in the extension registry. -->
<!-- Extension number 121 is not listed in the extension registry. -->
<!-- Extension number 122 is not listed in the extension registry. -->
<!-- Extension number 123 is not listed in the extension registry. -->
<!-- Extension number 124 is not listed in the extension registry. -->
<!-- Extension number 125 is not listed in the extension registry. -->
<!-- Extension number 126 is not listed in the extension registry. -->
<!-- Extension number 128 is not listed in the extension registry. -->
<!-- Extension number 130 is not listed in the extension registry. -->
<!-- Extension number 131 is not listed in the extension registry. -->

<category name="GL_SGIX_async" number="132">
    <function name="AsyncMarkerSGIX">
        <param name="marker" type="GLuint"/>
    </function>

    <function name="FinishAsyncSGIX">
        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
        <return type="GLint"/>
    </function>

    <function name="PollAsyncSGIX">
        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
        <return type="GLint"/>
    </function>

    <function name="GenAsyncMarkersSGIX">
        <param name="range" type="GLsizei"/>
        <return type="GLuint"/>
    </function>

    <function name="DeleteAsyncMarkersSGIX">
        <param name="marker" type="GLuint"/>
        <param name="range" type="GLsizei"/>
    </function>

    <function name="IsAsyncMarkerSGIX">
        <param name="marker" type="GLuint"/>
        <return type="GLboolean"/>
    </function>
</category>

<category name="GL_INTEL_parallel_arrays" number="136">
    <function name="VertexPointervINTEL">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="pointer" type="const GLvoid **"/>
    </function>

    <function name="NormalPointervINTEL">
        <param name="type" type="GLenum"/>
        <param name="pointer" type="const GLvoid **"/>
    </function>

    <function name="ColorPointervINTEL">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="pointer" type="const GLvoid **"/>
    </function>

    <function name="TexCoordPointervINTEL">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="pointer" type="const GLvoid **"/>
    </function>
</category>

<category name="GL_HP_occlusion_test" number="137">
    <enum name="OCCLUSION_TEST_HP"             count="1"  value="0x8165">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="OCCLUSION_TEST_RESULT_HP"      count="1"  value="0x8166">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_EXT_pixel_transform" number="138">
    <function name="PixelTransformParameteriEXT">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
    </function>

    <function name="PixelTransformParameterfEXT">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
    </function>

    <function name="PixelTransformParameterivEXT">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="PixelTransformParameterfvEXT">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>
</category>

<!-- Extension number 140 is not listed in the extension registry. -->

<category name="GL_EXT_shared_texture_palette" number="141">
    <enum name="SHARED_TEXTURE_PALETTE_EXT"    count="1"  value="0x81FB"/>
</category>

<!-- Extension number 142 is a GLX extension. -->
<!-- Extension number 143 is not listed in the extension registry. -->

<category name="GL_EXT_separate_specular_color" number="144">
    <enum name="LIGHT_MODEL_COLOR_CONTROL_EXT" count="1"  value="0x81F8">
        <size name="LightModelfv"/>
        <size name="LightModeliv"/>
    </enum>
    <enum name="SINGLE_COLOR_EXT"                         value="0x81F9"/>
    <enum name="SEPARATE_SPECULAR_COLOR_EXT"              value="0x81FA"/>
</category>

<category name="GL_EXT_secondary_color" number="145">
    <function name="SecondaryColor3bEXT" offset="assign" vectorequiv="SecondaryColor3bvEXT">
        <param name="red" type="GLbyte"/>
        <param name="green" type="GLbyte"/>
        <param name="blue" type="GLbyte"/>
    </function>

    <function name="SecondaryColor3bvEXT" offset="assign">
        <param name="v" type="const GLbyte *" count="3"/>
        <glx rop="4126"/>
    </function>

    <function name="SecondaryColor3dEXT" offset="assign" vectorequiv="SecondaryColor3dvEXT">
        <param name="red" type="GLdouble"/>
        <param name="green" type="GLdouble"/>
        <param name="blue" type="GLdouble"/>
    </function>

    <function name="SecondaryColor3dvEXT" offset="assign">
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="4130"/>
    </function>

    <function name="SecondaryColor3fEXT" offset="assign" vectorequiv="SecondaryColor3fvEXT">
        <param name="red" type="GLfloat"/>
        <param name="green" type="GLfloat"/>
        <param name="blue" type="GLfloat"/>
    </function>

    <function name="SecondaryColor3fvEXT" offset="assign">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="4129"/>
    </function>

    <function name="SecondaryColor3iEXT" offset="assign" vectorequiv="SecondaryColor3ivEXT">
        <param name="red" type="GLint"/>
        <param name="green" type="GLint"/>
        <param name="blue" type="GLint"/>
    </function>

    <function name="SecondaryColor3ivEXT" offset="assign">
        <param name="v" type="const GLint *" count="3"/>
        <glx rop="4128"/>
    </function>

    <function name="SecondaryColor3sEXT" offset="assign" vectorequiv="SecondaryColor3svEXT">
        <param name="red" type="GLshort"/>
        <param name="green" type="GLshort"/>
        <param name="blue" type="GLshort"/>
    </function>

    <function name="SecondaryColor3svEXT" offset="assign">
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="4127"/>
    </function>

    <function name="SecondaryColor3ubEXT" offset="assign" vectorequiv="SecondaryColor3ubvEXT">
        <param name="red" type="GLubyte"/>
        <param name="green" type="GLubyte"/>
        <param name="blue" type="GLubyte"/>
    </function>

    <function name="SecondaryColor3ubvEXT" offset="assign">
        <param name="v" type="const GLubyte *" count="3"/>
        <glx rop="4131"/>
    </function>

    <function name="SecondaryColor3uiEXT" offset="assign" vectorequiv="SecondaryColor3uivEXT">
        <param name="red" type="GLuint"/>
        <param name="green" type="GLuint"/>
        <param name="blue" type="GLuint"/>
    </function>

    <function name="SecondaryColor3uivEXT" offset="assign">
        <param name="v" type="const GLuint *" count="3"/>
        <glx rop="4133"/>
    </function>

    <function name="SecondaryColor3usEXT" offset="assign" vectorequiv="SecondaryColor3usvEXT">
        <param name="red" type="GLushort"/>
        <param name="green" type="GLushort"/>
        <param name="blue" type="GLushort"/>
    </function>

    <function name="SecondaryColor3usvEXT" offset="assign">
        <param name="v" type="const GLushort *" count="3"/>
        <glx rop="4132"/>
    </function>

    <function name="SecondaryColorPointerEXT" offset="assign">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>
</category>

<category name="GL_EXT_texture_perturb_normal" number="147">
    <function name="TextureNormalEXT">
        <param name="mode" type="GLenum"/>
    </function>
</category>

<category name="GL_EXT_multi_draw_arrays" number="148">
    <function name="MultiDrawArraysEXT" offset="assign">
        <param name="mode" type="GLenum"/>
        <param name="first" type="const GLint *"/>
        <param name="count" type="const GLsizei *"/>
        <param name="primcount" type="GLsizei"/>
        <glx handcode="true"/>
    </function>

    <function name="MultiDrawElementsEXT" offset="assign">
        <param name="mode" type="GLenum"/>
        <param name="count" type="const GLsizei *"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid **"/>
        <param name="primcount" type="GLsizei"/>
        <glx handcode="true"/>
    </function>
</category>

<category name="GL_EXT_fog_coord" number="149">
    <function name="FogCoordfEXT" offset="assign" vectorequiv="FogCoordfvEXT">
        <param name="coord" type="GLfloat"/>
    </function>

    <function name="FogCoordfvEXT" offset="assign">
        <param name="coord" type="const GLfloat *" count="1"/>
        <glx rop="4124"/>
    </function>

    <function name="FogCoorddEXT" offset="assign" vectorequiv="FogCoorddvEXT">
        <param name="coord" type="GLdouble"/>
    </function>

    <function name="FogCoorddvEXT" offset="assign">
        <param name="coord" type="const GLdouble *" count="1"/>
        <glx rop="4125"/>
    </function>

    <function name="FogCoordPointerEXT" offset="assign">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>
</category>

<!-- Extension number 150 is not listed in the extension registry. -->
<!-- Extension number 151 is not listed in the extension registry. -->
<!-- Extension number 152 is not listed in the extension registry. -->
<!-- Extension number 153 is not listed in the extension registry. -->
<!-- Extension number 154 is not listed in the extension registry. -->

<category name="GL_EXT_coordinate_frame" number="156">
    <function name="Tangent3bEXT">
        <param name="tx" type="GLbyte"/>
        <param name="ty" type="GLbyte"/>
        <param name="tz" type="GLbyte"/>
    </function>

    <function name="Tangent3bvEXT">
        <param name="v" type="const GLbyte *"/>
    </function>

    <function name="Tangent3dEXT">
        <param name="tx" type="GLdouble"/>
        <param name="ty" type="GLdouble"/>
        <param name="tz" type="GLdouble"/>
    </function>

    <function name="Tangent3dvEXT">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="Tangent3fEXT">
        <param name="tx" type="GLfloat"/>
        <param name="ty" type="GLfloat"/>
        <param name="tz" type="GLfloat"/>
    </function>

    <function name="Tangent3fvEXT">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Tangent3iEXT">
        <param name="tx" type="GLint"/>
        <param name="ty" type="GLint"/>
        <param name="tz" type="GLint"/>
    </function>

    <function name="Tangent3ivEXT">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="Tangent3sEXT">
        <param name="tx" type="GLshort"/>
        <param name="ty" type="GLshort"/>
        <param name="tz" type="GLshort"/>
    </function>

    <function name="Tangent3svEXT">
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="Binormal3bEXT">
        <param name="bx" type="GLbyte"/>
        <param name="by" type="GLbyte"/>
        <param name="bz" type="GLbyte"/>
    </function>

    <function name="Binormal3bvEXT">
        <param name="v" type="const GLbyte *"/>
    </function>

    <function name="Binormal3dEXT">
        <param name="bx" type="GLdouble"/>
        <param name="by" type="GLdouble"/>
        <param name="bz" type="GLdouble"/>
    </function>

    <function name="Binormal3dvEXT">
        <param name="v" type="const GLdouble *"/>
    </function>

    <function name="Binormal3fEXT">
        <param name="bx" type="GLfloat"/>
        <param name="by" type="GLfloat"/>
        <param name="bz" type="GLfloat"/>
    </function>

    <function name="Binormal3fvEXT">
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Binormal3iEXT">
        <param name="bx" type="GLint"/>
        <param name="by" type="GLint"/>
        <param name="bz" type="GLint"/>
    </function>

    <function name="Binormal3ivEXT">
        <param name="v" type="const GLint *"/>
    </function>

    <function name="Binormal3sEXT">
        <param name="bx" type="GLshort"/>
        <param name="by" type="GLshort"/>
        <param name="bz" type="GLshort"/>
    </function>

    <function name="Binormal3svEXT">
        <param name="v" type="const GLshort *"/>
    </function>

    <function name="TangentPointerEXT">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>

    <function name="BinormalPointerEXT">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>
</category>

<!-- Extension number 157 is not listed in the extension registry. -->

<category name="GL_EXT_texture_env_combine" number="158">
    <enum name="COMBINE_EXT"                              value="0x8570"/>
    <enum name="COMBINE_RGB_EXT"               count="1"  value="0x8571"/>
    <enum name="COMBINE_ALPHA_EXT"             count="1"  value="0x8572"/>
    <enum name="RGB_SCALE_EXT"                 count="1"  value="0x8573"/>
    <enum name="ADD_SIGNED_EXT"                           value="0x8574"/>
    <enum name="INTERPOLATE_EXT"                          value="0x8575"/>
    <enum name="CONSTANT_EXT"                             value="0x8576"/>
    <enum name="PRIMARY_COLOR_EXT"                        value="0x8577"/>
    <enum name="PREVIOUS_EXT"                             value="0x8578"/>
    <enum name="SOURCE0_RGB_EXT"               count="1"  value="0x8580"/>
    <enum name="SOURCE1_RGB_EXT"               count="1"  value="0x8581"/>
    <enum name="SOURCE2_RGB_EXT"               count="1"  value="0x8582"/>
    <enum name="SOURCE0_ALPHA_EXT"             count="1"  value="0x8588"/>
    <enum name="SOURCE1_ALPHA_EXT"             count="1"  value="0x8589"/>
    <enum name="SOURCE2_ALPHA_EXT"             count="1"  value="0x858A"/>
    <enum name="OPERAND0_RGB_EXT"              count="1"  value="0x8590"/>
    <enum name="OPERAND1_RGB_EXT"              count="1"  value="0x8591"/>
    <enum name="OPERAND2_RGB_EXT"              count="1"  value="0x8592"/>
    <enum name="OPERAND0_ALPHA_EXT"            count="1"  value="0x8598"/>
    <enum name="OPERAND1_ALPHA_EXT"            count="1"  value="0x8599"/>
    <enum name="OPERAND2_ALPHA_EXT"            count="1"  value="0x859A"/>
</category>

<category name="GL_SGIX_pixel_texture" number="160">
    <function name="PixelTexGenSGIX" offset="assign" static_dispatch="false">
        <param name="mode" type="GLenum"/>
        <glx rop="2059" ignore="true"/>
    </function>
</category>

<!-- Extension number 161 is not listed in the extension registry. -->
<!-- Extension number 162 is not listed in the extension registry. -->

<category name="GL_SUNX_constant_data" number="163">
    <function name="FinishTextureSUNX">
    </function>
</category>

<category name="GL_SUN_global_alpha" number="164">
    <function name="GlobalAlphaFactorbSUN">
        <param name="factor" type="GLbyte"/>
    </function>

    <function name="GlobalAlphaFactorsSUN">
        <param name="factor" type="GLshort"/>
    </function>

    <function name="GlobalAlphaFactoriSUN">
        <param name="factor" type="GLint"/>
    </function>

    <function name="GlobalAlphaFactorfSUN">
        <param name="factor" type="GLfloat"/>
    </function>

    <function name="GlobalAlphaFactordSUN">
        <param name="factor" type="GLdouble"/>
    </function>

    <function name="GlobalAlphaFactorubSUN">
        <param name="factor" type="GLubyte"/>
    </function>

    <function name="GlobalAlphaFactorusSUN">
        <param name="factor" type="GLushort"/>
    </function>

    <function name="GlobalAlphaFactoruiSUN">
        <param name="factor" type="GLuint"/>
    </function>
</category>

<category name="GL_SUN_triangle_list" number="165">
    <function name="ReplacementCodeuiSUN">
        <param name="code" type="GLuint"/>
    </function>

    <function name="ReplacementCodeusSUN">
        <param name="code" type="GLushort"/>
    </function>

    <function name="ReplacementCodeubSUN">
        <param name="code" type="GLubyte"/>
    </function>

    <function name="ReplacementCodeuivSUN">
        <param name="code" type="const GLuint *"/>
    </function>

    <function name="ReplacementCodeusvSUN">
        <param name="code" type="const GLushort *"/>
    </function>

    <function name="ReplacementCodeubvSUN">
        <param name="code" type="const GLubyte *"/>
    </function>

    <function name="ReplacementCodePointerSUN">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
    </function>
</category>

<category name="GL_SUN_vertex" number="166">
    <function name="Color4ubVertex2fSUN">
        <param name="r" type="GLubyte"/>
        <param name="g" type="GLubyte"/>
        <param name="b" type="GLubyte"/>
        <param name="a" type="GLubyte"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="Color4ubVertex2fvSUN">
        <param name="c" type="const GLubyte *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Color4ubVertex3fSUN">
        <param name="r" type="GLubyte"/>
        <param name="g" type="GLubyte"/>
        <param name="b" type="GLubyte"/>
        <param name="a" type="GLubyte"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="Color4ubVertex3fvSUN">
        <param name="c" type="const GLubyte *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Color3fVertex3fSUN">
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="Color3fVertex3fvSUN">
        <param name="c" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Normal3fVertex3fSUN">
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="Normal3fVertex3fvSUN">
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="Color4fNormal3fVertex3fSUN">
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="a" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="Color4fNormal3fVertex3fvSUN">
        <param name="c" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord2fVertex3fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="TexCoord2fVertex3fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord4fVertex4fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="p" type="GLfloat"/>
        <param name="q" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="TexCoord4fVertex4fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord2fColor4ubVertex3fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLubyte"/>
        <param name="g" type="GLubyte"/>
        <param name="b" type="GLubyte"/>
        <param name="a" type="GLubyte"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="TexCoord2fColor4ubVertex3fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="c" type="const GLubyte *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord2fColor3fVertex3fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="TexCoord2fColor3fVertex3fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord2fNormal3fVertex3fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="TexCoord2fNormal3fVertex3fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord2fColor4fNormal3fVertex3fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="a" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="TexCoord2fColor4fNormal3fVertex3fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="TexCoord4fColor4fNormal3fVertex4fSUN">
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="p" type="GLfloat"/>
        <param name="q" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="a" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="TexCoord4fColor4fNormal3fVertex4fvSUN">
        <param name="tc" type="const GLfloat *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiColor4ubVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="r" type="GLubyte"/>
        <param name="g" type="GLubyte"/>
        <param name="b" type="GLubyte"/>
        <param name="a" type="GLubyte"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiColor4ubVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="c" type="const GLubyte *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiColor3fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiColor3fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiNormal3fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiNormal3fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiColor4fNormal3fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="a" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiColor4fNormal3fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="tc" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="tc" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN">
        <param name="rc" type="GLuint"/>
        <param name="s" type="GLfloat"/>
        <param name="t" type="GLfloat"/>
        <param name="r" type="GLfloat"/>
        <param name="g" type="GLfloat"/>
        <param name="b" type="GLfloat"/>
        <param name="a" type="GLfloat"/>
        <param name="nx" type="GLfloat"/>
        <param name="ny" type="GLfloat"/>
        <param name="nz" type="GLfloat"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN">
        <param name="rc" type="const GLuint *"/>
        <param name="tc" type="const GLfloat *"/>
        <param name="c" type="const GLfloat *"/>
        <param name="n" type="const GLfloat *"/>
        <param name="v" type="const GLfloat *"/>
    </function>
</category>

<!-- Extension number 167 is a WGL extension. -->
<!-- Extension number 168 is a WGL extension. -->
<!-- Extension number 169 is a WGL extension. -->
<!-- Extension number 170 is a WGL extension. -->
<!-- Extension number 171 is a WGL extension. -->
<!-- Extension number 172 is a WGL extension. -->

<category name="GL_EXT_blend_func_separate" number="173">
    <function name="BlendFuncSeparateEXT" offset="assign">
        <param name="sfactorRGB" type="GLenum"/>
        <param name="dfactorRGB" type="GLenum"/>
        <param name="sfactorAlpha" type="GLenum"/>
        <param name="dfactorAlpha" type="GLenum"/>
        <glx rop="4134"/>
    </function>
</category>

<category name="GL_EXT_stencil_wrap" number="176">
    <enum name="INCR_WRAP_EXT"                            value="0x8507"/>
    <enum name="DECR_WRAP_EXT"                            value="0x8508"/>
</category>

<!-- Extension number 177 is a WGL extension. -->

<category name="GL_NV_texgen_reflection" number="179">
    <enum name="NORMAL_MAP_NV"                            value="0x8511"/>
    <enum name="REFLECTION_MAP_NV"                        value="0x8512"/>
</category>

<!-- Extension number 180 is not listed in the extension registry. -->

<category name="GL_SUN_convolution_border_modes" number="182">
    <enum name="WRAP_BORDER_SUN"                          value="0x81D4"/>
</category>

<!-- Extension number 183 is a GLX extension. -->
<!-- Extension number 184 is not listed in the extension registry. -->

<category name="GL_EXT_texture_env_add" number="185">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_EXT_texture_lod_bias" number="186">
    <enum name="TEXTURE_LOD_BIAS_EXT"          count="1"  value="0x8501">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<category name="GL_EXT_texture_filter_anisotropic" number="187">
    <enum name="TEXTURE_MAX_ANISOTROPY_EXT"    count="1"  value="0x84FE">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="MAX_TEXTURE_MAX_ANISOTROPY_EXT" count="1" value="0x84FF">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_EXT_vertex_weighting" number="188">
    <function name="VertexWeightfEXT" vectorequiv="VertexWeightfvEXT">
        <param name="weight" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="VertexWeightfvEXT">
        <param name="weight" type="const GLfloat *" count="1"/>
        <glx rop="4135" ignore="true"/>
    </function>

    <function name="VertexWeightPointerEXT">
        <param name="size" type="GLsizei"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true" ignore="true"/>
    </function>
</category>

<category name="GL_NV_light_max_exponent" number="189">
    <enum name="MAX_SHININESS_NV"              count="1"  value="0x8504">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="MAX_SPOT_EXPONENT_NV"          count="1"  value="0x8505">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_NV_vertex_array_range" number="190">
    <function name="FlushVertexArrayRangeNV" offset="assign">
        <glx ignore="true"/>
    </function>

    <function name="VertexArrayRangeNV" offset="assign">
        <param name="length" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_NV_register_combiners" number="191">
    <function name="CombinerParameterfvNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *" variable_param="pname"/>
        <glx rop="4137" ignore="true"/>
    </function>

    <function name="CombinerParameterfNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
        <glx rop="4136" ignore="true"/>
    </function>

    <function name="CombinerParameterivNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="4139" ignore="true"/>
    </function>

    <function name="CombinerParameteriNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="4138" ignore="true"/>
    </function>

    <function name="CombinerInputNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="variable" type="GLenum"/>
        <param name="input" type="GLenum"/>
        <param name="mapping" type="GLenum"/>
        <param name="componentUsage" type="GLenum"/>
        <glx rop="4140" ignore="true"/>
    </function>

    <function name="CombinerOutputNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="abOutput" type="GLenum"/>
        <param name="cdOutput" type="GLenum"/>
        <param name="sumOutput" type="GLenum"/>
        <param name="scale" type="GLenum"/>
        <param name="bias" type="GLenum"/>
        <param name="abDotProduct" type="GLboolean"/>
        <param name="cdDotProduct" type="GLboolean"/>
        <param name="muxSum" type="GLboolean"/>
        <glx rop="4141" ignore="true"/>
    </function>

    <function name="FinalCombinerInputNV" offset="assign">
        <param name="variable" type="GLenum"/>
        <param name="input" type="GLenum"/>
        <param name="mapping" type="GLenum"/>
        <param name="componentUsage" type="GLenum"/>
        <glx rop="4142" ignore="true"/>
    </function>

    <function name="GetCombinerInputParameterfvNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="variable" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx vendorpriv="1270" ignore="true"/>
    </function>

    <function name="GetCombinerInputParameterivNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="variable" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
        <glx vendorpriv="1271" ignore="true"/>
    </function>

    <function name="GetCombinerOutputParameterfvNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx vendorpriv="1272" ignore="true"/>
    </function>

    <function name="GetCombinerOutputParameterivNV" offset="assign">
        <param name="stage" type="GLenum"/>
        <param name="portion" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
        <glx vendorpriv="1273" ignore="true"/>
    </function>

    <function name="GetFinalCombinerInputParameterfvNV" offset="assign">
        <param name="variable" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
        <glx vendorpriv="1274" ignore="true"/>
    </function>

    <function name="GetFinalCombinerInputParameterivNV" offset="assign">
        <param name="variable" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
        <glx vendorpriv="1275" ignore="true"/>
    </function>
</category>

<category name="GL_NV_fog_distance" number="192">
    <enum name="FOG_DISTANCE_MODE_NV"          count="1"  value="0x855A">
        <size name="Fogfv"/>
        <size name="Fogiv"/>
        <size name="Get" mode="get"/>
    </enum>
    <enum name="EYE_RADIAL_NV"                            value="0x855B"/>
    <enum name="EYE_PLANE_ABSOLUTE_NV"                    value="0x855C"/>
</category>

<category name="GL_NV_blend_square" number="194">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_NV_texture_env_combine4" number="195">
    <enum name="COMBINE4"                                 value="0x8503"/>
    <enum name="SOURCE3_RGB_NV"                count="1"  value="0x8583">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="SOURCE3_ALPHA_NV"              count="1"  value="0x858B">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND3_RGB_NV"               count="1"  value="0x8593">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="OPERAND3_ALPHA_NV"             count="1"  value="0x859B">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
</category>

<category name="GL_MESA_resize_buffers" number="196">
    <function name="ResizeBuffersMESA" offset="assign">
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_MESA_window_pos" number="197">
    <function name="WindowPos2dMESA" offset="assign">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2dvMESA" offset="assign">
        <param name="v" type="const GLdouble *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2fMESA" offset="assign">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2fvMESA" offset="assign">
        <param name="v" type="const GLfloat *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2iMESA" offset="assign">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2ivMESA" offset="assign">
        <param name="v" type="const GLint *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2sMESA" offset="assign">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos2svMESA" offset="assign">
        <param name="v" type="const GLshort *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3dMESA" offset="assign">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3dvMESA" offset="assign">
        <param name="v" type="const GLdouble *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3fMESA" offset="assign" vectorequiv="WindowPos3fvMESA">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="WindowPos3fvMESA" offset="assign">
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="230"/>
    </function>

    <function name="WindowPos3iMESA" offset="assign">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3ivMESA" offset="assign">
        <param name="v" type="const GLint *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3sMESA" offset="assign">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos3svMESA" offset="assign">
        <param name="v" type="const GLshort *"/>
        <glx handcode="true"/>
    </function>

    <function name="WindowPos4dMESA" offset="assign">
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4dvMESA" offset="assign">
        <param name="v" type="const GLdouble *"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4fMESA" offset="assign">
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4fvMESA" offset="assign">
        <param name="v" type="const GLfloat *"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4iMESA" offset="assign">
        <param name="x" type="GLint"/>
        <param name="y" type="GLint"/>
        <param name="z" type="GLint"/>
        <param name="w" type="GLint"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4ivMESA" offset="assign">
        <param name="v" type="const GLint *"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4sMESA" offset="assign">
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
        <glx ignore="true"/>
    </function>

    <function name="WindowPos4svMESA" offset="assign">
        <param name="v" type="const GLshort *"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_texture_compression_s3tc" number="198">
    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
</category>

<category name="GL_IBM_multimode_draw_arrays" number="200">
    <function name="MultiModeDrawArraysIBM" offset="assign" static_dispatch="false">
        <param name="mode" type="const GLenum *"/>
        <param name="first" type="const GLint *"/>
        <param name="count" type="const GLsizei *"/>
        <param name="primcount" type="GLsizei"/>
        <param name="modestride" type="GLint"/>
        <glx handcode="true" ignore="true"/>
    </function>

    <function name="MultiModeDrawElementsIBM" offset="assign" static_dispatch="false">
        <param name="mode" type="const GLenum *"/>
        <param name="count" type="const GLsizei *"/>
        <param name="type" type="GLenum"/>
        <param name="indices" type="const GLvoid * const *"/>
        <param name="primcount" type="GLsizei"/>
        <param name="modestride" type="GLint"/>
        <glx handcode="true" ignore="true"/>
    </function>
</category>

<category name="GL_IBM_vertex_array_lists" number="201">
    <function name="ColorPointerListIBM">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="SecondaryColorPointerListIBM">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="EdgeFlagPointerListIBM">
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLboolean **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="FogCoordPointerListIBM">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="IndexPointerListIBM">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="NormalPointerListIBM">
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="TexCoordPointerListIBM">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>

    <function name="VertexPointerListIBM">
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLint"/>
        <param name="pointer" type="const GLvoid **"/>
        <param name="ptrstride" type="GLint"/>
    </function>
</category>

<!-- Extension number 202 is not listed in the extension registry. -->
<!-- Extension number 203 is not listed in the extension registry. -->
<!-- Extension number 204 is not listed in the extension registry. -->
<!-- Extension number 205 is not listed in the extension registry. -->

<category name="GL_3DFX_texture_compression_FXT1" number="206">
    <enum name="COMPRESSED_RGB_FXT1_3DFX"                 value="0x86B0"/>
    <enum name="COMPRESSED_RGBA_FXT1_3DFX"                value="0x86B1"/>
</category>

<category name="GL_3DFX_multisample" number="207">
    <enum name="MULTISAMPLE_3DFX"                         value="0x86B2"/>
    <enum name="SAMPLE_BUFFERS_3DFX"                      value="0x86B3"/>
    <enum name="SAMPLES_3DFX"                             value="0x86B4"/>
    <enum name="MULTISAMPLE_BIT_3DFX"                     value="0x20000000"/>
</category>

<category name="GL_3DFX_tbuffer" number="208">
    <function name="TbufferMask3DFX">
        <param name="mask" type="GLuint"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_EXT_multisample" number="209">
    <function name="SampleMaskEXT" alias="SampleMaskSGIS" static_dispatch="false">
        <param name="value" type="GLclampf"/>
        <param name="invert" type="GLboolean"/>
    </function>

    <function name="SamplePatternEXT" alias="SamplePatternSGIS" static_dispatch="false">
        <param name="pattern" type="GLenum"/>
    </function>
</category>

<!-- Extension number 211 is not listed in the extension registry. -->
<!-- Extension number 213 is not listed in the extension registry. -->

<category name="GL_SGIS_texture_color_mask" number="214">
    <enum name="TEXTURE_COLOR_WRITEMASK_SGIS"             value="0x81EF"/>

    <function name="TextureColorMaskSGIS">
        <param name="red" type="GLboolean"/>
        <param name="green" type="GLboolean"/>
        <param name="blue" type="GLboolean"/>
        <param name="alpha" type="GLboolean"/>
        <glx rop="2082" ignore="true"/>
    </function>
</category>

<!-- Extension number 215 is a GLX extension. -->
<!-- Extension number 216 is a GLX extension. -->
<!-- Extension number 217 is a GLX extension. -->
<!-- Extension number 218 is a GLX extension. -->
<!-- Extension number 219 is not listed in the extension registry. -->

<category name="GL_EXT_texture_env_dot3" number="220">
    <enum name="DOT3_RGB_EXT"                             value="0x8740"/>
    <enum name="DOT3_RGBA_EXT"                            value="0x8741"/>
</category>

<category name="GL_ATI_texture_mirror_once" number="221">
    <enum name="MIRROR_CLAMP_ATI"                         value="0x8742"/>
    <enum name="MIRROR_CLAMP_TO_EDGE_ATI"                 value="0x8743"/>
</category>

<category name="GL_NV_fence" number="222">
    <function name="DeleteFencesNV" offset="assign" static_dispatch="false">
        <param name="n" type="GLsizei"/>
        <param name="fences" type="const GLuint *"/>
        <glx ignore="true"/>
    </function>

    <function name="GenFencesNV" offset="assign" static_dispatch="false">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="fences" type="GLuint *" output="true" count="n"/>
        <glx ignore="true"/>
    </function>

    <function name="IsFenceNV" offset="assign" static_dispatch="false">
        <param name="fence" type="GLuint"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>

    <function name="TestFenceNV" offset="assign" static_dispatch="false">
        <param name="fence" type="GLuint"/>
        <return type="GLboolean"/>
        <glx ignore="true"/>
    </function>

    <function name="GetFenceivNV" offset="assign" static_dispatch="false">
        <param name="fence" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
        <glx ignore="true"/>
    </function>

    <function name="FinishFenceNV" offset="assign" static_dispatch="false">
        <param name="fence" type="GLuint"/>
        <glx ignore="true"/>
    </function>

    <function name="SetFenceNV" offset="assign" static_dispatch="false">
        <param name="fence" type="GLuint"/>
        <param name="condition" type="GLenum"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_IBM_texture_mirrored_repeat" number="224">
    <enum name="MIRRORED_REPEAT_IBM"                      value="0x8370"/>
</category>

<category name="GL_NV_evaluators" number="225">
    <function name="MapControlPointsNV">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="type" type="GLenum"/>
        <param name="ustride" type="GLsizei"/>
        <param name="vstride" type="GLsizei"/>
        <param name="uorder" type="GLint"/>
        <param name="vorder" type="GLint"/>
        <param name="packed" type="GLboolean"/>
        <param name="points" type="const GLvoid *"/>
    </function>

    <function name="MapParameterivNV">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *"/>
    </function>

    <function name="MapParameterfvNV">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="GetMapControlPointsNV">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="type" type="GLenum"/>
        <param name="ustride" type="GLsizei"/>
        <param name="vstride" type="GLsizei"/>
        <param name="packed" type="GLboolean"/>
        <param name="points" type="GLvoid *" output="true"/>
    </function>

    <function name="GetMapParameterivNV">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
    </function>

    <function name="GetMapParameterfvNV">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
    </function>

    <function name="GetMapAttribParameterivNV">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true"/>
    </function>

    <function name="GetMapAttribParameterfvNV">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
    </function>

    <function name="EvalMapsNV">
        <param name="target" type="GLenum"/>
        <param name="mode" type="GLenum"/>
    </function>
</category>

<category name="GL_NV_packed_depth_stencil" number="226">
    <enum name="DEPTH_STENCIL_NV"                         value="0x84F9"/>
    <enum name="UNSIGNED_INT_24_8_NV"                     value="0x84FA"/>
</category>

<category name="GL_NV_register_combiners2" number="227">
    <function name="CombinerStageParameterfvNV">
        <param name="stage" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="GetCombinerStageParameterfvNV">
        <param name="stage" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true"/>
    </function>
</category>

<category name="GL_NV_texture_compression_vtc" number="228">
    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
</category>

<category name="GL_NV_texture_rectangle" number="229">
    <enum name="TEXTURE_RECTANGLE_NV"          count="1"  value="0x84F5">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="TEXTURE_BINDING_RECTANGLE_NV"  count="1"  value="0x84F6">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="PROXY_TEXTURE_RECTANGLE_NV"               value="0x84F7"/>
    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_NV" count="1"  value="0x84F8">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_NV_vertex_program" number="233">
    <enum name="VERTEX_PROGRAM_NV"                        value="0x8620"/>
    <enum name="VERTEX_STATE_PROGRAM_NV"                  value="0x8621"/>
    <enum name="ATTRIB_ARRAY_SIZE_NV"          count="1"  value="0x8623">
        <size name="GetVertexAttribdvNV" mode="get"/>
        <size name="GetVertexAttribfvNV" mode="get"/>
        <size name="GetVertexAttribivNV" mode="get"/>
    </enum>
    <enum name="ATTRIB_ARRAY_STRIDE_NV"        count="1"  value="0x8624">
        <size name="GetVertexAttribdvNV" mode="get"/>
        <size name="GetVertexAttribfvNV" mode="get"/>
        <size name="GetVertexAttribivNV" mode="get"/>
    </enum>
    <enum name="ATTRIB_ARRAY_TYPE_NV"          count="1"  value="0x8625">
        <size name="GetVertexAttribdvNV" mode="get"/>
        <size name="GetVertexAttribfvNV" mode="get"/>
        <size name="GetVertexAttribivNV" mode="get"/>
    </enum>
    <enum name="CURRENT_ATTRIB_NV"             count="1"  value="0x8626">
        <size name="GetVertexAttribdvNV" mode="get"/>
        <size name="GetVertexAttribfvNV" mode="get"/>
        <size name="GetVertexAttribivNV" mode="get"/>
    </enum>
    <enum name="PROGRAM_LENGTH_NV"             count="1"  value="0x8627">
        <size name="GetProgramivNV" mode="get"/>
    </enum>
    <enum name="PROGRAM_STRING_NV"                        value="0x8628"/>
    <enum name="MODELVIEW_PROJECTION_NV"                  value="0x8629"/>
    <enum name="IDENTITY_NV"                              value="0x862A"/>
    <enum name="INVERSE_NV"                               value="0x862B"/>
    <enum name="TRANSPOSE_NV"                             value="0x862C"/>
    <enum name="INVERSE_TRANSPOSE_NV"                     value="0x862D"/>
    <enum name="MAX_TRACK_MATRIX_STACK_DEPTH_NV"          value="0x862E"/>
    <enum name="MAX_TRACK_MATRICES_NV"                    value="0x862F"/>
    <enum name="MATRIX0_NV"                               value="0x8630"/>
    <enum name="MATRIX1_NV"                               value="0x8631"/>
    <enum name="MATRIX2_NV"                               value="0x8632"/>
    <enum name="MATRIX3_NV"                               value="0x8633"/>
    <enum name="MATRIX4_NV"                               value="0x8634"/>
    <enum name="MATRIX5_NV"                               value="0x8635"/>
    <enum name="MATRIX6_NV"                               value="0x8636"/>
    <enum name="MATRIX7_NV"                               value="0x8637"/>
    <enum name="CURRENT_MATRIX_STACK_DEPTH_NV"            value="0x8640"/>
    <enum name="CURRENT_MATRIX_NV"                        value="0x8641"/>
    <enum name="VERTEX_PROGRAM_POINT_SIZE_NV"             value="0x8642"/>
    <enum name="VERTEX_PROGRAM_TWO_SIDE_NV"               value="0x8643"/>
    <enum name="PROGRAM_PARAMETER_NV"                     value="0x8644"/>
    <enum name="ATTRIB_ARRAY_POINTER_NV"                  value="0x8645"/>
    <enum name="PROGRAM_TARGET_NV"             count="1"  value="0x8646">
        <size name="GetProgramivNV" mode="get"/>
    </enum>
    <enum name="PROGRAM_RESIDENT_NV"           count="1"  value="0x8647">
        <size name="GetProgramivNV" mode="get"/>
    </enum>
    <enum name="TRACK_MATRIX_NV"                          value="0x8648"/>
    <enum name="TRACK_MATRIX_TRANSFORM_NV"                value="0x8649"/>
    <enum name="VERTEX_PROGRAM_BINDING_NV"                value="0x864A"/>
    <enum name="PROGRAM_ERROR_POSITION_NV"                value="0x864B"/>
    <enum name="VERTEX_ATTRIB_ARRAY0_NV"                  value="0x8650"/>
    <enum name="VERTEX_ATTRIB_ARRAY1_NV"                  value="0x8651"/>
    <enum name="VERTEX_ATTRIB_ARRAY2_NV"                  value="0x8652"/>
    <enum name="VERTEX_ATTRIB_ARRAY3_NV"                  value="0x8653"/>
    <enum name="VERTEX_ATTRIB_ARRAY4_NV"                  value="0x8654"/>
    <enum name="VERTEX_ATTRIB_ARRAY5_NV"                  value="0x8655"/>
    <enum name="VERTEX_ATTRIB_ARRAY6_NV"                  value="0x8656"/>
    <enum name="VERTEX_ATTRIB_ARRAY7_NV"                  value="0x8657"/>
    <enum name="VERTEX_ATTRIB_ARRAY8_NV"                  value="0x8658"/>
    <enum name="VERTEX_ATTRIB_ARRAY9_NV"                  value="0x8659"/>
    <enum name="VERTEX_ATTRIB_ARRAY10_NV"                 value="0x865A"/>
    <enum name="VERTEX_ATTRIB_ARRAY11_NV"                 value="0x865B"/>
    <enum name="VERTEX_ATTRIB_ARRAY12_NV"                 value="0x865C"/>
    <enum name="VERTEX_ATTRIB_ARRAY13_NV"                 value="0x865D"/>
    <enum name="VERTEX_ATTRIB_ARRAY14_NV"                 value="0x865E"/>
    <enum name="VERTEX_ATTRIB_ARRAY15_NV"                 value="0x865F"/>
    <enum name="MAP1_VERTEX_ATTRIB0_4_NV"                 value="0x8660"/>
    <enum name="MAP1_VERTEX_ATTRIB1_4_NV"                 value="0x8661"/>
    <enum name="MAP1_VERTEX_ATTRIB2_4_NV"                 value="0x8662"/>
    <enum name="MAP1_VERTEX_ATTRIB3_4_NV"                 value="0x8663"/>
    <enum name="MAP1_VERTEX_ATTRIB4_4_NV"                 value="0x8664"/>
    <enum name="MAP1_VERTEX_ATTRIB5_4_NV"                 value="0x8665"/>
    <enum name="MAP1_VERTEX_ATTRIB6_4_NV"                 value="0x8666"/>
    <enum name="MAP1_VERTEX_ATTRIB7_4_NV"                 value="0x8667"/>
    <enum name="MAP1_VERTEX_ATTRIB8_4_NV"                 value="0x8668"/>
    <enum name="MAP1_VERTEX_ATTRIB9_4_NV"                 value="0x8669"/>
    <enum name="MAP1_VERTEX_ATTRIB10_4_NV"                value="0x866A"/>
    <enum name="MAP1_VERTEX_ATTRIB11_4_NV"                value="0x866B"/>
    <enum name="MAP1_VERTEX_ATTRIB12_4_NV"                value="0x866C"/>
    <enum name="MAP1_VERTEX_ATTRIB13_4_NV"                value="0x866D"/>
    <enum name="MAP1_VERTEX_ATTRIB14_4_NV"                value="0x866E"/>
    <enum name="MAP1_VERTEX_ATTRIB15_4_NV"                value="0x866F"/>
    <enum name="MAP2_VERTEX_ATTRIB0_4_NV"                 value="0x8670"/>
    <enum name="MAP2_VERTEX_ATTRIB1_4_NV"                 value="0x8671"/>
    <enum name="MAP2_VERTEX_ATTRIB2_4_NV"                 value="0x8672"/>
    <enum name="MAP2_VERTEX_ATTRIB3_4_NV"                 value="0x8673"/>
    <enum name="MAP2_VERTEX_ATTRIB4_4_NV"                 value="0x8674"/>
    <enum name="MAP2_VERTEX_ATTRIB5_4_NV"                 value="0x8675"/>
    <enum name="MAP2_VERTEX_ATTRIB6_4_NV"                 value="0x8676"/>
    <enum name="MAP2_VERTEX_ATTRIB7_4_NV"                 value="0x8677"/>
    <enum name="MAP2_VERTEX_ATTRIB8_4_NV"                 value="0x8678"/>
    <enum name="MAP2_VERTEX_ATTRIB9_4_NV"                 value="0x8679"/>
    <enum name="MAP2_VERTEX_ATTRIB10_4_NV"                value="0x867A"/>
    <enum name="MAP2_VERTEX_ATTRIB11_4_NV"                value="0x867B"/>
    <enum name="MAP2_VERTEX_ATTRIB12_4_NV"                value="0x867C"/>
    <enum name="MAP2_VERTEX_ATTRIB13_4_NV"                value="0x867D"/>
    <enum name="MAP2_VERTEX_ATTRIB14_4_NV"                value="0x867E"/>
    <enum name="MAP2_VERTEX_ATTRIB15_4_NV"                value="0x867F"/>

    <function name="AreProgramsResidentNV" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="ids" type="const GLuint *" count="n"/>
        <param name="residences" type="GLboolean *" output="true" count="n"/>
        <return type="GLboolean"/>
        <glx vendorpriv="1293"/>
    </function>

    <function name="BindProgramNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="program" type="GLuint"/>
        <glx rop="4180"/>
    </function>

    <function name="DeleteProgramsNV" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="programs" type="const GLuint *" count="n"/>
        <glx vendorpriv="1294"/>
    </function>

    <function name="ExecuteProgramNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="id" type="GLuint"/>
        <param name="params" type="const GLfloat *" count="4"/>
        <glx rop="4181"/>
    </function>

    <function name="GenProgramsNV" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="programs" type="GLuint *" output="true" count="n"/>
        <glx vendorpriv="1295" always_array="true"/>
     </function>

    <!-- This isn't 100% correct.  Currently, the only valid value of pname
         is GL_PROGRAM_PARAMETER_NV, and the count for that pname is always
         4.  This is why the pname parameter was removed in the ARB version
         of these functions.
      -->

    <function name="GetProgramParameterdvNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" count="4"/>
        <glx vendorpriv="1297"/>
    </function>

    <function name="GetProgramParameterfvNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" count="4"/>
        <glx vendorpriv="1296"/>
    </function>

    <function name="GetProgramivNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="1298"/>
    </function>

    <function name="GetProgramStringNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="program" type="GLubyte *" output="true"/>
        <glx vendorpriv="1299" handcode="server" always_array="true"/>
    </function>

    <function name="GetTrackMatrixivNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="address" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" count="1"/>
        <glx vendorpriv="1300"/>
    </function>

    <function name="GetVertexAttribdvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
        <glx vendorpriv="1301"/>
    </function>

    <function name="GetVertexAttribfvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
        <glx vendorpriv="1302"/>
    </function>

    <function name="GetVertexAttribivNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint *" output="true" variable_param="pname"/>
        <glx vendorpriv="1303"/>
    </function>

    <function name="GetVertexAttribPointervNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="pointer" type="GLvoid **" output="true"/>
        <glx handcode="true"/>
    </function>

    <function name="IsProgramNV" offset="assign">
        <param name="program" type="GLuint"/>
        <return type="GLboolean"/>
        <glx vendorpriv="1304"/>
    </function>

    <function name="LoadProgramNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="program" type="const GLubyte *" count="len"/>
        <glx rop="4183"/>
    </function>

    <function name="ProgramParameter4dNV" alias="ProgramEnvParameter4dARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="ProgramParameter4dvNV" alias="ProgramEnvParameter4dvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLdouble *"/>
    </function>

    <function name="ProgramParameter4fNV" alias="ProgramEnvParameter4fARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="ProgramParameter4fvNV" alias="ProgramEnvParameter4fvARB">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="ProgramParameters4dvNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="num" type="GLsizei" counter="true"/>
        <param name="params" type="const GLdouble *" count="num" count_scale="4"/>
        <glx rop="4187"/>
    </function>

    <function name="ProgramParameters4fvNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="num" type="GLsizei" counter="true"/>
        <param name="params" type="const GLfloat *" count="num" count_scale="4"/>
        <glx rop="4186"/>
    </function>

    <function name="RequestResidentProgramsNV" offset="assign">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="ids" type="const GLuint *" count="n"/>
        <glx rop="4182"/>
    </function>

    <function name="TrackMatrixNV" offset="assign">
        <param name="target" type="GLenum"/>
        <param name="address" type="GLuint"/>
        <param name="matrix" type="GLenum"/>
        <param name="transform" type="GLenum"/>
        <glx rop="4188"/>
    </function>

    <function name="VertexAttribPointerNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="size" type="GLint"/>
        <param name="type" type="GLenum"/>
        <param name="stride" type="GLsizei"/>
        <param name="pointer" type="const GLvoid *"/>
        <glx handcode="true"/>
    </function>

    <function name="VertexAttrib1sNV" offset="assign" vectorequiv="VertexAttrib1svNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
    </function>

    <function name="VertexAttrib1svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="1"/>
        <glx rop="4265"/>
    </function>

    <function name="VertexAttrib2sNV" offset="assign" vectorequiv="VertexAttrib2svNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
    </function>

    <function name="VertexAttrib2svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="2"/>
        <glx rop="4266"/>
    </function>

    <function name="VertexAttrib3sNV" offset="assign" vectorequiv="VertexAttrib3svNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
    </function>

    <function name="VertexAttrib3svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="3"/>
        <glx rop="4267"/>
    </function>

    <function name="VertexAttrib4sNV" offset="assign" vectorequiv="VertexAttrib4svNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLshort"/>
        <param name="y" type="GLshort"/>
        <param name="z" type="GLshort"/>
        <param name="w" type="GLshort"/>
    </function>

    <function name="VertexAttrib4svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLshort *" count="4"/>
        <glx rop="4268"/>
    </function>

    <function name="VertexAttrib1fNV" offset="assign" vectorequiv="VertexAttrib1fvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
    </function>

    <function name="VertexAttrib1fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="1"/>
        <glx rop="4269"/>
    </function>

    <function name="VertexAttrib2fNV" offset="assign" vectorequiv="VertexAttrib2fvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
    </function>

    <function name="VertexAttrib2fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="2"/>
        <glx rop="4270"/>
    </function>

    <function name="VertexAttrib3fNV" offset="assign" vectorequiv="VertexAttrib3fvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
    </function>

    <function name="VertexAttrib3fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="3"/>
        <glx rop="4271"/>
    </function>

    <function name="VertexAttrib4fNV" offset="assign" vectorequiv="VertexAttrib4fvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="VertexAttrib4fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="4272"/>
    </function>

    <function name="VertexAttrib1dNV" offset="assign" vectorequiv="VertexAttrib1dvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
    </function>

    <function name="VertexAttrib1dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="1"/>
        <glx rop="4273" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib2dNV" offset="assign" vectorequiv="VertexAttrib2dvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
    </function>

    <function name="VertexAttrib2dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="2"/>
        <glx rop="4274" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib3dNV" offset="assign" vectorequiv="VertexAttrib3dvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
    </function>

    <function name="VertexAttrib3dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="3"/>
        <glx rop="4275" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib4dNV" offset="assign" vectorequiv="VertexAttrib4dvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="VertexAttrib4dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="4276" doubles_in_order="true"/>
    </function>

    <function name="VertexAttrib4ubNV" offset="assign" vectorequiv="VertexAttrib4ubvNV">
        <param name="index" type="GLuint"/>
        <param name="x" type="GLubyte"/>
        <param name="y" type="GLubyte"/>
        <param name="z" type="GLubyte"/>
        <param name="w" type="GLubyte"/>
    </function>

    <function name="VertexAttrib4ubvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="v" type="const GLubyte *" count="4"/>
        <glx rop="4277"/>
    </function>

    <function name="VertexAttribs1svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLshort *" count="n"/>
        <glx rop="4202"/>
    </function>

    <function name="VertexAttribs2svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLshort *" count="n" count_scale="2"/>
        <glx rop="4203"/>
    </function>

    <function name="VertexAttribs3svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLshort *" count="n" count_scale="3"/>
        <glx rop="4204"/>
    </function>

    <function name="VertexAttribs4svNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLshort *" count="n" count_scale="4"/>
        <glx rop="4205"/>
    </function>

    <function name="VertexAttribs1fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLfloat *" count="n"/>
        <glx rop="4206"/>
    </function>

    <function name="VertexAttribs2fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLfloat *" count="n" count_scale="2"/>
        <glx rop="4207"/>
    </function>

    <function name="VertexAttribs3fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLfloat *" count="n" count_scale="3"/>
        <glx rop="4208"/>
    </function>

    <function name="VertexAttribs4fvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLfloat *" count="n" count_scale="4"/>
        <glx rop="4209"/>
    </function>

    <function name="VertexAttribs1dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLdouble *" count="n"/>
        <glx rop="4210" doubles_in_order="true"/>
    </function>

    <function name="VertexAttribs2dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLdouble *" count="n" count_scale="2"/>
        <glx rop="4211" doubles_in_order="true"/>
    </function>

    <function name="VertexAttribs3dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLdouble *" count="n" count_scale="3"/>
        <glx rop="4212" doubles_in_order="true"/>
    </function>

    <function name="VertexAttribs4dvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLdouble *" count="n" count_scale="4"/>
        <glx rop="4213" doubles_in_order="true"/>
    </function>

    <function name="VertexAttribs4ubvNV" offset="assign">
        <param name="index" type="GLuint"/>
        <param name="n" type="GLsizei" counter="true"/>
        <param name="v" type="const GLubyte *" count="n" count_scale="4"/>
        <glx rop="4214"/>
    </function>
</category>

<!-- Extension number 234 is a GLX extension. -->

<category name="GL_SGIX_texture_coordinate_clamp" number="235">
    <enum name="TEXTURE_MAX_CLAMP_S_SGIX"      count="1"  value="0x8369">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_MAX_CLAMP_T_SGIX"      count="1"  value="0x836A">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
    <enum name="TEXTURE_MAX_CLAMP_R_SGIX"      count="1"  value="0x836B">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<!-- Extension number 236 is not listed in the extension registry. -->
<!-- Extension number 237 is a GLX extension. -->
<!-- Extension number 238 is a GLX extension. -->
<!-- Extension number 242 is a WGL extension. -->

<category name="GL_NV_copy_depth_to_color" number="243">
    <enum name="DEPTH_STENCIL_TO_RGBA_NV"                 value="0x886E"/>
    <enum name="DEPTH_STENCIL_TO_BGRA_NV"                 value="0x886F"/>
</category>

<category name="GL_ATI_envmap_bumpmap" number="244">
    <enum name="BUMP_ROT_MATRIX_ATI"          count="4"   value="0x8775">
        <size name="TexBumpParameterfv"/>
        <size name="TexBumpParameteriv"/>
        <size name="GetTexBumpParameterfv" mode="get"/>
        <size name="GetTexBumpParameteriv" mode="get"/>
    </enum>
    <enum name="BUMP_ROT_MATRIX_SIZE_ATI"     count="1"   value="0x8776">
        <size name="GetTexBumpParameterfv" mode="get"/>
        <size name="GetTexBumpParameteriv" mode="get"/>
    </enum>
    <enum name="BUMP_NUM_TEX_UNITS_ATI"       count="1"   value="0x8777">
        <size name="GetTexBumpParameterfv" mode="get"/>
        <size name="GetTexBumpParameteriv" mode="get"/>
    </enum>
    <enum name="BUMP_TEX_UNITS_ATI"           count="-1"  value="0x8778">
        <size name="GetTexBumpParameterfv" mode="get"/>
        <size name="GetTexBumpParameteriv" mode="get"/>
    </enum>
    <enum name="DUDV_ATI"                                 value="0x8779"/>
    <enum name="DU8DV8_ATI"                               value="0x877A"/>
    <enum name="BUMP_ENVMAP_ATI"                          value="0x877B"/>
    <enum name="BUMP_TARGET_ATI"              count="1"   value="0x877C">
        <size name="TexEnviv"/>
        <size name="TexEnvfv"/>
        <size name="GetTexEnviv" mode="get"/>
        <size name="GetTexEnvfv" mode="get"/>
    </enum>
    <function name="TexBumpParameterfvATI" offset="assign">
      <param name="pname" type="GLenum"/>
      <param name="param" type="const GLfloat *" variable_param="pname"/>
      <glx ignore="true"/>
    </function>
    <function name="TexBumpParameterivATI" offset="assign">
      <param name="pname" type="GLenum"/>
      <param name="param" type="const GLint *" variable_param="pname"/>
      <glx ignore="true"/>
    </function>
    <function name="GetTexBumpParameterfvATI" offset="assign">
      <param name="pname" type="GLenum"/>
      <param name="param" type="GLfloat *" variable_param="pname"/>
      <glx ignore="true"/>
    </function>
    <function name="GetTexBumpParameterivATI" offset="assign">
      <param name="pname" type="GLenum"/>
      <param name="param" type="GLint *" variable_param="pname"/>
      <glx ignore="true"/>
    </function>
</category>

<category name="GL_ATI_fragment_shader" number="245">
    <function name="GenFragmentShadersATI" offset="assign">
      <return type="GLuint"/>
      <param name="range" type="GLuint"/>
      <glx ignore="true"/>
    </function>
    
    <function name="BindFragmentShaderATI" offset="assign">
      <param name="id" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="DeleteFragmentShaderATI" offset="assign">
      <param name="id" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="BeginFragmentShaderATI" offset="assign">
      <glx ignore="true"/>
    </function>

    <function name="EndFragmentShaderATI" offset="assign">
      <glx ignore="true"/>
    </function>
    
    <function name="PassTexCoordATI" offset="assign">
      <param name="dst" type="GLuint"/>
      <param name="coord" type="GLuint"/>
      <param name="swizzle" type="GLenum"/>
      <glx ignore="true"/>
    </function>

    <function name="SampleMapATI" offset="assign">
      <param name="dst" type="GLuint"/>
      <param name="interp" type="GLuint"/>
      <param name="swizzle" type="GLenum"/>
      <glx ignore="true"/>
    </function>

    <function name="ColorFragmentOp1ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMask" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="ColorFragmentOp2ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMask" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <param name="arg2" type="GLuint"/>
      <param name="arg2Rep" type="GLuint"/>
      <param name="arg2Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="ColorFragmentOp3ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMask" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <param name="arg2" type="GLuint"/>
      <param name="arg2Rep" type="GLuint"/>
      <param name="arg2Mod" type="GLuint"/>
      <param name="arg3" type="GLuint"/>
      <param name="arg3Rep" type="GLuint"/>
      <param name="arg3Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="AlphaFragmentOp1ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="AlphaFragmentOp2ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <param name="arg2" type="GLuint"/>
      <param name="arg2Rep" type="GLuint"/>
      <param name="arg2Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="AlphaFragmentOp3ATI" offset="assign">
      <param name="op" type="GLenum"/>
      <param name="dst" type="GLuint"/>
      <param name="dstMod" type="GLuint"/>
      <param name="arg1" type="GLuint"/>
      <param name="arg1Rep" type="GLuint"/>
      <param name="arg1Mod" type="GLuint"/>
      <param name="arg2" type="GLuint"/>
      <param name="arg2Rep" type="GLuint"/>
      <param name="arg2Mod" type="GLuint"/>
      <param name="arg3" type="GLuint"/>
      <param name="arg3Rep" type="GLuint"/>
      <param name="arg3Mod" type="GLuint"/>
      <glx ignore="true"/>
    </function>

    <function name="SetFragmentShaderConstantATI" offset="assign">
      <param name="dst" type="GLuint"/>
      <param name="value" type="const GLfloat *"/>
      <glx ignore="true"/>
    </function>
</category>

<!-- Extension number 250 is a WGL extension. -->
<!-- Extension number 251 is a WGL extension. -->
<!-- Extension number 252 is a WGL extension. -->
<!-- Extension number 253 is a WGL extension. -->
<!-- Extension number 254 is a WGL extension. -->
<!-- Extension number 255 is a WGL extension. -->

<category name="GL_SUN_mesh_array" number="257">
    <enum name="QUAD_MESH_SUN"                            value="0x8614"/>
    <enum name="TRIANGLE_MESH_SUN"                        value="0x8615"/>

    <function name="DrawMeshArraysSUN">
        <param name="mode" type="GLenum"/>
        <param name="first" type="GLint"/>
        <param name="count" type="GLsizei"/>
        <param name="width" type="GLsizei"/>
    </function>
</category>

<category name="GL_SUN_slice_accum" number="258">
    <enum name="SLICE_ACCUM_SUN"                          value="0x85CC"/>
</category>

<category name="GL_NV_multisample_filter_hint" number="259">
    <enum name="MULTISAMPLE_FILTER_HINT_NV"    count="1"  value="0x8534">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_NV_depth_clamp" number="260">
    <enum name="DEPTH_CLAMP_NV"                count="1"  value="0x864F">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_NV_point_sprite" number="262">
    <!-- These existing enums can be passed as a parameter to the function
         added for this extension. -->

    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
        <size name="PointParameterivNV"/>
    </enum>
    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
        <size name="PointParameterivNV"/>
    </enum>
    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
        <size name="PointParameterivNV"/>
    </enum>
    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
        <size name="PointParameterivNV"/>
    </enum>

    <enum name="POINT_SPRITE_NV"               count="1"  value="0x8861">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="COORD_REPLACE_NV"              count="1"  value="0x8862">
        <size name="TexEnvfv"/>
        <size name="TexEnviv"/>
        <size name="GetTexEnvfv" mode="get"/>
        <size name="GetTexEnviv" mode="get"/>
    </enum>
    <enum name="POINT_SPRITE_R_MODE_NV"        count="1"  value="0x8863">
        <size name="PointParameterfvEXT"/>
        <size name="PointParameterivNV"/>
        <size name="Get" mode="get"/>
    </enum>

    <function name="PointParameteriNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
        <glx rop="4221"/>
    </function>

    <function name="PointParameterivNV" offset="assign">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLint *" variable_param="pname"/>
        <glx rop="4222"/>
    </function>
</category>

<!-- Extension number 263 is a WGL extension. -->
<!-- Extension number 264 is a WGL extension. -->

<category name="GL_EXT_shadow_funcs" number="267">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_EXT_stencil_two_side" number="268">
    <enum name="STENCIL_TEST_TWO_SIDE_EXT"     count="1"  value="0x8910">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="ACTIVE_STENCIL_FACE_EXT"       count="1"  value="0x8911">
        <size name="Get" mode="get"/>
    </enum>

    <function name="ActiveStencilFaceEXT" offset="assign" static_dispatch="false">
        <param name="face" type="GLenum"/>
        <glx rop="4220"/>
    </function>
</category>

<xi:include href="APPLE_object_purgeable.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="APPLE_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<category name="GL_APPLE_ycbcr_422" number="275">
    <enum name="YCBCR_422_APPLE"                          value="0x85B9"/>
    <enum name="UNSIGNED_SHORT_8_8_APPLE"                 value="0x85BA"/>
    <enum name="UNSIGNED_SHORT_8_8_REV_APPLE"             value="0x85BB"/>
</category>

<category name="GL_S3_s3tc" number="276">
    <enum name="RGB_S3TC"                                 value="0x83A0"/>
    <enum name="RGB4_S3TC"                                value="0x83A1"/>
    <enum name="RGBA_S3TC"                                value="0x83A2"/>
    <enum name="RGBA4_S3TC"                               value="0x83A3"/>
    <enum name="RGBA_DXT5_S3TC"                           value="0x83A4"/>
    <enum name="RGBA4_DXT5_S3TC"                          value="0x83A5"/>
</category>

<category name="GL_ATI_draw_buffers" number="277">
    <enum name="MAX_DRAW_BUFFERS_ATI"          count="1"  value="0x8824">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER0_ATI"              count="1"  value="0x8825">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER1_ATI"              count="1"  value="0x8826">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER2_ATI"              count="1"  value="0x8827">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER3_ATI"              count="1"  value="0x8828">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER4_ATI"              count="1"  value="0x8829">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER5_ATI"              count="1"  value="0x882A">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER6_ATI"              count="1"  value="0x882B">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER7_ATI"              count="1"  value="0x882C">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER8_ATI"              count="1"  value="0x882D">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER9_ATI"              count="1"  value="0x882E">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER10_ATI"             count="1"  value="0x882F">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER11_ATI"             count="1"  value="0x8830">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER12_ATI"             count="1"  value="0x8831">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER13_ATI"             count="1"  value="0x8832">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER14_ATI"             count="1"  value="0x8833">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DRAW_BUFFER15_ATI"             count="1"  value="0x8834">
        <size name="Get" mode="get"/>
    </enum>

    <function name="DrawBuffersATI" alias="DrawBuffersARB">
        <param name="n" type="GLsizei" counter="true"/>
        <param name="bufs" type="const GLenum *" count="n"/>
    </function>
</category>

<!-- Extension number 278 is a WGL extension. -->

<category name="GL_ATI_texture_env_combine3" number="279">
    <enum name="MODULATE_ADD_ATI"                         value="0x8744"/>
    <enum name="MODULATE_SIGNED_ADD_ATI"                  value="0x8745"/>
    <enum name="MODULATE_SUBTRACT_ATI"                    value="0x8746"/>
</category>

<category name="GL_NV_fragment_program" number="282">
    <function name="ProgramNamedParameter4fNV" offset="assign" vectorequiv="ProgramNamedParameter4fvNV">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="x" type="GLfloat"/>
        <param name="y" type="GLfloat"/>
        <param name="z" type="GLfloat"/>
        <param name="w" type="GLfloat"/>
    </function>

    <function name="ProgramNamedParameter4dNV" offset="assign" vectorequiv="ProgramNamedParameter4dvNV">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="x" type="GLdouble"/>
        <param name="y" type="GLdouble"/>
        <param name="z" type="GLdouble"/>
        <param name="w" type="GLdouble"/>
    </function>

    <function name="ProgramNamedParameter4fvNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="v" type="const GLfloat *" count="4"/>
        <glx rop="4218"/>
    </function>

    <function name="ProgramNamedParameter4dvNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="v" type="const GLdouble *" count="4"/>
        <glx rop="4219"/>
    </function>

    <function name="GetProgramNamedParameterfvNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="params" type="GLfloat *" output="true" count="4"/>
        <glx vendorpriv="1310" always_array="true"/>
    </function>

    <function name="GetProgramNamedParameterdvNV" offset="assign">
        <param name="id" type="GLuint"/>
        <param name="len" type="GLsizei" counter="true"/>
        <param name="name" type="const GLubyte *" count="len"/>
        <param name="params" type="GLdouble *" output="true" count="4"/>
        <glx vendorpriv="1311" always_array="true"/>
    </function>
</category>

<category name="GL_NV_texture_expand_normal" number="286">
    <enum name="TEXTURE_UNSIGNED_REMAP_MODE_NV" count="1" value="0x888F">
        <size name="TexParameterfv"/>
        <size name="TexParameteriv"/>
        <size name="GetTexParameterfv" mode="get"/>
        <size name="GetTexParameteriv" mode="get"/>
    </enum>
</category>

<category name="GL_OES_compressed_paletted_texture" number="294">
    <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
    <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
    <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
    <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
    <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
    <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
    <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
    <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
    <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
    <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
</category>

<category name="GL_OES_read_format" number="295">
    <enum name="IMPLEMENTATION_COLOR_READ_TYPE_OES"       value="0x8B9A"/>
    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT_OES"     value="0x8B9B"/>
</category>

<category name="GL_EXT_depth_bounds_test" number="297">
    <enum name="DEPTH_BOUNDS_TEST_EXT"         count="1"  value="0x8890">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="DEPTH_BOUNDS_EXT"              count="2"  value="0x8891">
        <size name="Get" mode="get"/>
    </enum>

    <function name="DepthBoundsEXT" offset="assign" static_dispatch="false">
        <param name="zmin" type="GLclampd"/>
        <param name="zmax" type="GLclampd"/>
        <glx rop="4229" ignore="true"/>
    </function>
</category>

<category name="GL_EXT_texture_mirror_clamp" number="298">
    <enum name="MIRROR_CLAMP_EXT"                         value="0x8742"/>
    <enum name="MIRROR_CLAMP_TO_EDGE_EXT"                 value="0x8743"/>
    <enum name="MIRROR_CLAMP_TO_BORDER_EXT"               value="0x8912"/>
</category>

<category name="GL_EXT_blend_equation_separate" number="299">
    <enum name="BLEND_EQUATION_RGB_EXT"        count="1"  value="0x8009">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="BLEND_EQUATION_ALPHA_EXT"      count="1"  value="0x883D">
        <size name="Get" mode="get"/>
    </enum>

    <function name="BlendEquationSeparateEXT" offset="assign" static_dispatch="false">
        <param name="modeRGB" type="GLenum"/>
        <param name="modeA" type="GLenum"/>
        <glx rop="4228"/>
    </function>
</category>

<category name="GL_MESA_pack_invert" number="300">
    <enum name="PACK_INVERT_MESA"              count="1"  value="0x8758">
        <size name="Get" mode="get"/>
    </enum>
</category>

<category name="GL_MESA_ycbcr_texture" number="301">
    <enum name="YCBCR_MESA"                               value="0x8757"/>
    <enum name="UNSIGNED_SHORT_8_8_MESA"                  value="0x85BA"/>
    <enum name="UNSIGNED_SHORT_8_8_REV_MESA"              value="0x85BB"/>
</category>

<category name="GL_EXT_pixel_buffer_object" number="302">
    <enum name="PIXEL_PACK_BUFFER_EXT"                    value="0x88EB"/>
    <enum name="PIXEL_UNPACK_BUFFER_EXT"                  value="0x88EC"/>
    <enum name="PIXEL_PACK_BUFFER_BINDING_EXT"            value="0x88ED"/>
    <enum name="PIXEL_UNPACK_BUFFER_BINDING_EXT"          value="0x88EF"/>
</category>

<category name="GL_NV_fragment_program_option" number="303">
    <!-- No new functions, types, enums. -->
</category>

<category name="GL_NV_fragment_program2" number="304">
    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_IF_DEPTH_NV"        count="1"  value="0x88F6">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_LOOP_DEPTH_NV"      count="1"  value="0x88F7">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_LOOP_COUNT_NV"      count="1"  value="0x88F8">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
</category>

<category name="GL_NV_vertex_program2_option" number="305">
    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
        <size name="GetProgramivARB" mode="get"/>
    </enum>
</category>

<category name="GL_NV_vertex_program3" number="306">
    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB" count="1" value="0x8B4C"/>
</category>

<!-- Extension number 307 is a GLX extension. -->
<!-- Extension number 308 is a GLX extension. -->

<category name="GL_EXT_texture_compression_dxt1" number="309">
    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
</category>

<xi:include href="EXT_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_packed_depth_stencil.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_provoking_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_draw_buffers2.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>


<category name="GL_APPLE_flush_buffer_range" number="321">
    <enum name="BUFFER_SERIALIZED_MODIFY_APPLE" count="1" value="0x8A12">
        <size name="GetBufferParameteriv" mode="get"/>
    </enum>
    <enum name="BUFFER_FLUSHING_UNMAP_APPLE" count="1" value="0x8A13">
        <size name="GetBufferParameteriv" mode="get"/>
    </enum>
    <function name="BufferParameteriAPPLE" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLint"/>
    </function>
    <function name="FlushMappedBufferRangeAPPLE" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="offset" type="GLintptr"/>
        <param name="size" type="GLsizeiptr"/>
    </function>
</category>

<xi:include href="EXT_texture_array.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<category name="GL_APPLE_texture_range" number="367">
    <enum name="TEXTURE_STORAGE_HINT_APPLE" count="1" value="0x85BC">
        <size name="TexParameteriv"/>
        <size name="TexParameterfv"/>
        <size name="GetTexParameteriv" mode="get"/>
        <size name="GetTexParameterfv" mode="get"/>
    </enum>
    <enum name="STORAGE_PRIVATE_APPLE" count="1" value="0x85BD">
        <size name="TexParameteriv"/>
        <size name="TexParameterfv"/>
    </enum>
    <enum name="STORAGE_CACHED_APPLE" count="1" value="0x85BE">
        <size name="TexParameteriv"/>
        <size name="TexParameterfv"/>
    </enum>
    <enum name="STORAGE_SHARED_APPLE" count="1" value="0x85BF">
        <size name="TexParameteriv"/>
        <size name="TexParameterfv"/>
    </enum>
    <enum name="TEXTURE_RANGE_LENGTH_APPLE" count="1" value="0x85B7">
        <size name="GetTexParameteriv" mode="get"/>
        <size name="GetTexParameterfv" mode="get"/>
    </enum>
    <enum name="TEXTURE_RANGE_POINTER_APPLE" count="1" value="0x85B8">
        <size name="GetTexParameterPointervAPPLE" mode="get"/>
    </enum>
    <function name="TextureRangeAPPLE" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="length" type="GLsizei"/>
        <param name="pointer" type="GLvoid *"/>
    </function>
    <function name="GetTexParameterPointervAPPLE" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLvoid **"/>
    </function>
</category>

<xi:include href="EXT_separate_shader_objects.xml"
	    xmlns:xi="http://www.w3.org/2001/XInclude"/>

<!-- Unnumbered extensions sorted by name. -->

<category name="GL_ATI_blend_equation_separate">
    <function name="BlendEquationSeparateATI" alias="BlendEquationSeparateEXT" static_dispatch="false">
        <param name="modeRGB" type="GLenum"/>
        <param name="modeA" type="GLenum"/>
    </function>
</category>

<category name="GL_ATI_separate_stencil">
    <enum name="STENCIL_BACK_FUNC_ATI"     count="1"  value="0x8800">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_BACK_FAIL_ATI"     count="1"  value="0x8801">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL_ATI" count="1"  value="0x8802">
        <size name="Get" mode="get"/>
    </enum>
    <enum name="STENCIL_BACK_PASS_DEPTH_PASS_ATI" count="1"  value="0x8803">
        <size name="Get" mode="get"/>
    </enum>

    <function name="StencilOpSeparateATI" alias="StencilOpSeparate" static_dispatch="false">
        <param name="face" type="GLenum"/>
        <param name="sfail" type="GLenum"/>
        <param name="zfail" type="GLenum"/>
        <param name="zpass" type="GLenum"/>
    </function>
    <function name="StencilFuncSeparateATI" offset="assign" static_dispatch="false">
        <param name="frontfunc" type="GLenum"/>
        <param name="backfunc" type="GLenum"/>
        <param name="ref" type="GLint"/>
        <param name="mask" type="GLuint"/>
    </function>

</category>

<category name="GL_EXT_gpu_program_parameters">
    <function name="ProgramEnvParameters4fvEXT" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="count" type="GLsizei"/>
        <param name="params" type="const GLfloat *"/>
    </function>

    <function name="ProgramLocalParameters4fvEXT" offset="assign" static_dispatch="false">
        <param name="target" type="GLenum"/>
        <param name="index" type="GLuint"/>
        <param name="count" type="GLsizei"/>
        <param name="params" type="const GLfloat *"/>
    </function>
</category>

<category name="GL_EXT_timer_query">
    <enum name="TIME_ELAPSED_EXT" value="0x88BF"/>
    <type name="int64EXT"                  size="8"/>
    <type name="uint64EXT" unsigned="true" size="8"/>
    <function name="GetQueryObjecti64vEXT" offset="assign" static_dispatch="false">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLint64EXT *"/>
    </function>
    <function name="GetQueryObjectui64vEXT" offset="assign" static_dispatch="false">
        <param name="id" type="GLuint"/>
        <param name="pname" type="GLenum"/>
        <param name="params" type="GLuint64EXT *"/>
    </function>
</category>

<category name="GL_INGR_blend_func_separate">
    <function name="BlendFuncSeparateINGR" alias="BlendFuncSeparateEXT" static_dispatch="false">
        <param name="sfactorRGB" type="GLenum"/>
        <param name="dfactorRGB" type="GLenum"/>
        <param name="sfactorAlpha" type="GLenum"/>
        <param name="dfactorAlpha" type="GLenum"/>
    </function>
</category>

<category name="GL_MESA_texture_signed_rgba">
    <enum name="SIGNED_NORMALIZED"                        value="0x8F9C"/>
    <enum name="RGBA_SNORM"                               value="0x8F93"/>
    <enum name="RGBA8_SNORM"                              value="0x8F97"/>
</category>

<category name="GL_MESA_shader_debug">
    <enum name="DEBUG_OBJECT_MESA"                        value="0x8759"/>
    <enum name="DEBUG_PRINT_MESA"                         value="0x875A"/>
    <enum name="DEBUG_ASSERT_MESA"                        value="0x875B"/>
    <function name="CreateDebugObjectMESA">
        <return type="GLhandleARB"/>
        <glx ignore="true"/>
    </function>
    <function name="ClearDebugLogMESA">
        <param name="obj" type="GLhandleARB"/>
        <param name="logType" type="GLenum"/>
        <param name="shaderType" type="GLenum"/>
        <glx ignore="true"/>
    </function>
    <function name="GetDebugLogMESA">
        <param name="obj" type="GLhandleARB"/>
        <param name="logType" type="GLenum"/>
        <param name="shaderType" type="GLenum"/>
        <param name="maxLength" type="GLsizei"/>
        <param name="length" type="GLsizei *" output="true"/>
        <param name="debugLog" type="GLcharARB *" output="true"/>
        <glx ignore="true"/>
    </function>
    <function name="GetDebugLogLengthMESA">
        <return type="GLsizei"/>
        <param name="obj" type="GLhandleARB"/>
        <param name="logType" type="GLenum"/>
        <param name="shaderType" type="GLenum"/>
        <glx ignore="true"/>
    </function>
</category>

<category name="GL_SGIS_point_parameters">
    <enum name="POINT_SIZE_MIN_SGIS"           count="1"  value="0x8126">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_SIZE_MAX_SGIS"           count="1"  value="0x8127">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_FADE_THRESHOLD_SIZE_SGIS" count="1" value="0x8128">
        <size name="PointParameterfvEXT"/>
    </enum>
    <enum name="POINT_DISTANCE_ATTENUATION_SGIS" count="3" value="0x8129">
        <size name="PointParameterfvEXT"/>
    </enum>

    <function name="PointParameterfSGIS" alias="PointParameterfEXT" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="param" type="GLfloat"/>
    </function>

    <function name="PointParameterfvSGIS" alias="PointParameterfvEXT" static_dispatch="false">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLfloat *"/>
    </function>
</category>

<category name="GL_SGIX_igloo_interface">
    <function name="IglooInterfaceSGIX">
        <param name="pname" type="GLenum"/>
        <param name="params" type="const GLvoid *"/>
    </function>
</category>

<category name="GL_SGIX_polynomial_ffd">
    <function name="DeformationMap3dSGIX">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLdouble"/>
        <param name="u2" type="GLdouble"/>
        <param name="ustride" type="GLint"/>
        <param name="uorder" type="GLint"/>
        <param name="v1" type="GLdouble"/>
        <param name="v2" type="GLdouble"/>
        <param name="vstride" type="GLint"/>
        <param name="vorder" type="GLint"/>
        <param name="w1" type="GLdouble"/>
        <param name="w2" type="GLdouble"/>
        <param name="wstride" type="GLint"/>
        <param name="worder" type="GLint"/>
        <param name="points" type="const GLdouble *"/>
    </function>

    <function name="DeformationMap3fSGIX">
        <param name="target" type="GLenum"/>
        <param name="u1" type="GLfloat"/>
        <param name="u2" type="GLfloat"/>
        <param name="ustride" type="GLint"/>
        <param name="uorder" type="GLint"/>
        <param name="v1" type="GLfloat"/>
        <param name="v2" type="GLfloat"/>
        <param name="vstride" type="GLint"/>
        <param name="vorder" type="GLint"/>
        <param name="w1" type="GLfloat"/>
        <param name="w2" type="GLfloat"/>
        <param name="wstride" type="GLint"/>
        <param name="worder" type="GLint"/>
        <param name="points" type="const GLfloat *"/>
    </function>

    <function name="DeformSGIX">
        <param name="mask" type="GLenum"/>
    </function>

    <function name="LoadIdentityDeformationMapSGIX">
        <param name="mask" type="GLenum"/>
    </function>
</category>

<xi:include href="OES_EGL_image.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_texture_integer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="EXT_gpu_shader4.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="GL3x.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_instanced_arrays.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_draw_buffers_blend.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

<xi:include href="ARB_texture_buffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>

</OpenGLAPI>
