summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/glsl/builtin_function.cpp15232
-rw-r--r--src/mapi/es1api/glapi_mapi_tmp.h3394
-rw-r--r--src/mapi/es1api/main/glapidispatch.h2524
-rw-r--r--src/mapi/es1api/main/remap_helper.h2335
-rw-r--r--src/mapi/es2api/glapi_mapi_tmp.h2632
-rw-r--r--src/mapi/es2api/main/glapidispatch.h2392
-rw-r--r--src/mapi/es2api/main/remap_helper.h2269
-rw-r--r--src/mapi/shared-glapi/glapi_mapi_tmp.h22410
-rw-r--r--src/mesa/main/api_exec_es1.c4867
-rw-r--r--src/mesa/main/api_exec_es2.c2548
10 files changed, 60603 insertions, 0 deletions
diff --git a/src/glsl/builtin_function.cpp b/src/glsl/builtin_function.cpp
new file mode 100644
index 0000000000..0371c70a54
--- /dev/null
+++ b/src/glsl/builtin_function.cpp
@@ -0,0 +1,15232 @@
+/* DO NOT MODIFY - automatically generated by generate_builtins.py */
+/*
+ * Copyright © 2010 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+#include <stdio.h>
+#include "main/core.h" /* for struct gl_shader */
+#include "glsl_parser_extras.h"
+#include "ir_reader.h"
+#include "program.h"
+#include "ast.h"
+
+extern "C" struct gl_shader *
+_mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type);
+
+gl_shader *
+read_builtins(GLenum target, const char *protos, const char **functions, unsigned count)
+{
+ struct gl_context fakeCtx;
+ fakeCtx.API = API_OPENGL;
+ fakeCtx.Const.GLSLVersion = 130;
+ fakeCtx.Extensions.ARB_ES2_compatibility = true;
+ gl_shader *sh = _mesa_new_shader(NULL, 0, target);
+ struct _mesa_glsl_parse_state *st =
+ new(sh) _mesa_glsl_parse_state(&fakeCtx, target, sh);
+
+ st->language_version = 130;
+ st->symbols->language_version = 130;
+ st->ARB_texture_rectangle_enable = true;
+ st->EXT_texture_array_enable = true;
+ _mesa_glsl_initialize_types(st);
+
+ sh->ir = new(sh) exec_list;
+ sh->symbols = st->symbols;
+
+ /* Read the IR containing the prototypes */
+ _mesa_glsl_read_ir(st, sh->ir, protos, true);
+
+ /* Read ALL the function bodies, telling the IR reader not to scan for
+ * prototypes (we've already created them). The IR reader will skip any
+ * signature that does not already exist as a prototype.
+ */
+ for (unsigned i = 0; i < count; i++) {
+ _mesa_glsl_read_ir(st, sh->ir, functions[i], false);
+
+ if (st->error) {
+ printf("error reading builtin: %.35s ...\n", functions[i]);
+ printf("Info log:\n%s\n", st->info_log);
+ ralloc_free(sh);
+ return NULL;
+ }
+ }
+
+ reparent_ir(sh->ir, sh);
+ delete st;
+
+ return sh;
+}
+
+static const char builtin_abs[] =
+ "((function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float abs (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 abs (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 abs (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 abs (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_acos[] =
+ "((function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float - (constant float (1.5707963))\n"
+ " (call asin ((var_ref x)))))))\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 - (constant float (1.5707963))\n"
+ " (call asin ((var_ref x)))))))\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 - (constant float (1.5707963))\n"
+ " (call asin ((var_ref x)))))))\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 - (constant float (1.5707963))\n"
+ " (call asin ((var_ref x)))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_acosh[] =
+ "((function acosh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float log (expression float + (var_ref x) (expression float sqrt (expression float - (expression float * (var_ref x) (var_ref x)) (constant float (1)))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 - (expression vec2 * (var_ref x) (var_ref x)) (constant vec2 (1)))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 - (expression vec3 * (var_ref x) (var_ref x)) (constant vec3 (1)))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 - (expression vec4 * (var_ref x) (var_ref x)) (constant vec4 (1)))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_all[] =
+ "((function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 arg0))\n"
+ " ((return (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))))))\n"
+ "\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 arg0))\n"
+ " ((return (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))))))\n"
+ "\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 arg0))\n"
+ " ((return (expression bool && (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))) (swiz w (var_ref arg0))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_any[] =
+ "((function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 arg0))\n"
+ " ((return (expression bool any (var_ref arg0)))))\n"
+ "\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 arg0))\n"
+ " ((return (expression bool any (var_ref arg0)))))\n"
+ "\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 arg0))\n"
+ " ((return (expression bool any (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_asin[] =
+ "((function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float *\n"
+ " (expression float sign (var_ref x))\n"
+ " (expression float -\n"
+ " (expression float *\n"
+ " (constant float (3.1415926))\n"
+ " (constant float (0.5)))\n"
+ " (expression float *\n"
+ " (expression float sqrt\n"
+ " (expression float -\n"
+ " (constant float (1.0))\n"
+ " (expression float abs (var_ref x))))\n"
+ " (expression float +\n"
+ " (constant float (1.5707288))\n"
+ " (expression float *\n"
+ " (expression float abs (var_ref x))\n"
+ " (expression float +\n"
+ " (constant float (-0.2121144))\n"
+ " (expression float *\n"
+ " (constant float (0.0742610))\n"
+ " (expression float abs (var_ref x))))))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 *\n"
+ " (expression vec2 sign (var_ref x))\n"
+ " (expression vec2 -\n"
+ " (expression float *\n"
+ " (constant float (3.1415926))\n"
+ " (constant float (0.5)))\n"
+ " (expression vec2 *\n"
+ " (expression vec2 sqrt\n"
+ " (expression vec2 -\n"
+ " (constant float (1.0))\n"
+ " (expression vec2 abs (var_ref x))))\n"
+ " (expression vec2 +\n"
+ " (constant float (1.5707288))\n"
+ " (expression vec2 *\n"
+ " (expression vec2 abs (var_ref x))\n"
+ " (expression vec2 +\n"
+ " (constant float (-0.2121144))\n"
+ " (expression vec2 *\n"
+ " (constant float (0.0742610))\n"
+ " (expression vec2 abs (var_ref x))))))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 *\n"
+ " (expression vec3 sign (var_ref x))\n"
+ " (expression vec3 -\n"
+ " (expression float *\n"
+ " (constant float (3.1415926))\n"
+ " (constant float (0.5)))\n"
+ " (expression vec3 *\n"
+ " (expression vec3 sqrt\n"
+ " (expression vec3 -\n"
+ " (constant float (1.0))\n"
+ " (expression vec3 abs (var_ref x))))\n"
+ " (expression vec3 +\n"
+ " (constant float (1.5707288))\n"
+ " (expression vec3 *\n"
+ " (expression vec3 abs (var_ref x))\n"
+ " (expression vec3 +\n"
+ " (constant float (-0.2121144))\n"
+ " (expression vec3 *\n"
+ " (constant float (0.0742610))\n"
+ " (expression vec3 abs (var_ref x))))))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 *\n"
+ " (expression vec4 sign (var_ref x))\n"
+ " (expression vec4 -\n"
+ " (expression float *\n"
+ " (constant float (3.1415926))\n"
+ " (constant float (0.5)))\n"
+ " (expression vec4 *\n"
+ " (expression vec4 sqrt\n"
+ " (expression vec4 -\n"
+ " (constant float (1.0))\n"
+ " (expression vec4 abs (var_ref x))))\n"
+ " (expression vec4 +\n"
+ " (constant float (1.5707288))\n"
+ " (expression vec4 *\n"
+ " (expression vec4 abs (var_ref x))\n"
+ " (expression vec4 +\n"
+ " (constant float (-0.2121144))\n"
+ " (expression vec4 *\n"
+ " (constant float (0.0742610))\n"
+ " (expression vec4 abs (var_ref x))))))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_asinh[] =
+ "((function asinh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float log (expression float + (var_ref x) (expression float sqrt (expression float + (expression float * (var_ref x) (var_ref x)) (constant float (1)))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 + (expression vec2 * (var_ref x) (var_ref x)) (constant vec2 (1)))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 + (expression vec3 * (var_ref x) (var_ref x)) (constant vec3 (1)))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 + (expression vec4 * (var_ref x) (var_ref x)) (constant vec4 (1)))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_atan[] =
+ "((function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ((return (call asin ((expression float *\n"
+ " (var_ref y_over_x)\n"
+ " (expression float rsq\n"
+ " (expression float +\n"
+ " (expression float *\n"
+ " (var_ref y_over_x)\n"
+ " (var_ref y_over_x))\n"
+ " (constant float (1.0))))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ((return (call asin ((expression vec2 *\n"
+ " (var_ref y_over_x)\n"
+ " (expression vec2 rsq\n"
+ " (expression vec2 +\n"
+ " (expression vec2 *\n"
+ " (var_ref y_over_x)\n"
+ " (var_ref y_over_x))\n"
+ " (constant float (1.0))))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ((return (call asin ((expression vec3 *\n"
+ " (var_ref y_over_x)\n"
+ " (expression vec3 rsq\n"
+ " (expression vec3 +\n"
+ " (expression vec3 *\n"
+ " (var_ref y_over_x)\n"
+ " (var_ref y_over_x))\n"
+ " (constant float (1.0))))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ((return (call asin ((expression vec4 *\n"
+ " (var_ref y_over_x)\n"
+ " (expression vec4 rsq\n"
+ " (expression vec4 +\n"
+ " (expression vec4 *\n"
+ " (var_ref y_over_x)\n"
+ " (var_ref y_over_x))\n"
+ " (constant float (1.0))))))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in ) float y)\n"
+ " (declare (in ) float x)\n"
+ " )\n"
+ " (\n"
+ " (declare () float r)\n"
+ " (if (expression bool > (expression float abs (var_ref x)) (constant float (0.000100))) (\n"
+ " (assign (x) (var_ref r) (call atan ((expression float / (var_ref y) (var_ref x)))))\n"
+ " (if (expression bool < (var_ref x) (constant float (0.000000)) ) (\n"
+ " (if (expression bool >= (var_ref y) (constant float (0.000000)) )\n"
+ " ((assign (x) (var_ref r) (expression float + (var_ref r) (constant float (3.141593)))))\n"
+ " ((assign (x) (var_ref r) (expression float - (var_ref r) (constant float (3.141593))))))\n"
+ " )\n"
+ " (\n"
+ " ))\n"
+ " )\n"
+ " (\n"
+ " (declare () float sgn)\n"
+ " (assign (x) (var_ref sgn) (expression float sign (var_ref y)))\n"
+ " (assign (x) (var_ref r) (expression float * (var_ref sgn) (constant float (1.5707965))))\n"
+ " ))\n"
+ "\n"
+ " (return (var_ref r) )\n"
+ " ))\n"
+ "\n"
+ "\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ((declare () vec2 r)\n"
+ " (assign (x) (var_ref r)\n"
+ " (call atan ((swiz x (var_ref y))\n"
+ " (swiz x (var_ref x)))))\n"
+ " (assign (y) (var_ref r)\n"
+ " (call atan ((swiz y (var_ref y))\n"
+ " (swiz y (var_ref x)))))\n"
+ " (return (var_ref r))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ((declare () vec3 r)\n"
+ " (assign (x) (var_ref r)\n"
+ " (call atan ((swiz x (var_ref y))\n"
+ " (swiz x (var_ref x)))))\n"
+ " (assign (y) (var_ref r)\n"
+ " (call atan ((swiz y (var_ref y))\n"
+ " (swiz y (var_ref x)))))\n"
+ " (assign (z) (var_ref r)\n"
+ " (call atan ((swiz z (var_ref y))\n"
+ " (swiz z (var_ref x)))))\n"
+ " (return (var_ref r))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ((declare () vec4 r)\n"
+ " (assign (x) (var_ref r)\n"
+ " (call atan ((swiz x (var_ref y))\n"
+ " (swiz x (var_ref x)))))\n"
+ " (assign (y) (var_ref r)\n"
+ " (call atan ((swiz y (var_ref y))\n"
+ " (swiz y (var_ref x)))))\n"
+ " (assign (z) (var_ref r)\n"
+ " (call atan ((swiz z (var_ref y))\n"
+ " (swiz z (var_ref x)))))\n"
+ " (assign (w) (var_ref r)\n"
+ " (call atan ((swiz w (var_ref y))\n"
+ " (swiz w (var_ref x)))))\n"
+ " (return (var_ref r)))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_atanh[] =
+ "((function atanh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float * (constant float (0.5))\n"
+ " (expression float log\n"
+ " (expression float /\n"
+ " (expression float + (constant float (1)) (var_ref x))\n"
+ " (expression float - (constant float (1)) (var_ref x))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 * (constant vec2 (0.5))\n"
+ " (expression vec2 log\n"
+ " (expression vec2 /\n"
+ " (expression vec2 + (constant vec2 (1)) (var_ref x))\n"
+ " (expression vec2 - (constant vec2 (1)) (var_ref x))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 * (constant vec3 (0.5))\n"
+ " (expression vec3 log\n"
+ " (expression vec3 /\n"
+ " (expression vec3 + (constant vec3 (1)) (var_ref x))\n"
+ " (expression vec3 - (constant vec3 (1)) (var_ref x))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 * (constant vec4 (0.5))\n"
+ " (expression vec4 log\n"
+ " (expression vec4 /\n"
+ " (expression vec4 + (constant vec4 (1)) (var_ref x))\n"
+ " (expression vec4 - (constant vec4 (1)) (var_ref x))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_ceil[] =
+ "((function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float ceil (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 ceil (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 ceil (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 ceil (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_clamp[] =
+ "((function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression float max (expression float min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1)\n"
+ " (declare (in) vec2 arg2))\n"
+ " ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1)\n"
+ " (declare (in) vec3 arg2))\n"
+ " ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1)\n"
+ " (declare (in) vec4 arg2))\n"
+ " ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) float arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) float arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) float arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature int\n"
+ " (parameters\n"
+ " (declare (in) int arg0)\n"
+ " (declare (in) int arg1)\n"
+ " (declare (in) int arg2))\n"
+ " ((return (expression int max (expression int min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1)\n"
+ " (declare (in) ivec2 arg2))\n"
+ " ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1)\n"
+ " (declare (in) ivec3 arg2))\n"
+ " ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1)\n"
+ " (declare (in) ivec4 arg2))\n"
+ " ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) int arg1)\n"
+ " (declare (in) int arg2))\n"
+ " ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) int arg1)\n"
+ " (declare (in) int arg2))\n"
+ " ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) int arg1)\n"
+ " (declare (in) int arg2))\n"
+ " ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uint\n"
+ " (parameters\n"
+ " (declare (in) uint arg0)\n"
+ " (declare (in) uint arg1)\n"
+ " (declare (in) uint arg2))\n"
+ " ((return (expression uint max (expression uint min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1)\n"
+ " (declare (in) uvec2 arg2))\n"
+ " ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1)\n"
+ " (declare (in) uvec3 arg2))\n"
+ " ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1)\n"
+ " (declare (in) uvec4 arg2))\n"
+ " ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uint arg1)\n"
+ " (declare (in) uint arg2))\n"
+ " ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uint arg1)\n"
+ " (declare (in) uint arg2))\n"
+ " ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uint arg1)\n"
+ " (declare (in) uint arg2))\n"
+ " ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_cos[] =
+ "((function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ((return (expression float cos (var_ref angle)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ((return (expression vec2 cos (var_ref angle)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ((return (expression vec3 cos (var_ref angle)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ((return (expression vec4 cos (var_ref angle)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_cosh[] =
+ "((function cosh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float * (constant float (0.5))\n"
+ " (expression float +\n"
+ " (expression float exp (var_ref x))\n"
+ " (expression float exp (expression float neg (var_ref x))))))))\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 * (constant vec2 (0.5))\n"
+ " (expression vec2 +\n"
+ " (expression vec2 exp (var_ref x))\n"
+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 * (constant vec3 (0.5))\n"
+ " (expression vec3 +\n"
+ " (expression vec3 exp (var_ref x))\n"
+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 * (constant vec4 (0.5))\n"
+ " (expression vec4 +\n"
+ " (expression vec4 exp (var_ref x))\n"
+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_cross[] =
+ "((function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 a)\n"
+ " (declare (in) vec3 b))\n"
+ " ((return (expression vec3 -\n"
+ " (expression vec3 * (swiz yzx (var_ref a)) (swiz zxy (var_ref b)))\n"
+ " (expression vec3 * (swiz zxy (var_ref a)) (swiz yzx (var_ref b)))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_dFdx[] =
+ "((function dFdx\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ((return (expression float dFdx (var_ref p)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ((return (expression vec2 dFdx (var_ref p)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ((return (expression vec3 dFdx (var_ref p)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ((return (expression vec4 dFdx (var_ref p)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_dFdy[] =
+ "((function dFdy\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ((return (expression float dFdy (var_ref p)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ((return (expression vec2 dFdy (var_ref p)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ((return (expression vec3 dFdy (var_ref p)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ((return (expression vec4 dFdy (var_ref p)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_degrees[] =
+ "((function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float * (var_ref arg0) (constant float (57.295780))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 * (var_ref arg0) (constant float (57.295780))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 * (var_ref arg0) (constant float (57.295780))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 * (var_ref arg0) (constant float (57.295780))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_distance[] =
+ "((function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ((declare () vec2 p)\n"
+ " (assign (xy) (var_ref p) (expression vec2 - (var_ref p0) (var_ref p1)))\n"
+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ((declare () vec3 p)\n"
+ " (assign (xyz) (var_ref p) (expression vec3 - (var_ref p0) (var_ref p1)))\n"
+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ((declare () vec4 p)\n"
+ " (assign (xyzw) (var_ref p) (expression vec4 - (var_ref p0) (var_ref p1)))\n"
+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_dot[] =
+ "((function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression float * (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_equal[] =
+ "((function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 arg0)\n"
+ " (declare (in) bvec2 arg1))\n"
+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 arg0)\n"
+ " (declare (in) bvec3 arg1))\n"
+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 arg0)\n"
+ " (declare (in) bvec4 arg1))\n"
+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_exp[] =
+ "((function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float exp (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 exp (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 exp (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 exp (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_exp2[] =
+ "((function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float exp2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 exp2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 exp2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 exp2 (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_faceforward[] =
+ "((function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ((if (expression bool < (expression float * (var_ref Nref) (var_ref I)) (constant float (0)))\n"
+ " ((return (var_ref N)))\n"
+ " ((return (expression float neg (var_ref N)))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
+ " ((return (var_ref N)))\n"
+ " ((return (expression vec2 neg (var_ref N)))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
+ " ((return (var_ref N)))\n"
+ " ((return (expression vec3 neg (var_ref N)))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
+ " ((return (var_ref N)))\n"
+ " ((return (expression vec4 neg (var_ref N)))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_floor[] =
+ "((function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float floor (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 floor (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 floor (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 floor (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_fract[] =
+ "((function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float fract (var_ref x)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 fract (var_ref x)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 fract (var_ref x)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 fract (var_ref x)))))\n"
+ "))\n"
+ "\n"
+ ""
+;
+static const char builtin_ftransform[] =
+ "((declare (uniform) mat4 gl_ModelViewProjectionMatrix)\n"
+ " (declare (in) vec4 gl_Vertex)\n"
+ " (function ftransform\n"
+ " (signature vec4\n"
+ " (parameters)\n"
+ " ((return (expression vec4 *\n"
+ " (var_ref gl_ModelViewProjectionMatrix)\n"
+ " (var_ref gl_Vertex)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_fwidth[] =
+ "((function fwidth\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ((return (expression float +\n"
+ " (expression float abs (expression float dFdx (var_ref p)))\n"
+ " (expression float abs (expression float dFdy (var_ref p)))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ((return (expression vec2 +\n"
+ " (expression vec2 abs (expression vec2 dFdx (var_ref p)))\n"
+ " (expression vec2 abs (expression vec2 dFdy (var_ref p)))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ((return (expression vec3 +\n"
+ " (expression vec3 abs (expression vec3 dFdx (var_ref p)))\n"
+ " (expression vec3 abs (expression vec3 dFdy (var_ref p)))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ((return (expression vec4 +\n"
+ " (expression vec4 abs (expression vec4 dFdx (var_ref p)))\n"
+ " (expression vec4 abs (expression vec4 dFdy (var_ref p)))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_greaterThan[] =
+ "((function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_greaterThanEqual[] =
+ "((function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_inversesqrt[] =
+ "((function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float rsq (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 rsq (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 rsq (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 rsq (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_length[] =
+ "((function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float abs (var_ref arg0)))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_lessThan[] =
+ "((function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_lessThanEqual[] =
+ "((function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_log[] =
+ "((function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float log (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 log (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 log (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 log (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_log2[] =
+ "((function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float log2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 log2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 log2 (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 log2 (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_matrixCompMult[] =
+ "((function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ((declare () mat2 z)\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ((declare () mat3 z)\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ((declare () mat4 z)\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (3))) (expression vec4 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 x)\n"
+ " (declare (in) mat2x3 y))\n"
+ " ((declare () mat2x3 z)\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 x)\n"
+ " (declare (in) mat3x2 y))\n"
+ " ((declare () mat3x2 z)\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 x)\n"
+ " (declare (in) mat2x4 y))\n"
+ " ((declare () mat2x4 z)\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 x)\n"
+ " (declare (in) mat4x2 y))\n"
+ " ((declare () mat4x2 z)\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ " (assign (xy) (array_ref (var_ref z) (constant int (3))) (expression vec2 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 x)\n"
+ " (declare (in) mat3x4 y))\n"
+ " ((declare () mat3x4 z)\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ "(return (var_ref z))))\n"
+ "\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 x)\n"
+ " (declare (in) mat4x3 y))\n"
+ " ((declare () mat4x3 z)\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n"
+ " (assign (xyz) (array_ref (var_ref z) (constant int (3))) (expression vec3 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n"
+ "(return (var_ref z))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_max[] =
+ "((function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression float max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature int\n"
+ " (parameters\n"
+ " (declare (in) int arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression int max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uint\n"
+ " (parameters\n"
+ " (declare (in) uint arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uint max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_min[] =
+ "((function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression float min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature int\n"
+ " (parameters\n"
+ " (declare (in) int arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression int min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) int arg1))\n"
+ " ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uint\n"
+ " (parameters\n"
+ " (declare (in) uint arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uint min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uint arg1))\n"
+ " ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_mix[] =
+ "((function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression float + (expression float * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression float * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1)\n"
+ " (declare (in) vec2 arg2))\n"
+ " ((return (expression vec2 + (expression vec2 * (var_ref arg0) (expression vec2 - (constant float (1.000000)) (var_ref arg2))) (expression vec2 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1)\n"
+ " (declare (in) vec3 arg2))\n"
+ " ((return (expression vec3 + (expression vec3 * (var_ref arg0) (expression vec3 - (constant float (1.000000)) (var_ref arg2))) (expression vec3 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1)\n"
+ " (declare (in) vec4 arg2))\n"
+ " ((return (expression vec4 + (expression vec4 * (var_ref arg0) (expression vec4 - (constant float (1.000000)) (var_ref arg2))) (expression vec4 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec2 + (expression vec2 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec2 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec3 + (expression vec3 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec3 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1)\n"
+ " (declare (in) float arg2))\n"
+ " ((return (expression vec4 + (expression vec4 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec4 * (var_ref arg1) (var_ref arg2))))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float v1)\n"
+ " (declare (in) float v2)\n"
+ " (declare (in) bool a))\n"
+ " ((assign (var_ref a) (var_ref v1) (var_ref v2))\n"
+ " (return (var_ref v1))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 v1)\n"
+ " (declare (in) vec2 v2)\n"
+ " (declare (in) bvec2 a))\n"
+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
+ " (return (var_ref v1))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 v1)\n"
+ " (declare (in) vec3 v2)\n"
+ " (declare (in) bvec3 a))\n"
+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
+ " (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n"
+ " (return (var_ref v1))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 v1)\n"
+ " (declare (in) vec4 v2)\n"
+ " (declare (in) bvec4 a))\n"
+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
+ " (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n"
+ " (assign (swiz w (var_ref a)) (w) (var_ref v1) (swiz w (var_ref v2)))\n"
+ " (return (var_ref v1))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_mod[] =
+ "((function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression float % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_modf[] =
+ "((function modf\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (out) float i))\n"
+ " ((declare () float t)\n"
+ " (assign (x) (var_ref t) (expression float trunc (var_ref x)))\n"
+ " (assign (x) (var_ref i) (var_ref t))\n"
+ " (return (expression float - (var_ref x) (var_ref t)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (out) vec2 i))\n"
+ " ((declare () vec2 t)\n"
+ " (assign (xy) (var_ref t) (expression vec2 trunc (var_ref x)))\n"
+ " (assign (xy) (var_ref i) (var_ref t))\n"
+ " (return (expression vec2 - (var_ref x) (var_ref t)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (out) vec3 i))\n"
+ " ((declare () vec3 t)\n"
+ " (assign (xyz) (var_ref t) (expression vec3 trunc (var_ref x)))\n"
+ " (assign (xyz) (var_ref i) (var_ref t))\n"
+ " (return (expression vec3 - (var_ref x) (var_ref t)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (out) vec4 i))\n"
+ " ((declare () vec4 t)\n"
+ " (assign (xyzw) (var_ref t) (expression vec4 trunc (var_ref x)))\n"
+ " (assign (xyzw) (var_ref i) (var_ref t))\n"
+ " (return (expression vec4 - (var_ref x) (var_ref t)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_noise1[] =
+ "((function noise1\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float noise (var_ref x)))))\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression float noise (var_ref x)))))\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression float noise (var_ref x)))))\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression float noise (var_ref x)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_noise2[] =
+ "((function noise2\n"
+ " (signature vec2\n"
+ " (parameters (declare (in) vec4 p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () vec2 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters (declare (in) vec3 p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () vec2 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in ) vec2 p)\n"
+ " )\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () vec2 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in ) float p)\n"
+ " )\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () vec2 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "))\n"
+ ""
+;
+static const char builtin_noise3[] =
+ "((function noise3\n"
+ " (signature vec3\n"
+ " (parameters (declare (in) vec4 p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () float c)\n"
+ " (declare () vec3 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
+ " (assign (x) (var_ref c) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (assign (z) (var_ref t) (var_ref c))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters (declare (in) vec3 p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () float c)\n"
+ " (declare () vec3 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
+ " (assign (x) (var_ref c) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (assign (z) (var_ref t) (var_ref c))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters (declare (in) vec2 p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () float c)\n"
+ " (declare () vec3 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
+ " (assign (x) (var_ref c) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (assign (z) (var_ref t) (var_ref c))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters (declare (in) float p))\n"
+ " (\n"
+ " (declare () float a)\n"
+ " (declare () float b)\n"
+ " (declare () float c)\n"
+ " (declare () vec3 t)\n"
+ "\n"
+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
+ " (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n"
+ " (assign (x) (var_ref c) (expression float noise (expression float + (var_ref p) (constant float (1559.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref t) (var_ref a))\n"
+ " (assign (y) (var_ref t) (var_ref b))\n"
+ " (assign (z) (var_ref t) (var_ref c))\n"
+ " (return (var_ref t))\n"
+ " ))\n"
+ "))\n"
+ ""
+;
+static const char builtin_noise4[] =
+ "((function noise4\n"
+ " (signature vec4\n"
+ " (parameters (declare (in) vec4 p))\n"
+ " (\n"
+ " (declare () float _x)\n"
+ " (declare () float _y)\n"
+ " (declare () float _z)\n"
+ " (declare () float _w)\n"
+ " (declare () vec4 _r)\n"
+ "\n"
+ " (declare () vec4 _p)\n"
+ " (assign (xyzw) (var_ref _p) (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0))) )\n"
+ "\n"
+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
+ " (assign (x) (var_ref _y) (expression float noise(expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
+ " (assign (x) (var_ref _w) (expression float noise(expression vec4 + (var_ref _p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref _r) (var_ref _x))\n"
+ " (assign (y) (var_ref _r) (var_ref _y))\n"
+ " (assign (z) (var_ref _r) (var_ref _z))\n"
+ " (assign (w) (var_ref _r) (var_ref _w))\n"
+ " (return (var_ref _r))\n"
+ " ))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters (declare (in) vec3 p))\n"
+ " (\n"
+ " (declare () float _x)\n"
+ " (declare () float _y)\n"
+ " (declare () float _z)\n"
+ " (declare () float _w)\n"
+ " (declare () vec4 _r)\n"
+ "\n"
+ " (declare () vec3 _p)\n"
+ " (assign (xyz) (var_ref _p) (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0))) )\n"
+ "\n"
+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
+ " (assign (x) (var_ref _y) (expression float noise(expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
+ " (assign (x) (var_ref _w) (expression float noise(expression vec3 + (var_ref _p) (constant vec3 (601.0 313.0 29.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref _r) (var_ref _x))\n"
+ " (assign (y) (var_ref _r) (var_ref _y))\n"
+ " (assign (z) (var_ref _r) (var_ref _z))\n"
+ " (assign (w) (var_ref _r) (var_ref _w))\n"
+ " (return (var_ref _r))\n"
+ " ))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters (declare (in) vec2 p))\n"
+ " (\n"
+ " (declare () float _x)\n"
+ " (declare () float _y)\n"
+ " (declare () float _z)\n"
+ " (declare () float _w)\n"
+ " (declare () vec4 _r)\n"
+ "\n"
+ " (declare () vec2 _p)\n"
+ " (assign (xy) (var_ref _p) (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0))) )\n"
+ "\n"
+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
+ " (assign (x) (var_ref _y) (expression float noise(expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
+ " (assign (x) (var_ref _w) (expression float noise(expression vec2 + (var_ref _p) (constant vec2 (601.0 313.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref _r) (var_ref _x))\n"
+ " (assign (y) (var_ref _r) (var_ref _y))\n"
+ " (assign (z) (var_ref _r) (var_ref _z))\n"
+ " (assign (w) (var_ref _r) (var_ref _w))\n"
+ " (return (var_ref _r))\n"
+ " ))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters (declare (in) float p))\n"
+ " (\n"
+ " (declare () float _x)\n"
+ " (declare () float _y)\n"
+ " (declare () float _z)\n"
+ " (declare () float _w)\n"
+ " (declare () vec4 _r)\n"
+ "\n"
+ " (declare () float _p)\n"
+ " (assign (x) (var_ref _p) (expression float + (var_ref p) (constant float (1559.0))) )\n"
+ "\n"
+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
+ " (assign (x) (var_ref _y) (expression float noise(expression float + (var_ref p) (constant float (601.0 313.0 29.0 277.0)))))\n"
+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
+ " (assign (x) (var_ref _w) (expression float noise(expression float + (var_ref _p) (constant float (601.0 313.0 29.0 277.0)))))\n"
+ "\n"
+ " (assign (x) (var_ref _r) (var_ref _x))\n"
+ " (assign (y) (var_ref _r) (var_ref _y))\n"
+ " (assign (z) (var_ref _r) (var_ref _z))\n"
+ " (assign (w) (var_ref _r) (var_ref _w))\n"
+ " (return (var_ref _r))\n"
+ " ))\n"
+ "))\n"
+ ""
+;
+static const char builtin_normalize[] =
+ "((function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float sign (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_not[] =
+ "((function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 arg0))\n"
+ " ((return (expression bvec2 ! (var_ref arg0)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 arg0))\n"
+ " ((return (expression bvec3 ! (var_ref arg0)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 arg0))\n"
+ " ((return (expression bvec4 ! (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_notEqual[] =
+ "((function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 arg0)\n"
+ " (declare (in) bvec2 arg1))\n"
+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 arg0)\n"
+ " (declare (in) bvec3 arg1))\n"
+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 arg0)\n"
+ " (declare (in) bvec4 arg1))\n"
+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 arg0)\n"
+ " (declare (in) ivec2 arg1))\n"
+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 arg0)\n"
+ " (declare (in) ivec3 arg1))\n"
+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 arg0)\n"
+ " (declare (in) ivec4 arg1))\n"
+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) uvec2 arg0)\n"
+ " (declare (in) uvec2 arg1))\n"
+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) uvec3 arg0)\n"
+ " (declare (in) uvec3 arg1))\n"
+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) uvec4 arg0)\n"
+ " (declare (in) uvec4 arg1))\n"
+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_outerProduct[] =
+ "((function outerProduct\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) vec2 u)\n"
+ " (declare (in) vec2 v))\n"
+ " ((declare () mat2 m)\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 u)\n"
+ " (declare (in) vec2 v))\n"
+ " ((declare () mat2x3 m)\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 u)\n"
+ " (declare (in) vec2 v))\n"
+ " ((declare () mat2x4 m)\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 u)\n"
+ " (declare (in) vec3 v))\n"
+ " ((declare () mat3x2 m)\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (return (var_ref m))\n"
+ " ))\n"
+ "\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) vec3 u)\n"
+ " (declare (in) vec3 v))\n"
+ " ((declare () mat3 m)\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 u)\n"
+ " (declare (in) vec3 v))\n"
+ " ((declare () mat3x4 m)\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 u)\n"
+ " (declare (in) vec4 v))\n"
+ " ((declare () mat4x2 m)\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (assign (xy) (array_ref (var_ref m) (constant int (3))) (expression vec2 * (var_ref u) (swiz w (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 u)\n"
+ " (declare (in) vec4 v))\n"
+ " ((declare () mat4x3 m)\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (assign (xyz) (array_ref (var_ref m) (constant int (3))) (expression vec3 * (var_ref u) (swiz w (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) vec4 u)\n"
+ " (declare (in) vec4 v))\n"
+ " ((declare () mat4 m)\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n"
+ " (assign (xyzw) (array_ref (var_ref m) (constant int (3))) (expression vec4 * (var_ref u) (swiz w (var_ref v))))\n"
+ " (return (var_ref m))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_pow[] =
+ "((function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0)\n"
+ " (declare (in) float arg1))\n"
+ " ((return (expression float pow (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0)\n"
+ " (declare (in) vec2 arg1))\n"
+ " ((return (expression vec2 pow (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0)\n"
+ " (declare (in) vec3 arg1))\n"
+ " ((return (expression vec3 pow (var_ref arg0) (var_ref arg1)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0)\n"
+ " (declare (in) vec4 arg1))\n"
+ " ((return (expression vec4 pow (var_ref arg0) (var_ref arg1)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_radians[] =
+ "((function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float * (var_ref arg0) (constant float (0.017453))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 * (var_ref arg0) (constant float (0.017453))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 * (var_ref arg0) (constant float (0.017453))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 * (var_ref arg0) (constant float (0.017453))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_reflect[] =
+ "((function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float i)\n"
+ " (declare (in) float n))\n"
+ " ((return (expression float -\n"
+ " (var_ref i)\n"
+ " (expression float *\n"
+ " (constant float (2.0))\n"
+ " (expression float *\n"
+ " (expression float *\n"
+ " (var_ref n)\n"
+ " (var_ref i))\n"
+ " (var_ref n)))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 i)\n"
+ " (declare (in) vec2 n))\n"
+ " ((return (expression vec2 -\n"
+ " (var_ref i)\n"
+ " (expression vec2 *\n"
+ " (constant float (2.0))\n"
+ " (expression vec2 *\n"
+ " (expression float dot\n"
+ " (var_ref n)\n"
+ " (var_ref i))\n"
+ " (var_ref n)))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 i)\n"
+ " (declare (in) vec3 n))\n"
+ " ((return (expression vec3 -\n"
+ " (var_ref i)\n"
+ " (expression vec3 *\n"
+ " (constant float (2.0))\n"
+ " (expression vec3 *\n"
+ " (expression float dot\n"
+ " (var_ref n)\n"
+ " (var_ref i))\n"
+ " (var_ref n)))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 i)\n"
+ " (declare (in) vec4 n))\n"
+ " ((return (expression vec4 -\n"
+ " (var_ref i)\n"
+ " (expression vec4 *\n"
+ " (constant float (2.0))\n"
+ " (expression vec4 *\n"
+ " (expression float dot\n"
+ " (var_ref n)\n"
+ " (var_ref i))\n"
+ " (var_ref n)))))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_refract[] =
+ "((function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float i)\n"
+ " (declare (in) float n)\n"
+ " (declare (in) float eta))\n"
+ " ((declare () float k)\n"
+ " (assign (x) (var_ref k)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * \n"
+ " (expression float * (var_ref n) (var_ref i))\n"
+ " (expression float * (var_ref n) (var_ref i))))))))\n"
+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n"
+ " ((return (constant float (0.0))))\n"
+ " ((return (expression float -\n"
+ " (expression float * (var_ref eta) (var_ref i))\n"
+ " (expression float *\n"
+ " (expression float +\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float * (var_ref n) (var_ref i)))\n"
+ " (expression float sqrt (var_ref k)))\n"
+ " (var_ref n))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 i)\n"
+ " (declare (in) vec2 n)\n"
+ " (declare (in) float eta))\n"
+ " ((declare () float k)\n"
+ " (assign (x) (var_ref k)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * \n"
+ " (expression float dot (var_ref n) (var_ref i))\n"
+ " (expression float dot (var_ref n) (var_ref i))))))))\n"
+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n"
+ " ((return (constant vec2 (0.0 0.0))))\n"
+ " ((return (expression vec2 -\n"
+ " (expression vec2 * (var_ref eta) (var_ref i))\n"
+ " (expression vec2 *\n"
+ " (expression float +\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float dot (var_ref n) (var_ref i)))\n"
+ " (expression float sqrt (var_ref k)))\n"
+ " (var_ref n))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 i)\n"
+ " (declare (in) vec3 n)\n"
+ " (declare (in) float eta))\n"
+ " ((declare () float k)\n"
+ " (assign (x) (var_ref k)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * \n"
+ " (expression float dot (var_ref n) (var_ref i))\n"
+ " (expression float dot (var_ref n) (var_ref i))))))))\n"
+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n"
+ " ((return (constant vec3 (0.0 0.0 0.0))))\n"
+ " ((return (expression vec3 -\n"
+ " (expression vec3 * (var_ref eta) (var_ref i))\n"
+ " (expression vec3 *\n"
+ " (expression float +\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float dot (var_ref n) (var_ref i)))\n"
+ " (expression float sqrt (var_ref k)))\n"
+ " (var_ref n))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 i)\n"
+ " (declare (in) vec4 n)\n"
+ " (declare (in) float eta))\n"
+ " ((declare () float k)\n"
+ " (assign (x) (var_ref k)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float - (constant float (1.0))\n"
+ " (expression float * \n"
+ " (expression float dot (var_ref n) (var_ref i))\n"
+ " (expression float dot (var_ref n) (var_ref i))))))))\n"
+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n"
+ " ((return (constant vec4 (0.0 0.0 0.0 0.0))))\n"
+ " ((return (expression vec4 -\n"
+ " (expression vec4 * (var_ref eta) (var_ref i))\n"
+ " (expression vec4 *\n"
+ " (expression float +\n"
+ " (expression float * (var_ref eta)\n"
+ " (expression float dot (var_ref n) (var_ref i)))\n"
+ " (expression float sqrt (var_ref k)))\n"
+ " (var_ref n))))))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_round[] =
+ "((function round\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 round_even (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_roundEven[] =
+ "((function roundEven\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 round_even (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 round_even (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1D[] =
+ "((function shadow1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1DArray[] =
+ "((function shadow1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1DArrayLod[] =
+ "((function shadow1DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1DLod[] =
+ "((function shadow1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1DProj[] =
+ "((function shadow1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow1DProjLod[] =
+ "((function shadow1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2D[] =
+ "((function shadow2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DArray[] =
+ "((function shadow2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DLod[] =
+ "((function shadow2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DProj[] =
+ "((function shadow2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DProjLod[] =
+ "((function shadow2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DRect[] =
+ "((function shadow2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_shadow2DRectProj[] =
+ "((function shadow2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_sign[] =
+ "((function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float sign (var_ref x)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 sign (var_ref x)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 sign (var_ref x)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 sign (var_ref x)))))\n"
+ "\n"
+ " (signature int\n"
+ " (parameters\n"
+ " (declare (in) int x))\n"
+ " ((return (expression int sign (var_ref x)))))\n"
+ "\n"
+ " (signature ivec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x))\n"
+ " ((return (expression ivec2 sign (var_ref x)))))\n"
+ "\n"
+ " (signature ivec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x))\n"
+ " ((return (expression ivec3 sign (var_ref x)))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x))\n"
+ " ((return (expression ivec4 sign (var_ref x)))))\n"
+ "))\n"
+ "\n"
+ ""
+;
+static const char builtin_sin[] =
+ "((function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ((return (expression float sin (var_ref angle)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ((return (expression vec2 sin (var_ref angle)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ((return (expression vec3 sin (var_ref angle)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ((return (expression vec4 sin (var_ref angle)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_sinh[] =
+ "((function sinh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float * (constant float (0.5))\n"
+ " (expression float -\n"
+ " (expression float exp (var_ref x))\n"
+ " (expression float exp (expression float neg (var_ref x))))))))\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 * (constant vec2 (0.5))\n"
+ " (expression vec2 -\n"
+ " (expression vec2 exp (var_ref x))\n"
+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 * (constant vec3 (0.5))\n"
+ " (expression vec3 -\n"
+ " (expression vec3 exp (var_ref x))\n"
+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 * (constant vec4 (0.5))\n"
+ " (expression vec4 -\n"
+ " (expression vec4 exp (var_ref x))\n"
+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_smoothstep[] =
+ "((function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ((declare () float t)\n"
+ " (assign (x) (var_ref t)\n"
+ " (expression float max\n"
+ " (expression float min\n"
+ " (expression float / (expression float - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression float * (var_ref t) (expression float * (var_ref t) (expression float - (constant float (3.0)) (expression float * (constant float (2.0)) (var_ref t))))))))\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ((declare () vec2 t)\n"
+ " (assign (xy) (var_ref t)\n"
+ " (expression vec2 max\n"
+ " (expression vec2 min\n"
+ " (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ((declare () vec3 t)\n"
+ " (assign (xyz) (var_ref t)\n"
+ " (expression vec3 max\n"
+ " (expression vec3 min\n"
+ " (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))\n"
+ "\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ((declare () vec4 t)\n"
+ " (assign (xyzw) (var_ref t)\n"
+ " (expression vec4 max\n"
+ " (expression vec4 min\n"
+ " (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ((declare () vec2 t)\n"
+ " (assign (xy) (var_ref t)\n"
+ " (expression vec2 max\n"
+ " (expression vec2 min\n"
+ " (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression vec2 - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ((declare () vec3 t)\n"
+ " (assign (xyz) (var_ref t)\n"
+ " (expression vec3 max\n"
+ " (expression vec3 min\n"
+ " (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression vec3 - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ((declare () vec4 t)\n"
+ " (assign (xyzw) (var_ref t)\n"
+ " (expression vec4 max\n"
+ " (expression vec4 min\n"
+ " (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression vec4 - (var_ref edge1) (var_ref edge0)))\n"
+ " (constant float (1.0)))\n"
+ " (constant float (0.0))))\n"
+ " (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))\n"
+ "))\n"
+ "\n"
+ ""
+;
+static const char builtin_sqrt[] =
+ "((function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float sqrt (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 sqrt (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 sqrt (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 sqrt (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_step[] =
+ "((function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float b2f (expression bool >= (var_ref x) (var_ref edge))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ((declare () vec2 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
+ " (return (var_ref t))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ((declare () vec3 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n"
+ " (return (var_ref t))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ((declare () vec4 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n"
+ " (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(var_ref edge))))\n"
+ " (return (var_ref t))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ((declare () vec2 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
+ " (return (var_ref t))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ((declare () vec3 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n"
+ " (return (var_ref t))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ((declare () vec4 t)\n"
+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n"
+ " (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(swiz w (var_ref edge)))))\n"
+ " (return (var_ref t))))\n"
+ "))\n"
+ "\n"
+ ""
+;
+static const char builtin_tan[] =
+ "((function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ((return (expression float / (expression float sin (var_ref angle)) (expression float cos (var_ref angle))))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ((return (expression vec2 / (expression vec2 sin (var_ref angle)) (expression vec2 cos (var_ref angle))))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ((return (expression vec3 / (expression vec3 sin (var_ref angle)) (expression vec3 cos (var_ref angle))))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ((return (expression vec4 / (expression vec4 sin (var_ref angle)) (expression vec4 cos (var_ref angle))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_tanh[] =
+ "((function tanh\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ((return (expression float /\n"
+ " (expression float -\n"
+ " (expression float exp (var_ref x))\n"
+ " (expression float exp (expression float neg (var_ref x))))\n"
+ " (expression float +\n"
+ " (expression float exp (var_ref x))\n"
+ " (expression float exp (expression float neg (var_ref x))))))))\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ((return (expression vec2 /\n"
+ " (expression vec2 -\n"
+ " (expression vec2 exp (var_ref x))\n"
+ " (expression vec2 exp (expression vec2 neg (var_ref x))))\n"
+ " (expression vec2 +\n"
+ " (expression vec2 exp (var_ref x))\n"
+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ((return (expression vec3 /\n"
+ " (expression vec3 -\n"
+ " (expression vec3 exp (var_ref x))\n"
+ " (expression vec3 exp (expression vec3 neg (var_ref x))))\n"
+ " (expression vec3 +\n"
+ " (expression vec3 exp (var_ref x))\n"
+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ((return (expression vec4 /\n"
+ " (expression vec4 -\n"
+ " (expression vec4 exp (var_ref x))\n"
+ " (expression vec4 exp (expression vec4 neg (var_ref x))))\n"
+ " (expression vec4 +\n"
+ " (expression vec4 exp (var_ref x))\n"
+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
+ "))\n"
+ ""
+;
+static const char builtin_texelFetch[] =
+ "((function texelFetch\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texelFetchOffset[] =
+ "((function texelFetchOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) int P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) ivec2 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) ivec3 P) \n"
+ " (declare (in) int lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture[] =
+ "((function texture\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isamplerCube sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usamplerCube sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) samplerCubeShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) samplerCubeShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1D[] =
+ "((function texture1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1DArray[] =
+ "((function texture1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1DArrayLod[] =
+ "((function texture1DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1DLod[] =
+ "((function texture1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1DProj[] =
+ "((function texture1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture1DProjLod[] =
+ "((function texture1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2D[] =
+ "((function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DArray[] =
+ "((function texture2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DArrayLod[] =
+ "((function texture2DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DLod[] =
+ "((function texture2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DProj[] =
+ "((function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DProjLod[] =
+ "((function texture2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DRect[] =
+ "((function texture2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture2DRectProj[] =
+ "((function texture2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture3D[] =
+ "((function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture3DLod[] =
+ "((function texture3DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture3DProj[] =
+ "((function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_texture3DProjLod[] =
+ "((function texture3DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureCube[] =
+ "((function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureCubeLod[] =
+ "((function textureCubeLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureGrad[] =
+ "((function textureGrad\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) samplerCubeShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureGradOffset[] =
+ "((function textureGradOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) 1 (swiz w (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureLod[] =
+ "((function textureLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usamplerCube sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureLodOffset[] =
+ "((function textureLodOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureOffset[] =
+ "((function textureOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) float P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1DArray sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2DArray sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProj[] =
+ "((function textureProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProjGrad[] =
+ "((function textureProjGrad\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProjGradOffset[] =
+ "((function textureProjGradOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec3 dPdx) \n"
+ " (declare (in) vec3 dPdy) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float dPdx) \n"
+ " (declare (in) float dPdy) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) vec2 dPdx) \n"
+ " (declare (in) vec2 dPdy) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProjLod[] =
+ "((function textureProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProjLodOffset[] =
+ "((function textureProjLodOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (in) float lod) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_textureProjOffset[] =
+ "((function textureProjOffset\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) )\n"
+ " ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) )\n"
+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) )\n"
+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec2 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler1D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec3 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler2D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature ivec4\n"
+ " (parameters\n"
+ " (declare (in) isampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature uvec4\n"
+ " (parameters\n"
+ " (declare (in) usampler3D sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec3 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) int offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 P) \n"
+ " (declare (const_in) ivec2 offset) \n"
+ " (declare (in) float bias) )\n"
+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n"
+ "\n"
+ "))\n"
+ ""
+;
+static const char builtin_transpose[] =
+ "((function transpose\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 m))\n"
+ " ((declare () mat2 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 m))\n"
+ " ((declare () mat3x2 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 m))\n"
+ " ((declare () mat4x2 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 m))\n"
+ " ((declare () mat2x3 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 m))\n"
+ " ((declare () mat3 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 m))\n"
+ " ((declare () mat4x3 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 m))\n"
+ " ((declare () mat2x4 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 m))\n"
+ " ((declare () mat3x4 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n"
+ "(return (var_ref t))))\n"
+ "\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 m))\n"
+ " ((declare () mat4 t)\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n"
+ " (assign (w) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (3)))))\n"
+ "(return (var_ref t))))\n"
+ ")\n"
+ "\n"
+ ")\n"
+ "\n"
+ ""
+;
+static const char builtin_trunc[] =
+ "((function trunc\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float arg0))\n"
+ " ((return (expression float trunc (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 arg0))\n"
+ " ((return (expression vec2 trunc (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 arg0))\n"
+ " ((return (expression vec3 trunc (var_ref arg0)))))\n"
+ "\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 arg0))\n"
+ " ((return (expression vec4 trunc (var_ref arg0)))))\n"
+ "))\n"
+ ""
+;
+static const char prototypes_for_100_frag[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())))"
+;
+static const char *functions_for_100_frag [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture2D,
+ builtin_texture2DProj,
+ builtin_textureCube,
+};
+static const char prototypes_for_100_vert[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function textureCubeLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())))"
+;
+static const char *functions_for_100_vert [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture2D,
+ builtin_texture2DLod,
+ builtin_texture2DProj,
+ builtin_texture2DProjLod,
+ builtin_textureCube,
+ builtin_textureCubeLod,
+};
+static const char prototypes_for_110_frag[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function dFdx\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function dFdy\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function fwidth\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function noise1\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise2\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise3\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise4\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ())))"
+;
+static const char *functions_for_110_frag [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_dFdx,
+ builtin_dFdy,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_fwidth,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_shadow1D,
+ builtin_shadow1DProj,
+ builtin_shadow2D,
+ builtin_shadow2DProj,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture1D,
+ builtin_texture1DProj,
+ builtin_texture2D,
+ builtin_texture2DProj,
+ builtin_texture3D,
+ builtin_texture3DProj,
+ builtin_textureCube,
+};
+static const char prototypes_for_110_vert[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ftransform\n"
+ " (signature vec4\n"
+ " (parameters)\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord))\n"
+ " ()))\n"
+ "(function texture1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture3DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture3DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function textureCubeLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function noise1\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise2\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise3\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise4\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ())))"
+;
+static const char *functions_for_110_vert [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_ftransform,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_shadow1D,
+ builtin_shadow1DLod,
+ builtin_shadow1DProj,
+ builtin_shadow1DProjLod,
+ builtin_shadow2D,
+ builtin_shadow2DLod,
+ builtin_shadow2DProj,
+ builtin_shadow2DProjLod,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture1D,
+ builtin_texture1DLod,
+ builtin_texture1DProj,
+ builtin_texture1DProjLod,
+ builtin_texture2D,
+ builtin_texture2DLod,
+ builtin_texture2DProj,
+ builtin_texture2DProjLod,
+ builtin_texture3D,
+ builtin_texture3DLod,
+ builtin_texture3DProj,
+ builtin_texture3DProjLod,
+ builtin_textureCube,
+ builtin_textureCubeLod,
+};
+static const char prototypes_for_120_frag[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 x)\n"
+ " (declare (in) mat2x3 y))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 x)\n"
+ " (declare (in) mat2x4 y))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 x)\n"
+ " (declare (in) mat3x2 y))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 x)\n"
+ " (declare (in) mat3x4 y))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 x)\n"
+ " (declare (in) mat4x2 y))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 x)\n"
+ " (declare (in) mat4x3 y))\n"
+ " ()))\n"
+ "(function outerProduct\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ()))\n"
+ "(function transpose\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 m))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 m))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 m))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 m))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 m))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 m))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 m))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 m))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 m))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function dFdx\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function dFdy\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function fwidth\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 p))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 p))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 p))\n"
+ " ()))\n"
+ "(function noise1\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise2\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise3\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise4\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ())))"
+;
+static const char *functions_for_120_frag [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_dFdx,
+ builtin_dFdy,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_fwidth,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_outerProduct,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_shadow1D,
+ builtin_shadow1DProj,
+ builtin_shadow2D,
+ builtin_shadow2DProj,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture1D,
+ builtin_texture1DProj,
+ builtin_texture2D,
+ builtin_texture2DProj,
+ builtin_texture3D,
+ builtin_texture3DProj,
+ builtin_textureCube,
+ builtin_transpose,
+};
+static const char prototypes_for_120_vert[] =
+ "(\n"
+ "(function radians\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float degrees))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 degrees))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 degrees))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 degrees))\n"
+ " ()))\n"
+ "(function degrees\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float radians))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 radians))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 radians))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 radians))\n"
+ " ()))\n"
+ "(function sin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function cos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function tan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function asin\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function acos\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float angle))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 angle))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 angle))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 angle))\n"
+ " ()))\n"
+ "(function atan\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float y_over_x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 y_over_x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 y_over_x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 y_over_x))\n"
+ " ()))\n"
+ "(function pow\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function exp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function exp2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function log2\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function inversesqrt\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function abs\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function sign\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function floor\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ceil\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function fract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function mod\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function min\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function max\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float y))\n"
+ " ()))\n"
+ "(function clamp\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 minVal)\n"
+ " (declare (in) vec2 maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 minVal)\n"
+ " (declare (in) vec3 maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 minVal)\n"
+ " (declare (in) vec4 maxVal))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) float minVal)\n"
+ " (declare (in) float maxVal))\n"
+ " ()))\n"
+ "(function mix\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) vec2 a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) vec3 a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) vec4 a))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y)\n"
+ " (declare (in) float a))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y)\n"
+ " (declare (in) float a))\n"
+ " ()))\n"
+ "(function step\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function smoothstep\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 edge0)\n"
+ " (declare (in) vec2 edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 edge0)\n"
+ " (declare (in) vec3 edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 edge0)\n"
+ " (declare (in) vec4 edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float edge0)\n"
+ " (declare (in) float edge1)\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function length\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function distance\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float p0)\n"
+ " (declare (in) float p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 p0)\n"
+ " (declare (in) vec2 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 p0)\n"
+ " (declare (in) vec3 p1))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 p0)\n"
+ " (declare (in) vec4 p1))\n"
+ " ()))\n"
+ "(function dot\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x)\n"
+ " (declare (in) float y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ()))\n"
+ "(function cross\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ()))\n"
+ "(function normalize\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function ftransform\n"
+ " (signature vec4\n"
+ " (parameters)\n"
+ " ()))\n"
+ "(function faceforward\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float Nref))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 Nref))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 Nref))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 Nref))\n"
+ " ()))\n"
+ "(function reflect\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N))\n"
+ " ()))\n"
+ "(function refract\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float I)\n"
+ " (declare (in) float N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 I)\n"
+ " (declare (in) vec2 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 I)\n"
+ " (declare (in) vec3 N)\n"
+ " (declare (in) float eta))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 I)\n"
+ " (declare (in) vec4 N)\n"
+ " (declare (in) float eta))\n"
+ " ()))\n"
+ "(function matrixCompMult\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 x)\n"
+ " (declare (in) mat2 y))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 x)\n"
+ " (declare (in) mat3 y))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 x)\n"
+ " (declare (in) mat4 y))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 x)\n"
+ " (declare (in) mat2x3 y))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 x)\n"
+ " (declare (in) mat2x4 y))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 x)\n"
+ " (declare (in) mat3x2 y))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 x)\n"
+ " (declare (in) mat3x4 y))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 x)\n"
+ " (declare (in) mat4x2 y))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 x)\n"
+ " (declare (in) mat4x3 y))\n"
+ " ()))\n"
+ "(function outerProduct\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec2 r))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) vec2 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) vec4 c)\n"
+ " (declare (in) vec3 r))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) vec3 c)\n"
+ " (declare (in) vec4 r))\n"
+ " ()))\n"
+ "(function transpose\n"
+ " (signature mat2\n"
+ " (parameters\n"
+ " (declare (in) mat2 m))\n"
+ " ())\n"
+ " (signature mat3\n"
+ " (parameters\n"
+ " (declare (in) mat3 m))\n"
+ " ())\n"
+ " (signature mat4\n"
+ " (parameters\n"
+ " (declare (in) mat4 m))\n"
+ " ())\n"
+ " (signature mat2x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x2 m))\n"
+ " ())\n"
+ " (signature mat3x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x3 m))\n"
+ " ())\n"
+ " (signature mat2x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x2 m))\n"
+ " ())\n"
+ " (signature mat4x2\n"
+ " (parameters\n"
+ " (declare (in) mat2x4 m))\n"
+ " ())\n"
+ " (signature mat3x4\n"
+ " (parameters\n"
+ " (declare (in) mat4x3 m))\n"
+ " ())\n"
+ " (signature mat4x3\n"
+ " (parameters\n"
+ " (declare (in) mat3x4 m))\n"
+ " ()))\n"
+ "(function lessThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function lessThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThan\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function greaterThanEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ()))\n"
+ "(function equal\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function notEqual\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x)\n"
+ " (declare (in) vec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x)\n"
+ " (declare (in) vec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x)\n"
+ " (declare (in) vec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) ivec2 x)\n"
+ " (declare (in) ivec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) ivec3 x)\n"
+ " (declare (in) ivec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) ivec4 x)\n"
+ " (declare (in) ivec4 y))\n"
+ " ())\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x)\n"
+ " (declare (in) bvec2 y))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x)\n"
+ " (declare (in) bvec3 y))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x)\n"
+ " (declare (in) bvec4 y))\n"
+ " ()))\n"
+ "(function any\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function all\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bool\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function not\n"
+ " (signature bvec2\n"
+ " (parameters\n"
+ " (declare (in) bvec2 x))\n"
+ " ())\n"
+ " (signature bvec3\n"
+ " (parameters\n"
+ " (declare (in) bvec3 x))\n"
+ " ())\n"
+ " (signature bvec4\n"
+ " (parameters\n"
+ " (declare (in) bvec4 x))\n"
+ " ()))\n"
+ "(function texture1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord))\n"
+ " ()))\n"
+ "(function texture1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) float coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture3DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture3DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function textureCube\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function textureCubeLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) samplerCube sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow1D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow2D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow1DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow2DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow1DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow2DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow1DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow2DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DShadow sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function noise1\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature float\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise2\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec2\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise3\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec3\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ()))\n"
+ "(function noise4\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) float x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec2 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec3 x))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) vec4 x))\n"
+ " ())))"
+;
+static const char *functions_for_120_vert [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_atan,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cross,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_ftransform,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_outerProduct,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_shadow1D,
+ builtin_shadow1DLod,
+ builtin_shadow1DProj,
+ builtin_shadow1DProjLod,
+ builtin_shadow2D,
+ builtin_shadow2DLod,
+ builtin_shadow2DProj,
+ builtin_shadow2DProjLod,
+ builtin_sign,
+ builtin_sin,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_texture1D,
+ builtin_texture1DLod,
+ builtin_texture1DProj,
+ builtin_texture1DProjLod,
+ builtin_texture2D,
+ builtin_texture2DLod,
+ builtin_texture2DProj,
+ builtin_texture2DProjLod,
+ builtin_texture3D,
+ builtin_texture3DLod,
+ builtin_texture3DProj,
+ builtin_texture3DProjLod,
+ builtin_textureCube,
+ builtin_textureCubeLod,
+ builtin_transpose,
+};
+static const char prototypes_for_130_frag[] =
+{'(',
+'(','f','u','n','c','t','i','o','n',' ','r','a','d','i','a','n','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','e','g','r','e','e','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','p','o','w',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','x','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','o','g',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','x','p','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','o','g','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','s','e','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','b','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','g','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','l','o','o','r',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','r','u','n','c',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d','E','v','e','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','e','i','l',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','o','d','f',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','f','l','o','a','t',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','2',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','3',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','4',' ','i',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','a','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','l','a','m','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','i','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','m','o','o','t','h','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','n','g','t','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','i','s','t','a','n','c','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','1',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','r','o','s','s',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','r','m','a','l','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','a','c','e','f','o','r','w','a','r','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N','r','e','f',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','e','f','l','e','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','e','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','a','t','r','i','x','C','o','m','p','M','u','l','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','o','u','t','e','r','P','r','o','d','u','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','r','a','n','s','p','o','s','e',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','m',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','t','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','n','y',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','l','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','F','d','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','F','d','y',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','w','i','d','t','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','1',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','2',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','3',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','4',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',')'} ;
+static const char *functions_for_130_frag [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_acosh,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_asinh,
+ builtin_atan,
+ builtin_atanh,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cosh,
+ builtin_cross,
+ builtin_dFdx,
+ builtin_dFdy,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_fwidth,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_modf,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_outerProduct,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_round,
+ builtin_roundEven,
+ builtin_shadow1D,
+ builtin_shadow1DLod,
+ builtin_shadow1DProj,
+ builtin_shadow1DProjLod,
+ builtin_shadow2D,
+ builtin_shadow2DLod,
+ builtin_shadow2DProj,
+ builtin_shadow2DProjLod,
+ builtin_sign,
+ builtin_sin,
+ builtin_sinh,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_tanh,
+ builtin_texelFetch,
+ builtin_texelFetchOffset,
+ builtin_texture,
+ builtin_texture1D,
+ builtin_texture1DLod,
+ builtin_texture1DProj,
+ builtin_texture1DProjLod,
+ builtin_texture2D,
+ builtin_texture2DLod,
+ builtin_texture2DProj,
+ builtin_texture2DProjLod,
+ builtin_texture3D,
+ builtin_texture3DLod,
+ builtin_texture3DProj,
+ builtin_texture3DProjLod,
+ builtin_textureCube,
+ builtin_textureCubeLod,
+ builtin_textureGrad,
+ builtin_textureGradOffset,
+ builtin_textureLod,
+ builtin_textureLodOffset,
+ builtin_textureOffset,
+ builtin_textureProj,
+ builtin_textureProjGrad,
+ builtin_textureProjGradOffset,
+ builtin_textureProjLod,
+ builtin_textureProjLodOffset,
+ builtin_transpose,
+ builtin_trunc,
+};
+static const char prototypes_for_130_vert[] =
+{'(',
+'(','f','u','n','c','t','i','o','n',' ','r','a','d','i','a','n','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','e','g','r','e','e','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','p','o','w',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','x','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','o','g',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','x','p','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','o','g','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','s','e','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','b','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','i','g','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','l','o','o','r',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','r','u','n','c',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d','E','v','e','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','e','i','l',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','o','d','f',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','f','l','o','a','t',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','2',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','3',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','4',' ','i',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','a','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','l','a','m','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','i','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','m','o','o','t','h','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','n','g','t','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','i','s','t','a','n','c','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','1',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','d','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','c','r','o','s','s',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','r','m','a','l','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','t','r','a','n','s','f','o','r','m',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','f','a','c','e','f','o','r','w','a','r','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N','r','e','f',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','e','f','l','e','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','r','e','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','m','a','t','r','i','x','C','o','m','p','M','u','l','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','o','u','t','e','r','P','r','o','d','u','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','r','a','n','s','p','o','s','e',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','m',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','e','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','t','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','n','y',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','a','l','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','b','i','a','s',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','1',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','2',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','3',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',
+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','4',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',')'} ;
+static const char *functions_for_130_vert [] = {
+ builtin_abs,
+ builtin_acos,
+ builtin_acosh,
+ builtin_all,
+ builtin_any,
+ builtin_asin,
+ builtin_asinh,
+ builtin_atan,
+ builtin_atanh,
+ builtin_ceil,
+ builtin_clamp,
+ builtin_cos,
+ builtin_cosh,
+ builtin_cross,
+ builtin_degrees,
+ builtin_distance,
+ builtin_dot,
+ builtin_equal,
+ builtin_exp,
+ builtin_exp2,
+ builtin_faceforward,
+ builtin_floor,
+ builtin_fract,
+ builtin_ftransform,
+ builtin_greaterThan,
+ builtin_greaterThanEqual,
+ builtin_inversesqrt,
+ builtin_length,
+ builtin_lessThan,
+ builtin_lessThanEqual,
+ builtin_log,
+ builtin_log2,
+ builtin_matrixCompMult,
+ builtin_max,
+ builtin_min,
+ builtin_mix,
+ builtin_mod,
+ builtin_modf,
+ builtin_noise1,
+ builtin_noise2,
+ builtin_noise3,
+ builtin_noise4,
+ builtin_normalize,
+ builtin_not,
+ builtin_notEqual,
+ builtin_outerProduct,
+ builtin_pow,
+ builtin_radians,
+ builtin_reflect,
+ builtin_refract,
+ builtin_round,
+ builtin_roundEven,
+ builtin_shadow1D,
+ builtin_shadow1DLod,
+ builtin_shadow1DProj,
+ builtin_shadow1DProjLod,
+ builtin_shadow2D,
+ builtin_shadow2DLod,
+ builtin_shadow2DProj,
+ builtin_shadow2DProjLod,
+ builtin_sign,
+ builtin_sin,
+ builtin_sinh,
+ builtin_smoothstep,
+ builtin_sqrt,
+ builtin_step,
+ builtin_tan,
+ builtin_tanh,
+ builtin_texelFetch,
+ builtin_texelFetchOffset,
+ builtin_texture,
+ builtin_texture1D,
+ builtin_texture1DLod,
+ builtin_texture1DProj,
+ builtin_texture1DProjLod,
+ builtin_texture2D,
+ builtin_texture2DLod,
+ builtin_texture2DProj,
+ builtin_texture2DProjLod,
+ builtin_texture3D,
+ builtin_texture3DLod,
+ builtin_texture3DProj,
+ builtin_texture3DProjLod,
+ builtin_textureCube,
+ builtin_textureCubeLod,
+ builtin_textureGrad,
+ builtin_textureGradOffset,
+ builtin_textureLod,
+ builtin_textureLodOffset,
+ builtin_textureOffset,
+ builtin_textureProj,
+ builtin_textureProjGrad,
+ builtin_textureProjGradOffset,
+ builtin_textureProjLod,
+ builtin_textureProjLodOffset,
+ builtin_transpose,
+ builtin_trunc,
+};
+static const char prototypes_for_ARB_texture_rectangle_frag[] =
+ "(\n"
+ "(function texture2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())))"
+;
+static const char *functions_for_ARB_texture_rectangle_frag [] = {
+ builtin_shadow2DRect,
+ builtin_shadow2DRectProj,
+ builtin_texture2DRect,
+ builtin_texture2DRectProj,
+};
+static const char prototypes_for_ARB_texture_rectangle_vert[] =
+ "(\n"
+ "(function texture2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRect sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function shadow2DRect\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow2DRectProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DRectShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())))"
+;
+static const char *functions_for_ARB_texture_rectangle_vert [] = {
+ builtin_shadow2DRect,
+ builtin_shadow2DRectProj,
+ builtin_texture2DRect,
+ builtin_texture2DRectProj,
+};
+static const char prototypes_for_EXT_texture_array_frag[] =
+ "(\n"
+ "(function texture1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function shadow2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())))"
+;
+static const char *functions_for_EXT_texture_array_frag [] = {
+ builtin_shadow1DArray,
+ builtin_shadow2DArray,
+ builtin_texture1DArray,
+ builtin_texture2DArray,
+};
+static const char prototypes_for_EXT_texture_array_vert[] =
+ "(\n"
+ "(function texture1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 coord))\n"
+ " ()))\n"
+ "(function texture1DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArray sampler)\n"
+ " (declare (in) vec2 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function texture2DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArray sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow1DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function shadow1DArrayLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler1DArrayShadow sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function shadow2DArray\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler2DArrayShadow sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())))"
+;
+static const char *functions_for_EXT_texture_array_vert [] = {
+ builtin_shadow1DArray,
+ builtin_shadow1DArrayLod,
+ builtin_shadow2DArray,
+ builtin_texture1DArray,
+ builtin_texture1DArrayLod,
+ builtin_texture2DArray,
+ builtin_texture2DArrayLod,
+};
+static const char prototypes_for_OES_texture_3D_frag[] =
+ "(\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float bias))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ())\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float bias))\n"
+ " ())))"
+;
+static const char *functions_for_OES_texture_3D_frag [] = {
+ builtin_texture3D,
+ builtin_texture3DProj,
+};
+static const char prototypes_for_OES_texture_3D_vert[] =
+ "(\n"
+ "(function texture3D\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord))\n"
+ " ()))\n"
+ "(function texture3DProj\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord))\n"
+ " ()))\n"
+ "(function texture3DLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec3 coord)\n"
+ " (declare (in) float lod))\n"
+ " ()))\n"
+ "(function texture3DProjLod\n"
+ " (signature vec4\n"
+ " (parameters\n"
+ " (declare (in) sampler3D sampler)\n"
+ " (declare (in) vec4 coord)\n"
+ " (declare (in) float lod))\n"
+ " ())))"
+;
+static const char *functions_for_OES_texture_3D_vert [] = {
+ builtin_texture3D,
+ builtin_texture3DLod,
+ builtin_texture3DProj,
+ builtin_texture3DProjLod,
+};
+static gl_shader *builtin_profiles[14];
+
+void *builtin_mem_ctx = NULL;
+
+void
+_mesa_glsl_release_functions(void)
+{
+ ralloc_free(builtin_mem_ctx);
+ builtin_mem_ctx = NULL;
+ memset(builtin_profiles, 0, sizeof(builtin_profiles));
+}
+
+static void
+_mesa_read_profile(struct _mesa_glsl_parse_state *state,
+ int profile_index,
+ const char *prototypes,
+ const char **functions,
+ int count)
+{
+ gl_shader *sh = builtin_profiles[profile_index];
+
+ if (sh == NULL) {
+ sh = read_builtins(GL_VERTEX_SHADER, prototypes, functions, count);
+ ralloc_steal(builtin_mem_ctx, sh);
+ builtin_profiles[profile_index] = sh;
+ }
+
+ state->builtins_to_link[state->num_builtins_to_link] = sh;
+ state->num_builtins_to_link++;
+}
+
+void
+_mesa_glsl_initialize_functions(struct _mesa_glsl_parse_state *state)
+{
+ if (builtin_mem_ctx == NULL) {
+ builtin_mem_ctx = ralloc_context(NULL); // "GLSL built-in functions"
+ memset(&builtin_profiles, 0, sizeof(builtin_profiles));
+ }
+
+ state->num_builtins_to_link = 0;
+
+ if (state->target == fragment_shader && state->language_version == 100) {
+ _mesa_read_profile(state, 0,
+ prototypes_for_100_frag,
+ functions_for_100_frag,
+ Elements(functions_for_100_frag));
+ }
+
+ if (state->target == vertex_shader && state->language_version == 100) {
+ _mesa_read_profile(state, 1,
+ prototypes_for_100_vert,
+ functions_for_100_vert,
+ Elements(functions_for_100_vert));
+ }
+
+ if (state->target == fragment_shader && state->language_version == 110) {
+ _mesa_read_profile(state, 2,
+ prototypes_for_110_frag,
+ functions_for_110_frag,
+ Elements(functions_for_110_frag));
+ }
+
+ if (state->target == vertex_shader && state->language_version == 110) {
+ _mesa_read_profile(state, 3,
+ prototypes_for_110_vert,
+ functions_for_110_vert,
+ Elements(functions_for_110_vert));
+ }
+
+ if (state->target == fragment_shader && state->language_version == 120) {
+ _mesa_read_profile(state, 4,
+ prototypes_for_120_frag,
+ functions_for_120_frag,
+ Elements(functions_for_120_frag));
+ }
+
+ if (state->target == vertex_shader && state->language_version == 120) {
+ _mesa_read_profile(state, 5,
+ prototypes_for_120_vert,
+ functions_for_120_vert,
+ Elements(functions_for_120_vert));
+ }
+
+ if (state->target == fragment_shader && state->language_version == 130) {
+ _mesa_read_profile(state, 6,
+ prototypes_for_130_frag,
+ functions_for_130_frag,
+ Elements(functions_for_130_frag));
+ }
+
+ if (state->target == vertex_shader && state->language_version == 130) {
+ _mesa_read_profile(state, 7,
+ prototypes_for_130_vert,
+ functions_for_130_vert,
+ Elements(functions_for_130_vert));
+ }
+
+ if (state->target == fragment_shader && state->ARB_texture_rectangle_enable) {
+ _mesa_read_profile(state, 8,
+ prototypes_for_ARB_texture_rectangle_frag,
+ functions_for_ARB_texture_rectangle_frag,
+ Elements(functions_for_ARB_texture_rectangle_frag));
+ }
+
+ if (state->target == vertex_shader && state->ARB_texture_rectangle_enable) {
+ _mesa_read_profile(state, 9,
+ prototypes_for_ARB_texture_rectangle_vert,
+ functions_for_ARB_texture_rectangle_vert,
+ Elements(functions_for_ARB_texture_rectangle_vert));
+ }
+
+ if (state->target == fragment_shader && state->EXT_texture_array_enable) {
+ _mesa_read_profile(state, 10,
+ prototypes_for_EXT_texture_array_frag,
+ functions_for_EXT_texture_array_frag,
+ Elements(functions_for_EXT_texture_array_frag));
+ }
+
+ if (state->target == vertex_shader && state->EXT_texture_array_enable) {
+ _mesa_read_profile(state, 11,
+ prototypes_for_EXT_texture_array_vert,
+ functions_for_EXT_texture_array_vert,
+ Elements(functions_for_EXT_texture_array_vert));
+ }
+
+ if (state->target == fragment_shader && state->OES_texture_3D_enable) {
+ _mesa_read_profile(state, 12,
+ prototypes_for_OES_texture_3D_frag,
+ functions_for_OES_texture_3D_frag,
+ Elements(functions_for_OES_texture_3D_frag));
+ }
+
+ if (state->target == vertex_shader && state->OES_texture_3D_enable) {
+ _mesa_read_profile(state, 13,
+ prototypes_for_OES_texture_3D_vert,
+ functions_for_OES_texture_3D_vert,
+ Elements(functions_for_OES_texture_3D_vert));
+ }
+
+}
diff --git a/src/mapi/es1api/glapi_mapi_tmp.h b/src/mapi/es1api/glapi_mapi_tmp.h
new file mode 100644
index 0000000000..28dafc3443
--- /dev/null
+++ b/src/mapi/es1api/glapi_mapi_tmp.h
@@ -0,0 +1,3394 @@
+/* This file is automatically generated by mapi_abi.py. Do not modify. */
+
+#ifndef _GLAPI_TMP_H_
+#define _GLAPI_TMP_H_
+typedef int GLfixed;
+typedef int GLclampx;
+#endif /* _GLAPI_TMP_H_ */
+
+#ifdef MAPI_TMP_DEFINES
+#define GL_GLEXT_PROTOTYPES
+#include "GL/gl.h"
+#include "GL/glext.h"
+
+void APIENTRY gl_dispatch_stub_0(GLuint list, GLenum mode);
+void APIENTRY gl_dispatch_stub_1(void);
+void APIENTRY gl_dispatch_stub_2(GLuint list);
+void APIENTRY gl_dispatch_stub_3(GLsizei n, GLenum type, const GLvoid *lists);
+void APIENTRY gl_dispatch_stub_4(GLuint list, GLsizei range);
+GLuint APIENTRY gl_dispatch_stub_5(GLsizei range);
+void APIENTRY gl_dispatch_stub_6(GLuint base);
+void APIENTRY gl_dispatch_stub_7(GLenum mode);
+void APIENTRY gl_dispatch_stub_8(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+void APIENTRY gl_dispatch_stub_9(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY gl_dispatch_stub_10(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_11(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY gl_dispatch_stub_12(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_13(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY gl_dispatch_stub_14(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_15(GLint red, GLint green, GLint blue);
+void APIENTRY gl_dispatch_stub_16(const GLint *v);
+void APIENTRY gl_dispatch_stub_17(GLshort red, GLshort green, GLshort blue);
+void APIENTRY gl_dispatch_stub_18(const GLshort *v);
+void APIENTRY gl_dispatch_stub_19(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY gl_dispatch_stub_20(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_21(GLuint red, GLuint green, GLuint blue);
+void APIENTRY gl_dispatch_stub_22(const GLuint *v);
+void APIENTRY gl_dispatch_stub_23(GLushort red, GLushort green, GLushort blue);
+void APIENTRY gl_dispatch_stub_24(const GLushort *v);
+void APIENTRY gl_dispatch_stub_25(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+void APIENTRY gl_dispatch_stub_26(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_27(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+void APIENTRY gl_dispatch_stub_28(const GLdouble *v);
+GLAPI void APIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY gl_dispatch_stub_30(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_31(GLint red, GLint green, GLint blue, GLint alpha);
+void APIENTRY gl_dispatch_stub_32(const GLint *v);
+void APIENTRY gl_dispatch_stub_33(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+void APIENTRY gl_dispatch_stub_34(const GLshort *v);
+GLAPI void APIENTRY glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+void APIENTRY gl_dispatch_stub_36(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_37(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+void APIENTRY gl_dispatch_stub_38(const GLuint *v);
+void APIENTRY gl_dispatch_stub_39(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+void APIENTRY gl_dispatch_stub_40(const GLushort *v);
+void APIENTRY gl_dispatch_stub_41(GLboolean flag);
+void APIENTRY gl_dispatch_stub_42(const GLboolean *flag);
+void APIENTRY gl_dispatch_stub_43(void);
+void APIENTRY gl_dispatch_stub_44(GLdouble c);
+void APIENTRY gl_dispatch_stub_45(const GLdouble *c);
+void APIENTRY gl_dispatch_stub_46(GLfloat c);
+void APIENTRY gl_dispatch_stub_47(const GLfloat *c);
+void APIENTRY gl_dispatch_stub_48(GLint c);
+void APIENTRY gl_dispatch_stub_49(const GLint *c);
+void APIENTRY gl_dispatch_stub_50(GLshort c);
+void APIENTRY gl_dispatch_stub_51(const GLshort *c);
+void APIENTRY gl_dispatch_stub_52(GLbyte nx, GLbyte ny, GLbyte nz);
+void APIENTRY gl_dispatch_stub_53(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_54(GLdouble nx, GLdouble ny, GLdouble nz);
+void APIENTRY gl_dispatch_stub_55(const GLdouble *v);
+GLAPI void APIENTRY glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+void APIENTRY gl_dispatch_stub_57(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_58(GLint nx, GLint ny, GLint nz);
+void APIENTRY gl_dispatch_stub_59(const GLint *v);
+void APIENTRY gl_dispatch_stub_60(GLshort nx, GLshort ny, GLshort nz);
+void APIENTRY gl_dispatch_stub_61(const GLshort *v);
+void APIENTRY gl_dispatch_stub_62(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_63(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_64(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_65(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_66(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_67(const GLint *v);
+void APIENTRY gl_dispatch_stub_68(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_69(const GLshort *v);
+void APIENTRY gl_dispatch_stub_70(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_71(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_72(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_73(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_74(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_75(const GLint *v);
+void APIENTRY gl_dispatch_stub_76(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_77(const GLshort *v);
+void APIENTRY gl_dispatch_stub_78(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_79(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_80(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_81(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_82(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_83(const GLint *v);
+void APIENTRY gl_dispatch_stub_84(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_85(const GLshort *v);
+void APIENTRY gl_dispatch_stub_86(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+void APIENTRY gl_dispatch_stub_87(const GLdouble *v1, const GLdouble *v2);
+void APIENTRY gl_dispatch_stub_88(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+void APIENTRY gl_dispatch_stub_89(const GLfloat *v1, const GLfloat *v2);
+void APIENTRY gl_dispatch_stub_90(GLint x1, GLint y1, GLint x2, GLint y2);
+void APIENTRY gl_dispatch_stub_91(const GLint *v1, const GLint *v2);
+void APIENTRY gl_dispatch_stub_92(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+void APIENTRY gl_dispatch_stub_93(const GLshort *v1, const GLshort *v2);
+void APIENTRY gl_dispatch_stub_94(GLdouble s);
+void APIENTRY gl_dispatch_stub_95(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_96(GLfloat s);
+void APIENTRY gl_dispatch_stub_97(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_98(GLint s);
+void APIENTRY gl_dispatch_stub_99(const GLint *v);
+void APIENTRY gl_dispatch_stub_100(GLshort s);
+void APIENTRY gl_dispatch_stub_101(const GLshort *v);
+void APIENTRY gl_dispatch_stub_102(GLdouble s, GLdouble t);
+void APIENTRY gl_dispatch_stub_103(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_104(GLfloat s, GLfloat t);
+void APIENTRY gl_dispatch_stub_105(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_106(GLint s, GLint t);
+void APIENTRY gl_dispatch_stub_107(const GLint *v);
+void APIENTRY gl_dispatch_stub_108(GLshort s, GLshort t);
+void APIENTRY gl_dispatch_stub_109(const GLshort *v);
+void APIENTRY gl_dispatch_stub_110(GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY gl_dispatch_stub_111(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_112(GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY gl_dispatch_stub_113(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_114(GLint s, GLint t, GLint r);
+void APIENTRY gl_dispatch_stub_115(const GLint *v);
+void APIENTRY gl_dispatch_stub_116(GLshort s, GLshort t, GLshort r);
+void APIENTRY gl_dispatch_stub_117(const GLshort *v);
+void APIENTRY gl_dispatch_stub_118(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY gl_dispatch_stub_119(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_120(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY gl_dispatch_stub_121(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_122(GLint s, GLint t, GLint r, GLint q);
+void APIENTRY gl_dispatch_stub_123(const GLint *v);
+void APIENTRY gl_dispatch_stub_124(GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY gl_dispatch_stub_125(const GLshort *v);
+void APIENTRY gl_dispatch_stub_126(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_127(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_128(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_129(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_130(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_131(const GLint *v);
+void APIENTRY gl_dispatch_stub_132(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_133(const GLshort *v);
+void APIENTRY gl_dispatch_stub_134(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_135(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_136(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_137(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_138(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_139(const GLint *v);
+void APIENTRY gl_dispatch_stub_140(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_141(const GLshort *v);
+void APIENTRY gl_dispatch_stub_142(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_143(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_144(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_145(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_146(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_147(const GLint *v);
+void APIENTRY gl_dispatch_stub_148(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_149(const GLshort *v);
+void APIENTRY gl_dispatch_stub_150(GLenum plane, const GLdouble *equation);
+void APIENTRY gl_dispatch_stub_151(GLenum face, GLenum mode);
+GLAPI void APIENTRY glCullFace(GLenum mode);
+GLAPI void APIENTRY glFogf(GLenum pname, GLfloat param);
+GLAPI void APIENTRY glFogfv(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_155(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_156(GLenum pname, const GLint *params);
+GLAPI void APIENTRY glFrontFace(GLenum mode);
+GLAPI void APIENTRY glHint(GLenum target, GLenum mode);
+GLAPI void APIENTRY glLightf(GLenum light, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_161(GLenum light, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_162(GLenum light, GLenum pname, const GLint *params);
+GLAPI void APIENTRY glLightModelf(GLenum pname, GLfloat param);
+GLAPI void APIENTRY glLightModelfv(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_165(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_166(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_167(GLint factor, GLushort pattern);
+GLAPI void APIENTRY glLineWidth(GLfloat width);
+GLAPI void APIENTRY glMaterialf(GLenum face, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_171(GLenum face, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_172(GLenum face, GLenum pname, const GLint *params);
+GLAPI void APIENTRY glPointSize(GLfloat size);
+void APIENTRY gl_dispatch_stub_174(GLenum face, GLenum mode);
+void APIENTRY gl_dispatch_stub_175(const GLubyte *mask);
+GLAPI void APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glShadeModel(GLenum mode);
+GLAPI void APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param);
+GLAPI void APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_182(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glTexEnvi(GLenum target, GLenum pname, GLint param);
+GLAPI void APIENTRY glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_188(GLenum coord, GLenum pname, GLdouble param);
+void APIENTRY gl_dispatch_stub_189(GLenum coord, GLenum pname, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_190(GLenum coord, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glTexGenfOES(GLenum coord, GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_191(GLenum coord, GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glTexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_192(GLenum coord, GLenum pname, GLint param);
+GLAPI void APIENTRY glTexGeniOES(GLenum coord, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_193(GLenum coord, GLenum pname, const GLint *params);
+GLAPI void APIENTRY glTexGenivOES(GLenum coord, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_194(GLsizei size, GLenum type, GLfloat *buffer);
+void APIENTRY gl_dispatch_stub_195(GLsizei size, GLuint *buffer);
+GLint APIENTRY gl_dispatch_stub_196(GLenum mode);
+void APIENTRY gl_dispatch_stub_197(void);
+void APIENTRY gl_dispatch_stub_198(GLuint name);
+void APIENTRY gl_dispatch_stub_199(GLfloat token);
+void APIENTRY gl_dispatch_stub_200(void);
+void APIENTRY gl_dispatch_stub_201(GLuint name);
+void APIENTRY gl_dispatch_stub_202(GLenum mode);
+GLAPI void APIENTRY glClear(GLbitfield mask);
+void APIENTRY gl_dispatch_stub_204(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY gl_dispatch_stub_205(GLfloat c);
+GLAPI void APIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GLAPI void APIENTRY glClearStencil(GLint s);
+void APIENTRY gl_dispatch_stub_208(GLclampd depth);
+GLAPI void APIENTRY glStencilMask(GLuint mask);
+GLAPI void APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GLAPI void APIENTRY glDepthMask(GLboolean flag);
+void APIENTRY gl_dispatch_stub_212(GLuint mask);
+void APIENTRY gl_dispatch_stub_213(GLenum op, GLfloat value);
+GLAPI void APIENTRY glDisable(GLenum cap);
+GLAPI void APIENTRY glEnable(GLenum cap);
+GLAPI void APIENTRY glFinish(void);
+GLAPI void APIENTRY glFlush(void);
+void APIENTRY gl_dispatch_stub_218(void);
+void APIENTRY gl_dispatch_stub_219(GLbitfield mask);
+void APIENTRY gl_dispatch_stub_220(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+void APIENTRY gl_dispatch_stub_221(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+void APIENTRY gl_dispatch_stub_222(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+void APIENTRY gl_dispatch_stub_223(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+void APIENTRY gl_dispatch_stub_224(GLint un, GLdouble u1, GLdouble u2);
+void APIENTRY gl_dispatch_stub_225(GLint un, GLfloat u1, GLfloat u2);
+void APIENTRY gl_dispatch_stub_226(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+void APIENTRY gl_dispatch_stub_227(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+void APIENTRY gl_dispatch_stub_228(GLdouble u);
+void APIENTRY gl_dispatch_stub_229(const GLdouble *u);
+void APIENTRY gl_dispatch_stub_230(GLfloat u);
+void APIENTRY gl_dispatch_stub_231(const GLfloat *u);
+void APIENTRY gl_dispatch_stub_232(GLdouble u, GLdouble v);
+void APIENTRY gl_dispatch_stub_233(const GLdouble *u);
+void APIENTRY gl_dispatch_stub_234(GLfloat u, GLfloat v);
+void APIENTRY gl_dispatch_stub_235(const GLfloat *u);
+void APIENTRY gl_dispatch_stub_236(GLenum mode, GLint i1, GLint i2);
+void APIENTRY gl_dispatch_stub_237(GLint i);
+void APIENTRY gl_dispatch_stub_238(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+void APIENTRY gl_dispatch_stub_239(GLint i, GLint j);
+GLAPI void APIENTRY glAlphaFunc(GLenum func, GLclampf ref);
+GLAPI void APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor);
+GLAPI void APIENTRY glLogicOp(GLenum opcode);
+GLAPI void APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask);
+GLAPI void APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+GLAPI void APIENTRY glDepthFunc(GLenum func);
+void APIENTRY gl_dispatch_stub_246(GLfloat xfactor, GLfloat yfactor);
+void APIENTRY gl_dispatch_stub_247(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_248(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_249(GLenum pname, GLfloat param);
+GLAPI void APIENTRY glPixelStorei(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_251(GLenum map, GLsizei mapsize, const GLfloat *values);
+void APIENTRY gl_dispatch_stub_252(GLenum map, GLsizei mapsize, const GLuint *values);
+void APIENTRY gl_dispatch_stub_253(GLenum map, GLsizei mapsize, const GLushort *values);
+void APIENTRY gl_dispatch_stub_254(GLenum mode);
+void APIENTRY gl_dispatch_stub_255(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+GLAPI void APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_257(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glGetBooleanv(GLenum pname, GLboolean *params);
+void APIENTRY gl_dispatch_stub_259(GLenum plane, GLdouble *equation);
+void APIENTRY gl_dispatch_stub_260(GLenum pname, GLdouble *params);
+GLAPI GLenum APIENTRY glGetError(void);
+GLAPI void APIENTRY glGetFloatv(GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetIntegerv(GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_265(GLenum light, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_266(GLenum target, GLenum query, GLdouble *v);
+void APIENTRY gl_dispatch_stub_267(GLenum target, GLenum query, GLfloat *v);
+void APIENTRY gl_dispatch_stub_268(GLenum target, GLenum query, GLint *v);
+GLAPI void APIENTRY glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_270(GLenum face, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_271(GLenum map, GLfloat *values);
+void APIENTRY gl_dispatch_stub_272(GLenum map, GLuint *values);
+void APIENTRY gl_dispatch_stub_273(GLenum map, GLushort *values);
+void APIENTRY gl_dispatch_stub_274(GLubyte *mask);
+GLAPI const GLubyte * APIENTRY glGetString(GLenum name);
+GLAPI void APIENTRY glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_278(GLenum coord, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_279(GLenum coord, GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_280(GLenum coord, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_281(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+GLAPI void APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_284(GLenum target, GLint level, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_285(GLenum target, GLint level, GLenum pname, GLint *params);
+GLAPI GLboolean APIENTRY glIsEnabled(GLenum cap);
+GLboolean APIENTRY gl_dispatch_stub_287(GLuint list);
+void APIENTRY gl_dispatch_stub_288(GLclampd zNear, GLclampd zFar);
+void APIENTRY gl_dispatch_stub_289(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+GLAPI void APIENTRY glLoadIdentity(void);
+GLAPI void APIENTRY glLoadMatrixf(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_292(const GLdouble *m);
+GLAPI void APIENTRY glMatrixMode(GLenum mode);
+GLAPI void APIENTRY glMultMatrixf(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_295(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_296(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+GLAPI void APIENTRY glPopMatrix(void);
+GLAPI void APIENTRY glPushMatrix(void);
+void APIENTRY gl_dispatch_stub_299(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+GLAPI void APIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_301(GLdouble x, GLdouble y, GLdouble z);
+GLAPI void APIENTRY glScalef(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_303(GLdouble x, GLdouble y, GLdouble z);
+GLAPI void APIENTRY glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+GLAPI void APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_306(GLint i);
+GLAPI void APIENTRY glBindTexture(GLenum target, GLuint texture);
+GLAPI void APIENTRY glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glDisableClientState(GLenum array);
+GLAPI void APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count);
+GLAPI void APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY gl_dispatch_stub_312(GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glEnableClientState(GLenum array);
+void APIENTRY gl_dispatch_stub_314(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_315(GLubyte c);
+void APIENTRY gl_dispatch_stub_316(const GLubyte *c);
+void APIENTRY gl_dispatch_stub_317(GLenum format, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glPolygonOffset(GLfloat factor, GLfloat units);
+GLAPI void APIENTRY glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLboolean APIENTRY gl_dispatch_stub_322(GLsizei n, const GLuint *textures, GLboolean *residences);
+void APIENTRY gl_dispatch_stub_323(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+GLAPI void APIENTRY glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+void APIENTRY gl_dispatch_stub_325(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+GLAPI void APIENTRY glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glDeleteTextures(GLsizei n, const GLuint *textures);
+GLAPI void APIENTRY glGenTextures(GLsizei n, GLuint *textures);
+GLAPI void APIENTRY glGetPointerv(GLenum pname, GLvoid **params);
+GLAPI GLboolean APIENTRY glIsTexture(GLuint texture);
+void APIENTRY gl_dispatch_stub_331(GLsizei n, const GLuint *textures, const GLclampf *priorities);
+void APIENTRY gl_dispatch_stub_332(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_334(void);
+void APIENTRY gl_dispatch_stub_335(GLbitfield mask);
+void APIENTRY gl_dispatch_stub_336(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+void APIENTRY gl_dispatch_stub_337(GLenum mode);
+GLAPI void APIENTRY glBlendEquationOES(GLenum mode);
+void APIENTRY gl_dispatch_stub_338(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY gl_dispatch_stub_339(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+void APIENTRY gl_dispatch_stub_340(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_341(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_342(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid *table);
+void APIENTRY gl_dispatch_stub_344(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_345(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_346(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_347(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_348(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY gl_dispatch_stub_349(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY gl_dispatch_stub_350(GLenum target, GLenum pname, GLfloat params);
+void APIENTRY gl_dispatch_stub_351(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_352(GLenum target, GLenum pname, GLint params);
+void APIENTRY gl_dispatch_stub_353(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_354(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_355(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid *image);
+void APIENTRY gl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_358(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+void APIENTRY gl_dispatch_stub_360(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+void APIENTRY gl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY gl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_367(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+void APIENTRY gl_dispatch_stub_368(GLenum target, GLenum internalformat, GLboolean sink);
+void APIENTRY gl_dispatch_stub_369(GLenum target);
+void APIENTRY gl_dispatch_stub_370(GLenum target);
+void APIENTRY gl_dispatch_stub_371(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_372(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_373(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_374(GLenum texture);
+GLAPI void APIENTRY glActiveTexture(GLenum texture);
+void APIENTRY gl_dispatch_stub_375(GLenum texture);
+GLAPI void APIENTRY glClientActiveTexture(GLenum texture);
+void APIENTRY gl_dispatch_stub_376(GLenum target, GLdouble s);
+void APIENTRY gl_dispatch_stub_377(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_378(GLenum target, GLfloat s);
+void APIENTRY gl_dispatch_stub_379(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_380(GLenum target, GLint s);
+void APIENTRY gl_dispatch_stub_381(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_382(GLenum target, GLshort s);
+void APIENTRY gl_dispatch_stub_383(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_384(GLenum target, GLdouble s, GLdouble t);
+void APIENTRY gl_dispatch_stub_385(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_386(GLenum target, GLfloat s, GLfloat t);
+void APIENTRY gl_dispatch_stub_387(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_388(GLenum target, GLint s, GLint t);
+void APIENTRY gl_dispatch_stub_389(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_390(GLenum target, GLshort s, GLshort t);
+void APIENTRY gl_dispatch_stub_391(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_392(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY gl_dispatch_stub_393(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_394(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY gl_dispatch_stub_395(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_396(GLenum target, GLint s, GLint t, GLint r);
+void APIENTRY gl_dispatch_stub_397(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_398(GLenum target, GLshort s, GLshort t, GLshort r);
+void APIENTRY gl_dispatch_stub_399(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_400(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY gl_dispatch_stub_401(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_402(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+GLAPI void APIENTRY glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY gl_dispatch_stub_403(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_404(GLenum target, GLint s, GLint t, GLint r, GLint q);
+void APIENTRY gl_dispatch_stub_405(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_406(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY gl_dispatch_stub_407(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_408(GLuint program, GLuint shader);
+GLuint APIENTRY gl_dispatch_stub_409(void);
+GLuint APIENTRY gl_dispatch_stub_410(GLenum type);
+void APIENTRY gl_dispatch_stub_411(GLuint program);
+void APIENTRY gl_dispatch_stub_412(GLuint program);
+void APIENTRY gl_dispatch_stub_413(GLuint program, GLuint shader);
+void APIENTRY gl_dispatch_stub_414(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+void APIENTRY gl_dispatch_stub_415(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+void APIENTRY gl_dispatch_stub_416(GLuint program, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_417(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+void APIENTRY gl_dispatch_stub_418(GLuint shader, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_419(GLuint program);
+GLboolean APIENTRY gl_dispatch_stub_420(GLuint shader);
+void APIENTRY gl_dispatch_stub_421(GLenum face, GLenum func, GLint ref, GLuint mask);
+void APIENTRY gl_dispatch_stub_422(GLenum face, GLuint mask);
+void APIENTRY gl_dispatch_stub_423(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
+void APIENTRY gl_dispatch_stub_424(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_425(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_426(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_427(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_428(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_429(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_430(GLenum target, GLenum clamp);
+void APIENTRY gl_dispatch_stub_431(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil);
+void APIENTRY gl_dispatch_stub_432(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_433(GLenum buffer, GLint drawbuffer, const GLint *value);
+void APIENTRY gl_dispatch_stub_434(GLenum buffer, GLint drawbuffer, const GLuint *value);
+const GLubyte * APIENTRY gl_dispatch_stub_435(GLenum name, GLuint index);
+void APIENTRY gl_dispatch_stub_436(GLenum target, GLenum internalFormat, GLuint buffer);
+void APIENTRY gl_dispatch_stub_437(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_438(GLenum target, GLenum pname, GLint64 *params);
+void APIENTRY gl_dispatch_stub_439(GLenum cap, GLuint index, GLint64 *data);
+void APIENTRY gl_dispatch_stub_440(GLuint index, GLuint divisor);
+void APIENTRY gl_dispatch_stub_441(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_442(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_443(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_444(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_445(GLclampf value, GLboolean invert);
+GLAPI void APIENTRY glSampleCoverage(GLclampf value, GLboolean invert);
+void APIENTRY gl_dispatch_stub_446(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_447(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_448(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_449(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_450(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_451(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_452(GLenum target, GLint level, GLvoid *img);
+void APIENTRY gl_dispatch_stub_453(GLuint index);
+void APIENTRY gl_dispatch_stub_454(GLuint index);
+void APIENTRY gl_dispatch_stub_455(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY gl_dispatch_stub_456(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY gl_dispatch_stub_457(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY gl_dispatch_stub_458(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY gl_dispatch_stub_459(GLenum target, GLenum pname, GLvoid *string);
+void APIENTRY gl_dispatch_stub_460(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_461(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_462(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_463(GLuint index, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_464(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_465(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_466(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_467(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_468(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_469(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_470(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_471(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_472(GLenum target, GLenum format, GLsizei len, const GLvoid *string);
+void APIENTRY gl_dispatch_stub_473(GLuint index, GLdouble x);
+void APIENTRY gl_dispatch_stub_474(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_475(GLuint index, GLfloat x);
+void APIENTRY gl_dispatch_stub_476(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_477(GLuint index, GLshort x);
+void APIENTRY gl_dispatch_stub_478(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_479(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_480(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_481(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_482(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_483(GLuint index, GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_484(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_485(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_486(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_487(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_488(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_489(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_490(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_491(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_492(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_493(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_494(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY gl_dispatch_stub_495(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_496(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_497(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_498(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_499(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_500(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_501(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_502(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_503(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_504(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_505(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_506(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_507(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_508(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_509(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_510(GLenum target, GLuint buffer);
+GLAPI void APIENTRY glBindBuffer(GLenum target, GLuint buffer);
+void APIENTRY gl_dispatch_stub_511(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
+GLAPI void APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+void APIENTRY gl_dispatch_stub_512(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
+GLAPI void APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_513(GLsizei n, const GLuint *buffer);
+GLAPI void APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffer);
+void APIENTRY gl_dispatch_stub_514(GLsizei n, GLuint *buffer);
+GLAPI void APIENTRY glGenBuffers(GLsizei n, GLuint *buffer);
+void APIENTRY gl_dispatch_stub_515(GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_516(GLenum target, GLenum pname, GLvoid **params);
+GLAPI void APIENTRY glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY gl_dispatch_stub_517(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
+GLboolean APIENTRY gl_dispatch_stub_518(GLuint buffer);
+GLAPI GLboolean APIENTRY glIsBuffer(GLuint buffer);
+GLvoid * APIENTRY gl_dispatch_stub_519(GLenum target, GLenum access);
+GLAPI GLvoid * APIENTRY glMapBufferOES(GLenum target, GLenum access);
+GLboolean APIENTRY gl_dispatch_stub_520(GLenum target);
+GLAPI GLboolean APIENTRY glUnmapBufferOES(GLenum target);
+void APIENTRY gl_dispatch_stub_521(GLenum target, GLuint id);
+void APIENTRY gl_dispatch_stub_522(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_523(GLenum target);
+void APIENTRY gl_dispatch_stub_524(GLsizei n, GLuint *ids);
+void APIENTRY gl_dispatch_stub_525(GLuint id, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_526(GLuint id, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_527(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_528(GLuint id);
+void APIENTRY gl_dispatch_stub_529(GLhandleARB containerObj, GLhandleARB obj);
+void APIENTRY gl_dispatch_stub_530(GLhandleARB shader);
+GLhandleARB APIENTRY gl_dispatch_stub_531(void);
+GLhandleARB APIENTRY gl_dispatch_stub_532(GLenum shaderType);
+void APIENTRY gl_dispatch_stub_533(GLhandleARB obj);
+void APIENTRY gl_dispatch_stub_534(GLhandleARB containerObj, GLhandleARB attachedObj);
+void APIENTRY gl_dispatch_stub_535(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+void APIENTRY gl_dispatch_stub_536(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog);
+GLhandleARB APIENTRY gl_dispatch_stub_537(GLenum pname);
+void APIENTRY gl_dispatch_stub_538(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
+void APIENTRY gl_dispatch_stub_539(GLhandleARB obj, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_540(GLhandleARB obj, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_541(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source);
+GLint APIENTRY gl_dispatch_stub_542(GLhandleARB program, const GLcharARB *name);
+void APIENTRY gl_dispatch_stub_543(GLhandleARB program, GLint location, GLfloat *params);
+void APIENTRY gl_dispatch_stub_544(GLhandleARB program, GLint location, GLint *params);
+void APIENTRY gl_dispatch_stub_545(GLhandleARB program);
+void APIENTRY gl_dispatch_stub_546(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length);
+void APIENTRY gl_dispatch_stub_547(GLint location, GLfloat v0);
+void APIENTRY gl_dispatch_stub_548(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_549(GLint location, GLint v0);
+void APIENTRY gl_dispatch_stub_550(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_551(GLint location, GLfloat v0, GLfloat v1);
+void APIENTRY gl_dispatch_stub_552(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_553(GLint location, GLint v0, GLint v1);
+void APIENTRY gl_dispatch_stub_554(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_555(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+void APIENTRY gl_dispatch_stub_556(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_557(GLint location, GLint v0, GLint v1, GLint v2);
+void APIENTRY gl_dispatch_stub_558(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_559(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+void APIENTRY gl_dispatch_stub_560(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_561(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+void APIENTRY gl_dispatch_stub_562(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_563(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_564(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_565(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_566(GLhandleARB program);
+void APIENTRY gl_dispatch_stub_567(GLhandleARB program);
+void APIENTRY gl_dispatch_stub_568(GLhandleARB program, GLuint index, const GLcharARB *name);
+void APIENTRY gl_dispatch_stub_569(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+GLint APIENTRY gl_dispatch_stub_570(GLhandleARB program, const GLcharARB *name);
+void APIENTRY gl_dispatch_stub_571(GLsizei n, const GLenum *bufs);
+void APIENTRY gl_dispatch_stub_572(GLenum mode, GLint first, GLsizei count, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_573(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_574(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_575(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_576(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
+void APIENTRY gl_dispatch_stub_577(GLuint program, GLenum pname, GLint value);
+void APIENTRY gl_dispatch_stub_578(GLuint index, GLuint divisor);
+void APIENTRY gl_dispatch_stub_579(GLenum target, GLintptr offset, GLsizeiptr length);
+GLvoid * APIENTRY gl_dispatch_stub_580(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+void APIENTRY gl_dispatch_stub_581(GLuint array);
+void APIENTRY gl_dispatch_stub_582(GLsizei n, GLuint *arrays);
+void APIENTRY gl_dispatch_stub_583(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+GLenum APIENTRY gl_dispatch_stub_584(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY gl_dispatch_stub_585(GLsync sync);
+GLsync APIENTRY gl_dispatch_stub_586(GLenum condition, GLbitfield flags);
+void APIENTRY gl_dispatch_stub_587(GLenum pname, GLint64 *params);
+void APIENTRY gl_dispatch_stub_588(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+GLboolean APIENTRY gl_dispatch_stub_589(GLsync sync);
+void APIENTRY gl_dispatch_stub_590(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY gl_dispatch_stub_591(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY gl_dispatch_stub_592(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY gl_dispatch_stub_593(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex);
+void APIENTRY gl_dispatch_stub_594(GLuint buf, GLenum modeRGB, GLenum modeA);
+void APIENTRY gl_dispatch_stub_595(GLuint buf, GLenum mode);
+void APIENTRY gl_dispatch_stub_596(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA);
+void APIENTRY gl_dispatch_stub_597(GLuint buf, GLenum src, GLenum dst);
+void APIENTRY gl_dispatch_stub_598(GLenum target, GLuint id);
+void APIENTRY gl_dispatch_stub_599(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_600(GLenum mode, GLuint id);
+void APIENTRY gl_dispatch_stub_601(GLsizei n, GLuint *ids);
+GLboolean APIENTRY gl_dispatch_stub_602(GLuint id);
+void APIENTRY gl_dispatch_stub_603(void);
+void APIENTRY gl_dispatch_stub_604(void);
+GLAPI void APIENTRY glClearDepthf(GLclampf depth);
+GLAPI void APIENTRY glClearDepthfOES(GLclampf depth);
+GLAPI void APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar);
+GLAPI void APIENTRY glDepthRangefOES(GLclampf zNear, GLclampf zFar);
+void APIENTRY gl_dispatch_stub_607(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+void APIENTRY gl_dispatch_stub_608(void);
+void APIENTRY gl_dispatch_stub_609(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+void APIENTRY gl_dispatch_stub_610(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+void APIENTRY gl_dispatch_stub_611(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+void APIENTRY gl_dispatch_stub_612(GLuint program, GLenum pname, GLint value);
+void APIENTRY gl_dispatch_stub_613(GLfloat factor, GLfloat bias);
+GLAPI void APIENTRY glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
+GLAPI void APIENTRY glDrawTexfvOES(const GLfloat *coords);
+GLAPI void APIENTRY glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height);
+GLAPI void APIENTRY glDrawTexivOES(const GLint *coords);
+GLAPI void APIENTRY glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
+GLAPI void APIENTRY glDrawTexsvOES(const GLshort *coords);
+GLAPI void APIENTRY glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
+GLAPI void APIENTRY glDrawTexxvOES(const GLfixed *coords);
+GLAPI void APIENTRY glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_623(GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_624(GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_625(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_626(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_627(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_628(GLenum pname, const GLint *params);
+GLAPI GLbitfield APIENTRY glQueryMatrixxOES(GLfixed *mantissa, GLint *exponent);
+void APIENTRY gl_dispatch_stub_630(GLclampf value, GLboolean invert);
+void APIENTRY gl_dispatch_stub_631(GLenum pattern);
+void APIENTRY gl_dispatch_stub_632(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_633(GLsizei stride, GLsizei count, const GLboolean *pointer);
+void APIENTRY gl_dispatch_stub_634(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_635(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_636(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_637(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_638(GLenum pname, GLfloat param);
+GLAPI void APIENTRY glPointParameterf(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_639(GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glPointParameterfv(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_640(GLint first, GLsizei count);
+void APIENTRY gl_dispatch_stub_641(void);
+void APIENTRY gl_dispatch_stub_642(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY gl_dispatch_stub_643(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_644(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY gl_dispatch_stub_645(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_646(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY gl_dispatch_stub_647(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_648(GLint red, GLint green, GLint blue);
+void APIENTRY gl_dispatch_stub_649(const GLint *v);
+void APIENTRY gl_dispatch_stub_650(GLshort red, GLshort green, GLshort blue);
+void APIENTRY gl_dispatch_stub_651(const GLshort *v);
+void APIENTRY gl_dispatch_stub_652(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY gl_dispatch_stub_653(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_654(GLuint red, GLuint green, GLuint blue);
+void APIENTRY gl_dispatch_stub_655(const GLuint *v);
+void APIENTRY gl_dispatch_stub_656(GLushort red, GLushort green, GLushort blue);
+void APIENTRY gl_dispatch_stub_657(const GLushort *v);
+void APIENTRY gl_dispatch_stub_658(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
+GLAPI void APIENTRY glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_661(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_662(GLdouble coord);
+void APIENTRY gl_dispatch_stub_663(const GLdouble *coord);
+void APIENTRY gl_dispatch_stub_664(GLfloat coord);
+void APIENTRY gl_dispatch_stub_665(const GLfloat *coord);
+void APIENTRY gl_dispatch_stub_666(GLenum mode);
+void APIENTRY gl_dispatch_stub_667(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+GLAPI void APIENTRY glBlendFuncSeparateOES(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+void APIENTRY gl_dispatch_stub_668(void);
+void APIENTRY gl_dispatch_stub_669(GLsizei length, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_670(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY gl_dispatch_stub_671(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
+void APIENTRY gl_dispatch_stub_672(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_673(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_674(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_675(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_676(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY gl_dispatch_stub_677(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_678(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_679(GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_680(GLenum stage, GLenum portion, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_681(GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_682(GLenum variable, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_683(void);
+void APIENTRY gl_dispatch_stub_684(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_685(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_686(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_687(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_688(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_689(const GLint *v);
+void APIENTRY gl_dispatch_stub_690(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_691(const GLshort *v);
+void APIENTRY gl_dispatch_stub_692(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_693(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_694(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_695(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_696(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_697(const GLint *v);
+void APIENTRY gl_dispatch_stub_698(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_699(const GLshort *v);
+void APIENTRY gl_dispatch_stub_700(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_701(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_702(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_703(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_704(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_705(const GLint *v);
+void APIENTRY gl_dispatch_stub_706(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_707(const GLshort *v);
+void APIENTRY gl_dispatch_stub_708(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
+void APIENTRY gl_dispatch_stub_709(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride);
+void APIENTRY gl_dispatch_stub_710(GLsizei n, const GLuint *fences);
+void APIENTRY gl_dispatch_stub_711(GLuint fence);
+void APIENTRY gl_dispatch_stub_712(GLsizei n, GLuint *fences);
+void APIENTRY gl_dispatch_stub_713(GLuint fence, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_714(GLuint fence);
+void APIENTRY gl_dispatch_stub_715(GLuint fence, GLenum condition);
+GLboolean APIENTRY gl_dispatch_stub_716(GLuint fence);
+GLboolean APIENTRY gl_dispatch_stub_717(GLsizei n, const GLuint *ids, GLboolean *residences);
+void APIENTRY gl_dispatch_stub_718(GLenum target, GLuint program);
+void APIENTRY gl_dispatch_stub_719(GLsizei n, const GLuint *programs);
+void APIENTRY gl_dispatch_stub_720(GLenum target, GLuint id, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_721(GLsizei n, GLuint *programs);
+void APIENTRY gl_dispatch_stub_722(GLenum target, GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_723(GLenum target, GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_724(GLuint id, GLenum pname, GLubyte *program);
+void APIENTRY gl_dispatch_stub_725(GLuint id, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_726(GLenum target, GLuint address, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_727(GLuint index, GLenum pname, GLvoid **pointer);
+void APIENTRY gl_dispatch_stub_728(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_729(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_730(GLuint index, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_731(GLuint program);
+void APIENTRY gl_dispatch_stub_732(GLenum target, GLuint id, GLsizei len, const GLubyte *program);
+void APIENTRY gl_dispatch_stub_733(GLenum target, GLuint index, GLsizei num, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_734(GLenum target, GLuint index, GLsizei num, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_735(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_736(GLenum target, GLuint address, GLenum matrix, GLenum transform);
+void APIENTRY gl_dispatch_stub_737(GLuint index, GLdouble x);
+void APIENTRY gl_dispatch_stub_738(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_739(GLuint index, GLfloat x);
+void APIENTRY gl_dispatch_stub_740(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_741(GLuint index, GLshort x);
+void APIENTRY gl_dispatch_stub_742(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_743(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_744(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_745(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_746(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_747(GLuint index, GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_748(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_749(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_750(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_751(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_752(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_753(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_754(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_755(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_756(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_757(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_758(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_759(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_760(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_761(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY gl_dispatch_stub_762(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_763(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_764(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_765(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_766(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_767(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_768(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_769(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_770(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_771(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_772(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_773(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_774(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_775(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_776(GLuint index, GLsizei n, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_777(GLenum pname, GLfloat *param);
+void APIENTRY gl_dispatch_stub_778(GLenum pname, GLint *param);
+void APIENTRY gl_dispatch_stub_779(GLenum pname, const GLfloat *param);
+void APIENTRY gl_dispatch_stub_780(GLenum pname, const GLint *param);
+void APIENTRY gl_dispatch_stub_781(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY gl_dispatch_stub_782(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY gl_dispatch_stub_783(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY gl_dispatch_stub_784(void);
+void APIENTRY gl_dispatch_stub_785(GLuint id);
+void APIENTRY gl_dispatch_stub_786(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY gl_dispatch_stub_787(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY gl_dispatch_stub_788(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY gl_dispatch_stub_789(GLuint id);
+void APIENTRY gl_dispatch_stub_790(void);
+GLuint APIENTRY gl_dispatch_stub_791(GLuint range);
+void APIENTRY gl_dispatch_stub_792(GLuint dst, GLuint coord, GLenum swizzle);
+void APIENTRY gl_dispatch_stub_793(GLuint dst, GLuint interp, GLenum swizzle);
+void APIENTRY gl_dispatch_stub_794(GLuint dst, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_795(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_796(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_797(GLenum face);
+void APIENTRY gl_dispatch_stub_798(GLuint array);
+void APIENTRY gl_dispatch_stub_799(GLsizei n, const GLuint *arrays);
+void APIENTRY gl_dispatch_stub_800(GLsizei n, GLuint *arrays);
+GLboolean APIENTRY gl_dispatch_stub_801(GLuint array);
+void APIENTRY gl_dispatch_stub_802(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
+void APIENTRY gl_dispatch_stub_803(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
+void APIENTRY gl_dispatch_stub_804(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_805(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_806(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_807(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_808(GLuint index);
+void APIENTRY gl_dispatch_stub_809(void);
+GLAPI void APIENTRY glAlphaFuncxOES(GLenum func, GLclampx ref);
+GLAPI void APIENTRY glAlphaFuncx(GLenum func, GLclampx ref);
+GLAPI void APIENTRY glClearColorxOES(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
+GLAPI void APIENTRY glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
+GLAPI void APIENTRY glClearDepthxOES(GLclampx depth);
+GLAPI void APIENTRY glClearDepthx(GLclampx depth);
+GLAPI void APIENTRY glClipPlanexOES(GLenum plane, const GLfixed *equation);
+GLAPI void APIENTRY glClipPlanex(GLenum plane, const GLfixed *equation);
+GLAPI void APIENTRY glColor4xOES(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glDepthRangexOES(GLclampx zNear, GLclampx zFar);
+GLAPI void APIENTRY glDepthRangex(GLclampx zNear, GLclampx zFar);
+GLAPI void APIENTRY glFogxOES(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glFogx(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glFogxvOES(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glFogxv(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glFrustumxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+GLAPI void APIENTRY glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+GLAPI void APIENTRY glGetClipPlanexOES(GLenum plane, GLfixed *equation);
+GLAPI void APIENTRY glGetClipPlanex(GLenum plane, GLfixed *equation);
+GLAPI void APIENTRY glGetFixedvOES(GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetFixedv(GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetLightxvOES(GLenum light, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetLightxv(GLenum light, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetMaterialxvOES(GLenum face, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexEnvxvOES(GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexEnvxv(GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glLightModelxOES(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightModelx(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightModelxvOES(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glLightModelxv(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glLightxOES(GLenum light, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightx(GLenum light, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightxvOES(GLenum light, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glLightxv(GLenum light, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glLineWidthxOES(GLfixed width);
+GLAPI void APIENTRY glLineWidthx(GLfixed width);
+GLAPI void APIENTRY glLoadMatrixxOES(const GLfixed *m);
+GLAPI void APIENTRY glLoadMatrixx(const GLfixed *m);
+GLAPI void APIENTRY glMaterialxOES(GLenum face, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glMaterialx(GLenum face, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glMaterialxvOES(GLenum face, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glMaterialxv(GLenum face, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glMultMatrixxOES(const GLfixed *m);
+GLAPI void APIENTRY glMultMatrixx(const GLfixed *m);
+GLAPI void APIENTRY glMultiTexCoord4xOES(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+GLAPI void APIENTRY glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+GLAPI void APIENTRY glNormal3xOES(GLfixed nx, GLfixed ny, GLfixed nz);
+GLAPI void APIENTRY glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz);
+GLAPI void APIENTRY glOrthoxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+GLAPI void APIENTRY glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+GLAPI void APIENTRY glPointParameterxOES(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glPointParameterx(GLenum pname, GLfixed param);
+GLAPI void APIENTRY glPointParameterxvOES(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glPointParameterxv(GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glPointSizexOES(GLfixed size);
+GLAPI void APIENTRY glPointSizex(GLfixed size);
+GLAPI void APIENTRY glPolygonOffsetxOES(GLfixed factor, GLfixed units);
+GLAPI void APIENTRY glPolygonOffsetx(GLfixed factor, GLfixed units);
+GLAPI void APIENTRY glRotatexOES(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glSampleCoveragexOES(GLclampx value, GLboolean invert);
+GLAPI void APIENTRY glSampleCoveragex(GLclampx value, GLboolean invert);
+GLAPI void APIENTRY glScalexOES(GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glScalex(GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glTexEnvxOES(GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexEnvx(GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexEnvxvOES(GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexGenxOES(GLenum coord, GLenum pname, GLint param);
+GLAPI void APIENTRY glTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexParameterxOES(GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexParameterx(GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexParameterxvOES(GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTranslatexOES(GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glTranslatex(GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glClipPlanefOES(GLenum plane, const GLfloat *equation);
+GLAPI void APIENTRY glClipPlanef(GLenum plane, const GLfloat *equation);
+GLAPI void APIENTRY glFrustumfOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+GLAPI void APIENTRY glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+GLAPI void APIENTRY glGetClipPlanefOES(GLenum plane, GLfloat *equation);
+GLAPI void APIENTRY glGetClipPlanef(GLenum plane, GLfloat *equation);
+GLAPI void APIENTRY glOrthofOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+GLAPI void APIENTRY glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+void APIENTRY gl_dispatch_stub_856(GLclampd zmin, GLclampd zmax);
+void APIENTRY gl_dispatch_stub_857(GLenum modeRGB, GLenum modeA);
+GLAPI void APIENTRY glBlendEquationSeparateOES(GLenum modeRGB, GLenum modeA);
+void APIENTRY gl_dispatch_stub_858(GLenum target, GLuint framebuffer);
+GLAPI void APIENTRY glBindFramebufferOES(GLenum target, GLuint framebuffer);
+void APIENTRY gl_dispatch_stub_859(GLenum target, GLuint renderbuffer);
+GLAPI void APIENTRY glBindRenderbufferOES(GLenum target, GLuint renderbuffer);
+GLenum APIENTRY gl_dispatch_stub_860(GLenum target);
+GLAPI GLenum APIENTRY glCheckFramebufferStatusOES(GLenum target);
+void APIENTRY gl_dispatch_stub_861(GLsizei n, const GLuint *framebuffers);
+GLAPI void APIENTRY glDeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers);
+void APIENTRY gl_dispatch_stub_862(GLsizei n, const GLuint *renderbuffers);
+GLAPI void APIENTRY glDeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers);
+void APIENTRY gl_dispatch_stub_863(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GLAPI void APIENTRY glFramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+void APIENTRY gl_dispatch_stub_864(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_865(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GLAPI void APIENTRY glFramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_866(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+void APIENTRY gl_dispatch_stub_867(GLsizei n, GLuint *framebuffers);
+GLAPI void APIENTRY glGenFramebuffersOES(GLsizei n, GLuint *framebuffers);
+void APIENTRY gl_dispatch_stub_868(GLsizei n, GLuint *renderbuffers);
+GLAPI void APIENTRY glGenRenderbuffersOES(GLsizei n, GLuint *renderbuffers);
+void APIENTRY gl_dispatch_stub_869(GLenum target);
+GLAPI void APIENTRY glGenerateMipmapOES(GLenum target);
+void APIENTRY gl_dispatch_stub_870(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_871(GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_872(GLuint framebuffer);
+GLAPI GLboolean APIENTRY glIsFramebufferOES(GLuint framebuffer);
+GLboolean APIENTRY gl_dispatch_stub_873(GLuint renderbuffer);
+GLAPI GLboolean APIENTRY glIsRenderbufferOES(GLuint renderbuffer);
+void APIENTRY gl_dispatch_stub_874(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glRenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_875(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+void APIENTRY gl_dispatch_stub_876(GLenum target, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_877(GLenum target, GLintptr offset, GLsizeiptr size);
+void APIENTRY gl_dispatch_stub_878(GLuint program, GLuint colorNumber, const GLchar *name);
+GLint APIENTRY gl_dispatch_stub_879(GLuint program, const GLchar *name);
+void APIENTRY gl_dispatch_stub_880(GLuint program, GLint location, GLuint *params);
+void APIENTRY gl_dispatch_stub_881(GLuint index, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_882(GLuint index, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_883(GLint location, GLuint x);
+void APIENTRY gl_dispatch_stub_884(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_885(GLint location, GLuint x, GLuint y);
+void APIENTRY gl_dispatch_stub_886(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_887(GLint location, GLuint x, GLuint y, GLuint z);
+void APIENTRY gl_dispatch_stub_888(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_889(GLint location, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY gl_dispatch_stub_890(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_891(GLuint index, GLint x);
+void APIENTRY gl_dispatch_stub_892(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_893(GLuint index, GLuint x);
+void APIENTRY gl_dispatch_stub_894(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_895(GLuint index, GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_896(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_897(GLuint index, GLuint x, GLuint y);
+void APIENTRY gl_dispatch_stub_898(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_899(GLuint index, GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_900(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_901(GLuint index, GLuint x, GLuint y, GLuint z);
+void APIENTRY gl_dispatch_stub_902(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_903(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_904(GLuint index, GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_905(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_906(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_907(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_908(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY gl_dispatch_stub_909(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_910(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_911(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_912(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+void APIENTRY gl_dispatch_stub_913(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+void APIENTRY gl_dispatch_stub_914(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_915(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_916(GLenum value, GLuint index, GLboolean *data);
+void APIENTRY gl_dispatch_stub_917(GLenum value, GLuint index, GLint *data);
+GLboolean APIENTRY gl_dispatch_stub_918(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_919(GLint r, GLint g, GLint b, GLint a);
+void APIENTRY gl_dispatch_stub_920(GLuint r, GLuint g, GLuint b, GLuint a);
+void APIENTRY gl_dispatch_stub_921(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_922(GLenum target, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_923(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_924(GLenum target, GLenum pname, const GLuint *params);
+void APIENTRY gl_dispatch_stub_925(GLuint query, GLenum mode);
+void APIENTRY gl_dispatch_stub_926(void);
+void APIENTRY gl_dispatch_stub_927(GLenum mode);
+void APIENTRY gl_dispatch_stub_928(GLenum target, GLuint index, GLuint buffer);
+void APIENTRY gl_dispatch_stub_929(GLenum target, GLuint index, GLuint buffer, GLintptr offset);
+void APIENTRY gl_dispatch_stub_930(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+void APIENTRY gl_dispatch_stub_931(void);
+void APIENTRY gl_dispatch_stub_932(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+void APIENTRY gl_dispatch_stub_933(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode);
+void APIENTRY gl_dispatch_stub_934(GLenum mode);
+void APIENTRY gl_dispatch_stub_935(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY gl_dispatch_stub_936(GLenum target, GLsizei length, GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_937(GLenum objectType, GLuint name, GLenum pname, GLint *value);
+GLenum APIENTRY gl_dispatch_stub_938(GLenum objectType, GLuint name, GLenum option);
+GLenum APIENTRY gl_dispatch_stub_939(GLenum objectType, GLuint name, GLenum option);
+void APIENTRY gl_dispatch_stub_940(GLuint program);
+GLuint APIENTRY gl_dispatch_stub_941(GLenum type, const GLchar *string);
+void APIENTRY gl_dispatch_stub_942(GLenum type, GLuint program);
+void APIENTRY gl_dispatch_stub_943(void);
+void APIENTRY gl_dispatch_stub_944(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+void APIENTRY gl_dispatch_stub_945(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_946(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_947(GLuint id, GLenum pname, GLint64EXT *params);
+void APIENTRY gl_dispatch_stub_948(GLuint id, GLenum pname, GLuint64EXT *params);
+GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLvoid *writeOffset);
+GLAPI void APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLvoid *writeOffset);
+#undef MAPI_TMP_DEFINES
+#endif /* MAPI_TMP_DEFINES */
+
+#ifdef MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN
+GLAPI void APIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[29];
+ ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[35];
+ ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[56];
+ ((void (APIENTRY *)(GLfloat nx, GLfloat ny, GLfloat nz)) _func)(nx, ny, nz);
+}
+
+GLAPI void APIENTRY glCullFace(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[152];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glFogf(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[153];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glFogfv(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[154];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glFrontFace(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[157];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glHint(GLenum target, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[158];
+ ((void (APIENTRY *)(GLenum target, GLenum mode)) _func)(target, mode);
+}
+
+GLAPI void APIENTRY glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[159];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfloat param)) _func)(light, pname, param);
+}
+
+GLAPI void APIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[160];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLfloat *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glLightModelf(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[163];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[164];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glLineWidth(GLfloat width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[168];
+ ((void (APIENTRY *)(GLfloat width)) _func)(width);
+}
+
+GLAPI void APIENTRY glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[169];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfloat param)) _func)(face, pname, param);
+}
+
+GLAPI void APIENTRY glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[170];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLfloat *params)) _func)(face, pname, params);
+}
+
+GLAPI void APIENTRY glPointSize(GLfloat size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[173];
+ ((void (APIENTRY *)(GLfloat size)) _func)(size);
+}
+
+GLAPI void APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[176];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+GLAPI void APIENTRY glShadeModel(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[177];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[178];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[179];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[180];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[181];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[183];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+GLAPI void APIENTRY glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[184];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[185];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[186];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[187];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexGenfOES(GLenum coord, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[190];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfloat param)) _func)(coord, pname, param);
+}
+
+GLAPI void APIENTRY glTexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[191];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLfloat *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glTexGeniOES(GLenum coord, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[192];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint param)) _func)(coord, pname, param);
+}
+
+GLAPI void APIENTRY glTexGenivOES(GLenum coord, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[193];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLint *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glClear(GLbitfield mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[203];
+ ((void (APIENTRY *)(GLbitfield mask)) _func)(mask);
+}
+
+GLAPI void APIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[206];
+ ((void (APIENTRY *)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glClearStencil(GLint s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[207];
+ ((void (APIENTRY *)(GLint s)) _func)(s);
+}
+
+GLAPI void APIENTRY glStencilMask(GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[209];
+ ((void (APIENTRY *)(GLuint mask)) _func)(mask);
+}
+
+GLAPI void APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[210];
+ ((void (APIENTRY *)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glDepthMask(GLboolean flag)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[211];
+ ((void (APIENTRY *)(GLboolean flag)) _func)(flag);
+}
+
+GLAPI void APIENTRY glDisable(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[214];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glEnable(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[215];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glFinish(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[216];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glFlush(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[217];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glAlphaFunc(GLenum func, GLclampf ref)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[240];
+ ((void (APIENTRY *)(GLenum func, GLclampf ref)) _func)(func, ref);
+}
+
+GLAPI void APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[241];
+ ((void (APIENTRY *)(GLenum sfactor, GLenum dfactor)) _func)(sfactor, dfactor);
+}
+
+GLAPI void APIENTRY glLogicOp(GLenum opcode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[242];
+ ((void (APIENTRY *)(GLenum opcode)) _func)(opcode);
+}
+
+GLAPI void APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[243];
+ ((void (APIENTRY *)(GLenum func, GLint ref, GLuint mask)) _func)(func, ref, mask);
+}
+
+GLAPI void APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[244];
+ ((void (APIENTRY *)(GLenum fail, GLenum zfail, GLenum zpass)) _func)(fail, zfail, zpass);
+}
+
+GLAPI void APIENTRY glDepthFunc(GLenum func)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[245];
+ ((void (APIENTRY *)(GLenum func)) _func)(func);
+}
+
+GLAPI void APIENTRY glPixelStorei(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[250];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[256];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)) _func)(x, y, width, height, format, type, pixels);
+}
+
+GLAPI void APIENTRY glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[258];
+ ((void (APIENTRY *)(GLenum pname, GLboolean *params)) _func)(pname, params);
+}
+
+GLAPI GLenum APIENTRY glGetError(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[261];
+ return ((GLenum (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glGetFloatv(GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[262];
+ ((void (APIENTRY *)(GLenum pname, GLfloat *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glGetIntegerv(GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[263];
+ ((void (APIENTRY *)(GLenum pname, GLint *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[264];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfloat *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[269];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfloat *params)) _func)(face, pname, params);
+}
+
+GLAPI const GLubyte * APIENTRY glGetString(GLenum name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[275];
+ return ((const GLubyte * (APIENTRY *)(GLenum name)) _func)(name);
+}
+
+GLAPI void APIENTRY glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[276];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[277];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[279];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfloat *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[280];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[282];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[283];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsEnabled(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[286];
+ return ((GLboolean (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glLoadIdentity(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[290];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glLoadMatrixf(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[291];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glMatrixMode(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[293];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glMultMatrixf(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[294];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glPopMatrix(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[297];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glPushMatrix(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[298];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[300];
+ ((void (APIENTRY *)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)) _func)(angle, x, y, z);
+}
+
+GLAPI void APIENTRY glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[302];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[304];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[305];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+GLAPI void APIENTRY glBindTexture(GLenum target, GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[307];
+ ((void (APIENTRY *)(GLenum target, GLuint texture)) _func)(target, texture);
+}
+
+GLAPI void APIENTRY glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[308];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+GLAPI void APIENTRY glDisableClientState(GLenum array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[309];
+ ((void (APIENTRY *)(GLenum array)) _func)(array);
+}
+
+GLAPI void APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[310];
+ ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count)) _func)(mode, first, count);
+}
+
+GLAPI void APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[311];
+ ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)) _func)(mode, count, type, indices);
+}
+
+GLAPI void APIENTRY glEnableClientState(GLenum array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[313];
+ ((void (APIENTRY *)(GLenum array)) _func)(array);
+}
+
+GLAPI void APIENTRY glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[318];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+GLAPI void APIENTRY glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[319];
+ ((void (APIENTRY *)(GLfloat factor, GLfloat units)) _func)(factor, units);
+}
+
+GLAPI void APIENTRY glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[320];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+GLAPI void APIENTRY glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[321];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+GLAPI void APIENTRY glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[324];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)) _func)(target, level, internalformat, x, y, width, height, border);
+}
+
+GLAPI void APIENTRY glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[326];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+GLAPI void APIENTRY glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[327];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *textures)) _func)(n, textures);
+}
+
+GLAPI void APIENTRY glGenTextures(GLsizei n, GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[328];
+ ((void (APIENTRY *)(GLsizei n, GLuint *textures)) _func)(n, textures);
+}
+
+GLAPI void APIENTRY glGetPointerv(GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[329];
+ ((void (APIENTRY *)(GLenum pname, GLvoid **params)) _func)(pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsTexture(GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[330];
+ return ((GLboolean (APIENTRY *)(GLuint texture)) _func)(texture);
+}
+
+GLAPI void APIENTRY glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[333];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+GLAPI void APIENTRY glBlendEquationOES(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[337];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glActiveTexture(GLenum texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[374];
+ ((void (APIENTRY *)(GLenum texture)) _func)(texture);
+}
+
+GLAPI void APIENTRY glClientActiveTexture(GLenum texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[375];
+ ((void (APIENTRY *)(GLenum texture)) _func)(texture);
+}
+
+GLAPI void APIENTRY glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[402];
+ ((void (APIENTRY *)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)) _func)(target, s, t, r, q);
+}
+
+GLAPI void APIENTRY glSampleCoverage(GLclampf value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[445];
+ ((void (APIENTRY *)(GLclampf value, GLboolean invert)) _func)(value, invert);
+}
+
+GLAPI void APIENTRY glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[447];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+GLAPI void APIENTRY glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[450];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+GLAPI void APIENTRY glBindBuffer(GLenum target, GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[510];
+ ((void (APIENTRY *)(GLenum target, GLuint buffer)) _func)(target, buffer);
+}
+
+GLAPI void APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[511];
+ ((void (APIENTRY *)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)) _func)(target, size, data, usage);
+}
+
+GLAPI void APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[512];
+ ((void (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)) _func)(target, offset, size, data);
+}
+
+GLAPI void APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[513];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *buffer)) _func)(n, buffer);
+}
+
+GLAPI void APIENTRY glGenBuffers(GLsizei n, GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[514];
+ ((void (APIENTRY *)(GLsizei n, GLuint *buffer)) _func)(n, buffer);
+}
+
+GLAPI void APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[515];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[516];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLvoid **params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsBuffer(GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[518];
+ return ((GLboolean (APIENTRY *)(GLuint buffer)) _func)(buffer);
+}
+
+GLAPI GLvoid * APIENTRY glMapBufferOES(GLenum target, GLenum access)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[519];
+ return ((GLvoid * (APIENTRY *)(GLenum target, GLenum access)) _func)(target, access);
+}
+
+GLAPI GLboolean APIENTRY glUnmapBufferOES(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[520];
+ return ((GLboolean (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glClearDepthf(GLclampf depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[605];
+ ((void (APIENTRY *)(GLclampf depth)) _func)(depth);
+}
+
+GLAPI void APIENTRY glClearDepthfOES(GLclampf depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[605];
+ ((void (APIENTRY *)(GLclampf depth)) _func)(depth);
+}
+
+GLAPI void APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[606];
+ ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar);
+}
+
+GLAPI void APIENTRY glDepthRangefOES(GLclampf zNear, GLclampf zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[606];
+ ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar);
+}
+
+GLAPI void APIENTRY glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[614];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)) _func)(x, y, z, width, height);
+}
+
+GLAPI void APIENTRY glDrawTexfvOES(const GLfloat *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[615];
+ ((void (APIENTRY *)(const GLfloat *coords)) _func)(coords);
+}
+
+GLAPI void APIENTRY glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[616];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint width, GLint height)) _func)(x, y, z, width, height);
+}
+
+GLAPI void APIENTRY glDrawTexivOES(const GLint *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[617];
+ ((void (APIENTRY *)(const GLint *coords)) _func)(coords);
+}
+
+GLAPI void APIENTRY glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[618];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)) _func)(x, y, z, width, height);
+}
+
+GLAPI void APIENTRY glDrawTexsvOES(const GLshort *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[619];
+ ((void (APIENTRY *)(const GLshort *coords)) _func)(coords);
+}
+
+GLAPI void APIENTRY glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[620];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)) _func)(x, y, z, width, height);
+}
+
+GLAPI void APIENTRY glDrawTexxvOES(const GLfixed *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[621];
+ ((void (APIENTRY *)(const GLfixed *coords)) _func)(coords);
+}
+
+GLAPI void APIENTRY glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[622];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+GLAPI GLbitfield APIENTRY glQueryMatrixxOES(GLfixed *mantissa, GLint *exponent)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[629];
+ return ((GLbitfield (APIENTRY *)(GLfixed *mantissa, GLint *exponent)) _func)(mantissa, exponent);
+}
+
+GLAPI void APIENTRY glPointParameterf(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[638];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[639];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[659];
+ ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount);
+}
+
+GLAPI void APIENTRY glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[660];
+ ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount);
+}
+
+GLAPI void APIENTRY glBlendFuncSeparateOES(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[667];
+ ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+GLAPI void APIENTRY glAlphaFuncxOES(GLenum func, GLclampx ref)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[810];
+ ((void (APIENTRY *)(GLenum func, GLclampx ref)) _func)(func, ref);
+}
+
+GLAPI void APIENTRY glAlphaFuncx(GLenum func, GLclampx ref)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[810];
+ ((void (APIENTRY *)(GLenum func, GLclampx ref)) _func)(func, ref);
+}
+
+GLAPI void APIENTRY glClearColorxOES(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[811];
+ ((void (APIENTRY *)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[811];
+ ((void (APIENTRY *)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glClearDepthxOES(GLclampx depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[812];
+ ((void (APIENTRY *)(GLclampx depth)) _func)(depth);
+}
+
+GLAPI void APIENTRY glClearDepthx(GLclampx depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[812];
+ ((void (APIENTRY *)(GLclampx depth)) _func)(depth);
+}
+
+GLAPI void APIENTRY glClipPlanexOES(GLenum plane, const GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[813];
+ ((void (APIENTRY *)(GLenum plane, const GLfixed *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glClipPlanex(GLenum plane, const GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[813];
+ ((void (APIENTRY *)(GLenum plane, const GLfixed *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glColor4xOES(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[814];
+ ((void (APIENTRY *)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[814];
+ ((void (APIENTRY *)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glDepthRangexOES(GLclampx zNear, GLclampx zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[815];
+ ((void (APIENTRY *)(GLclampx zNear, GLclampx zFar)) _func)(zNear, zFar);
+}
+
+GLAPI void APIENTRY glDepthRangex(GLclampx zNear, GLclampx zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[815];
+ ((void (APIENTRY *)(GLclampx zNear, GLclampx zFar)) _func)(zNear, zFar);
+}
+
+GLAPI void APIENTRY glFogxOES(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[816];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glFogx(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[816];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glFogxvOES(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[817];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glFogxv(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[817];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glFrustumxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[818];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[818];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glGetClipPlanexOES(GLenum plane, GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[819];
+ ((void (APIENTRY *)(GLenum plane, GLfixed *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glGetClipPlanex(GLenum plane, GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[819];
+ ((void (APIENTRY *)(GLenum plane, GLfixed *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glGetFixedvOES(GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[820];
+ ((void (APIENTRY *)(GLenum pname, GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glGetFixedv(GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[820];
+ ((void (APIENTRY *)(GLenum pname, GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glGetLightxvOES(GLenum light, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[821];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[821];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glGetMaterialxvOES(GLenum face, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[822];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed *params)) _func)(face, pname, params);
+}
+
+GLAPI void APIENTRY glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[822];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed *params)) _func)(face, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexEnvxvOES(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[823];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexEnvxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[823];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[824];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfixed *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[825];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[825];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glLightModelxOES(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[826];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glLightModelx(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[826];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glLightModelxvOES(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[827];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glLightModelxv(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[827];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glLightxOES(GLenum light, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[828];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed param)) _func)(light, pname, param);
+}
+
+GLAPI void APIENTRY glLightx(GLenum light, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[828];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed param)) _func)(light, pname, param);
+}
+
+GLAPI void APIENTRY glLightxvOES(GLenum light, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[829];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLfixed *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glLightxv(GLenum light, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[829];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLfixed *params)) _func)(light, pname, params);
+}
+
+GLAPI void APIENTRY glLineWidthxOES(GLfixed width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[830];
+ ((void (APIENTRY *)(GLfixed width)) _func)(width);
+}
+
+GLAPI void APIENTRY glLineWidthx(GLfixed width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[830];
+ ((void (APIENTRY *)(GLfixed width)) _func)(width);
+}
+
+GLAPI void APIENTRY glLoadMatrixxOES(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[831];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glLoadMatrixx(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[831];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glMaterialxOES(GLenum face, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[832];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed param)) _func)(face, pname, param);
+}
+
+GLAPI void APIENTRY glMaterialx(GLenum face, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[832];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed param)) _func)(face, pname, param);
+}
+
+GLAPI void APIENTRY glMaterialxvOES(GLenum face, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[833];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLfixed *params)) _func)(face, pname, params);
+}
+
+GLAPI void APIENTRY glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[833];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLfixed *params)) _func)(face, pname, params);
+}
+
+GLAPI void APIENTRY glMultMatrixxOES(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[834];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glMultMatrixx(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[834];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+GLAPI void APIENTRY glMultiTexCoord4xOES(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[835];
+ ((void (APIENTRY *)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)) _func)(target, s, t, r, q);
+}
+
+GLAPI void APIENTRY glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[835];
+ ((void (APIENTRY *)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)) _func)(target, s, t, r, q);
+}
+
+GLAPI void APIENTRY glNormal3xOES(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[836];
+ ((void (APIENTRY *)(GLfixed nx, GLfixed ny, GLfixed nz)) _func)(nx, ny, nz);
+}
+
+GLAPI void APIENTRY glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[836];
+ ((void (APIENTRY *)(GLfixed nx, GLfixed ny, GLfixed nz)) _func)(nx, ny, nz);
+}
+
+GLAPI void APIENTRY glOrthoxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[837];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[837];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glPointParameterxOES(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[838];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glPointParameterx(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[838];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glPointParameterxvOES(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[839];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glPointParameterxv(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[839];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glPointSizexOES(GLfixed size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[840];
+ ((void (APIENTRY *)(GLfixed size)) _func)(size);
+}
+
+GLAPI void APIENTRY glPointSizex(GLfixed size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[840];
+ ((void (APIENTRY *)(GLfixed size)) _func)(size);
+}
+
+GLAPI void APIENTRY glPolygonOffsetxOES(GLfixed factor, GLfixed units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[841];
+ ((void (APIENTRY *)(GLfixed factor, GLfixed units)) _func)(factor, units);
+}
+
+GLAPI void APIENTRY glPolygonOffsetx(GLfixed factor, GLfixed units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[841];
+ ((void (APIENTRY *)(GLfixed factor, GLfixed units)) _func)(factor, units);
+}
+
+GLAPI void APIENTRY glRotatexOES(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[842];
+ ((void (APIENTRY *)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)) _func)(angle, x, y, z);
+}
+
+GLAPI void APIENTRY glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[842];
+ ((void (APIENTRY *)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)) _func)(angle, x, y, z);
+}
+
+GLAPI void APIENTRY glSampleCoveragexOES(GLclampx value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[843];
+ ((void (APIENTRY *)(GLclampx value, GLboolean invert)) _func)(value, invert);
+}
+
+GLAPI void APIENTRY glSampleCoveragex(GLclampx value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[843];
+ ((void (APIENTRY *)(GLclampx value, GLboolean invert)) _func)(value, invert);
+}
+
+GLAPI void APIENTRY glScalexOES(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[844];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glScalex(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[844];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glTexEnvxOES(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[845];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexEnvx(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[845];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexEnvxvOES(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[846];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[846];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexGenxOES(GLenum coord, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[847];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint param)) _func)(coord, pname, param);
+}
+
+GLAPI void APIENTRY glTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[848];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLfixed *params)) _func)(coord, pname, params);
+}
+
+GLAPI void APIENTRY glTexParameterxOES(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[849];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameterx(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[849];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameterxvOES(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[850];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[850];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTranslatexOES(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[851];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glTranslatex(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[851];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+GLAPI void APIENTRY glClipPlanefOES(GLenum plane, const GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[852];
+ ((void (APIENTRY *)(GLenum plane, const GLfloat *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glClipPlanef(GLenum plane, const GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[852];
+ ((void (APIENTRY *)(GLenum plane, const GLfloat *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glFrustumfOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[853];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[853];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glGetClipPlanefOES(GLenum plane, GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[854];
+ ((void (APIENTRY *)(GLenum plane, GLfloat *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glGetClipPlanef(GLenum plane, GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[854];
+ ((void (APIENTRY *)(GLenum plane, GLfloat *equation)) _func)(plane, equation);
+}
+
+GLAPI void APIENTRY glOrthofOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[855];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[855];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+GLAPI void APIENTRY glBlendEquationSeparateOES(GLenum modeRGB, GLenum modeA)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[857];
+ ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA);
+}
+
+GLAPI void APIENTRY glBindFramebufferOES(GLenum target, GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[858];
+ ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer);
+}
+
+GLAPI void APIENTRY glBindRenderbufferOES(GLenum target, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[859];
+ ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer);
+}
+
+GLAPI GLenum APIENTRY glCheckFramebufferStatusOES(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[860];
+ return ((GLenum (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glDeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[861];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+GLAPI void APIENTRY glDeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[862];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+GLAPI void APIENTRY glFramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[863];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+GLAPI void APIENTRY glFramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[865];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level);
+}
+
+GLAPI void APIENTRY glGenFramebuffersOES(GLsizei n, GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[867];
+ ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+GLAPI void APIENTRY glGenRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[868];
+ ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+GLAPI void APIENTRY glGenerateMipmapOES(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[869];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[870];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params);
+}
+
+GLAPI void APIENTRY glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[871];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsFramebufferOES(GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[872];
+ return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer);
+}
+
+GLAPI GLboolean APIENTRY glIsRenderbufferOES(GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[873];
+ return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer);
+}
+
+GLAPI void APIENTRY glRenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[874];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height);
+}
+
+GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[949];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+GLAPI void APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[950];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+/* does not need public_entries */
+#undef MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN
+#endif /* MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN */
+
+#ifdef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN
+__asm__(
+STUB_ASM_ENTRY("glColor4f")"\n"
+"\t"STUB_ASM_CODE("29")"\n"
+
+STUB_ASM_ENTRY("glColor4ub")"\n"
+"\t"STUB_ASM_CODE("35")"\n"
+
+STUB_ASM_ENTRY("glNormal3f")"\n"
+"\t"STUB_ASM_CODE("56")"\n"
+
+STUB_ASM_ENTRY("glCullFace")"\n"
+"\t"STUB_ASM_CODE("152")"\n"
+
+STUB_ASM_ENTRY("glFogf")"\n"
+"\t"STUB_ASM_CODE("153")"\n"
+
+STUB_ASM_ENTRY("glFogfv")"\n"
+"\t"STUB_ASM_CODE("154")"\n"
+
+STUB_ASM_ENTRY("glFrontFace")"\n"
+"\t"STUB_ASM_CODE("157")"\n"
+
+STUB_ASM_ENTRY("glHint")"\n"
+"\t"STUB_ASM_CODE("158")"\n"
+
+STUB_ASM_ENTRY("glLightf")"\n"
+"\t"STUB_ASM_CODE("159")"\n"
+
+STUB_ASM_ENTRY("glLightfv")"\n"
+"\t"STUB_ASM_CODE("160")"\n"
+
+STUB_ASM_ENTRY("glLightModelf")"\n"
+"\t"STUB_ASM_CODE("163")"\n"
+
+STUB_ASM_ENTRY("glLightModelfv")"\n"
+"\t"STUB_ASM_CODE("164")"\n"
+
+STUB_ASM_ENTRY("glLineWidth")"\n"
+"\t"STUB_ASM_CODE("168")"\n"
+
+STUB_ASM_ENTRY("glMaterialf")"\n"
+"\t"STUB_ASM_CODE("169")"\n"
+
+STUB_ASM_ENTRY("glMaterialfv")"\n"
+"\t"STUB_ASM_CODE("170")"\n"
+
+STUB_ASM_ENTRY("glPointSize")"\n"
+"\t"STUB_ASM_CODE("173")"\n"
+
+STUB_ASM_ENTRY("glScissor")"\n"
+"\t"STUB_ASM_CODE("176")"\n"
+
+STUB_ASM_ENTRY("glShadeModel")"\n"
+"\t"STUB_ASM_CODE("177")"\n"
+
+STUB_ASM_ENTRY("glTexParameterf")"\n"
+"\t"STUB_ASM_CODE("178")"\n"
+
+STUB_ASM_ENTRY("glTexParameterfv")"\n"
+"\t"STUB_ASM_CODE("179")"\n"
+
+STUB_ASM_ENTRY("glTexParameteri")"\n"
+"\t"STUB_ASM_CODE("180")"\n"
+
+STUB_ASM_ENTRY("glTexParameteriv")"\n"
+"\t"STUB_ASM_CODE("181")"\n"
+
+STUB_ASM_ENTRY("glTexImage2D")"\n"
+"\t"STUB_ASM_CODE("183")"\n"
+
+STUB_ASM_ENTRY("glTexEnvf")"\n"
+"\t"STUB_ASM_CODE("184")"\n"
+
+STUB_ASM_ENTRY("glTexEnvfv")"\n"
+"\t"STUB_ASM_CODE("185")"\n"
+
+STUB_ASM_ENTRY("glTexEnvi")"\n"
+"\t"STUB_ASM_CODE("186")"\n"
+
+STUB_ASM_ENTRY("glTexEnviv")"\n"
+"\t"STUB_ASM_CODE("187")"\n"
+
+STUB_ASM_ENTRY("glTexGenfOES")"\n"
+"\t"STUB_ASM_CODE("190")"\n"
+
+STUB_ASM_ENTRY("glTexGenfvOES")"\n"
+"\t"STUB_ASM_CODE("191")"\n"
+
+STUB_ASM_ENTRY("glTexGeniOES")"\n"
+"\t"STUB_ASM_CODE("192")"\n"
+
+STUB_ASM_ENTRY("glTexGenivOES")"\n"
+"\t"STUB_ASM_CODE("193")"\n"
+
+STUB_ASM_ENTRY("glClear")"\n"
+"\t"STUB_ASM_CODE("203")"\n"
+
+STUB_ASM_ENTRY("glClearColor")"\n"
+"\t"STUB_ASM_CODE("206")"\n"
+
+STUB_ASM_ENTRY("glClearStencil")"\n"
+"\t"STUB_ASM_CODE("207")"\n"
+
+STUB_ASM_ENTRY("glStencilMask")"\n"
+"\t"STUB_ASM_CODE("209")"\n"
+
+STUB_ASM_ENTRY("glColorMask")"\n"
+"\t"STUB_ASM_CODE("210")"\n"
+
+STUB_ASM_ENTRY("glDepthMask")"\n"
+"\t"STUB_ASM_CODE("211")"\n"
+
+STUB_ASM_ENTRY("glDisable")"\n"
+"\t"STUB_ASM_CODE("214")"\n"
+
+STUB_ASM_ENTRY("glEnable")"\n"
+"\t"STUB_ASM_CODE("215")"\n"
+
+STUB_ASM_ENTRY("glFinish")"\n"
+"\t"STUB_ASM_CODE("216")"\n"
+
+STUB_ASM_ENTRY("glFlush")"\n"
+"\t"STUB_ASM_CODE("217")"\n"
+
+STUB_ASM_ENTRY("glAlphaFunc")"\n"
+"\t"STUB_ASM_CODE("240")"\n"
+
+STUB_ASM_ENTRY("glBlendFunc")"\n"
+"\t"STUB_ASM_CODE("241")"\n"
+
+STUB_ASM_ENTRY("glLogicOp")"\n"
+"\t"STUB_ASM_CODE("242")"\n"
+
+STUB_ASM_ENTRY("glStencilFunc")"\n"
+"\t"STUB_ASM_CODE("243")"\n"
+
+STUB_ASM_ENTRY("glStencilOp")"\n"
+"\t"STUB_ASM_CODE("244")"\n"
+
+STUB_ASM_ENTRY("glDepthFunc")"\n"
+"\t"STUB_ASM_CODE("245")"\n"
+
+STUB_ASM_ENTRY("glPixelStorei")"\n"
+"\t"STUB_ASM_CODE("250")"\n"
+
+STUB_ASM_ENTRY("glReadPixels")"\n"
+"\t"STUB_ASM_CODE("256")"\n"
+
+STUB_ASM_ENTRY("glGetBooleanv")"\n"
+"\t"STUB_ASM_CODE("258")"\n"
+
+STUB_ASM_ENTRY("glGetError")"\n"
+"\t"STUB_ASM_CODE("261")"\n"
+
+STUB_ASM_ENTRY("glGetFloatv")"\n"
+"\t"STUB_ASM_CODE("262")"\n"
+
+STUB_ASM_ENTRY("glGetIntegerv")"\n"
+"\t"STUB_ASM_CODE("263")"\n"
+
+STUB_ASM_ENTRY("glGetLightfv")"\n"
+"\t"STUB_ASM_CODE("264")"\n"
+
+STUB_ASM_ENTRY("glGetMaterialfv")"\n"
+"\t"STUB_ASM_CODE("269")"\n"
+
+STUB_ASM_ENTRY("glGetString")"\n"
+"\t"STUB_ASM_CODE("275")"\n"
+
+STUB_ASM_ENTRY("glGetTexEnvfv")"\n"
+"\t"STUB_ASM_CODE("276")"\n"
+
+STUB_ASM_ENTRY("glGetTexEnviv")"\n"
+"\t"STUB_ASM_CODE("277")"\n"
+
+STUB_ASM_ENTRY("glGetTexGenfvOES")"\n"
+"\t"STUB_ASM_CODE("279")"\n"
+
+STUB_ASM_ENTRY("glGetTexGenivOES")"\n"
+"\t"STUB_ASM_CODE("280")"\n"
+
+STUB_ASM_ENTRY("glGetTexParameterfv")"\n"
+"\t"STUB_ASM_CODE("282")"\n"
+
+STUB_ASM_ENTRY("glGetTexParameteriv")"\n"
+"\t"STUB_ASM_CODE("283")"\n"
+
+STUB_ASM_ENTRY("glIsEnabled")"\n"
+"\t"STUB_ASM_CODE("286")"\n"
+
+STUB_ASM_ENTRY("glLoadIdentity")"\n"
+"\t"STUB_ASM_CODE("290")"\n"
+
+STUB_ASM_ENTRY("glLoadMatrixf")"\n"
+"\t"STUB_ASM_CODE("291")"\n"
+
+STUB_ASM_ENTRY("glMatrixMode")"\n"
+"\t"STUB_ASM_CODE("293")"\n"
+
+STUB_ASM_ENTRY("glMultMatrixf")"\n"
+"\t"STUB_ASM_CODE("294")"\n"
+
+STUB_ASM_ENTRY("glPopMatrix")"\n"
+"\t"STUB_ASM_CODE("297")"\n"
+
+STUB_ASM_ENTRY("glPushMatrix")"\n"
+"\t"STUB_ASM_CODE("298")"\n"
+
+STUB_ASM_ENTRY("glRotatef")"\n"
+"\t"STUB_ASM_CODE("300")"\n"
+
+STUB_ASM_ENTRY("glScalef")"\n"
+"\t"STUB_ASM_CODE("302")"\n"
+
+STUB_ASM_ENTRY("glTranslatef")"\n"
+"\t"STUB_ASM_CODE("304")"\n"
+
+STUB_ASM_ENTRY("glViewport")"\n"
+"\t"STUB_ASM_CODE("305")"\n"
+
+STUB_ASM_ENTRY("glBindTexture")"\n"
+"\t"STUB_ASM_CODE("307")"\n"
+
+STUB_ASM_ENTRY("glColorPointer")"\n"
+"\t"STUB_ASM_CODE("308")"\n"
+
+STUB_ASM_ENTRY("glDisableClientState")"\n"
+"\t"STUB_ASM_CODE("309")"\n"
+
+STUB_ASM_ENTRY("glDrawArrays")"\n"
+"\t"STUB_ASM_CODE("310")"\n"
+
+STUB_ASM_ENTRY("glDrawElements")"\n"
+"\t"STUB_ASM_CODE("311")"\n"
+
+STUB_ASM_ENTRY("glEnableClientState")"\n"
+"\t"STUB_ASM_CODE("313")"\n"
+
+STUB_ASM_ENTRY("glNormalPointer")"\n"
+"\t"STUB_ASM_CODE("318")"\n"
+
+STUB_ASM_ENTRY("glPolygonOffset")"\n"
+"\t"STUB_ASM_CODE("319")"\n"
+
+STUB_ASM_ENTRY("glTexCoordPointer")"\n"
+"\t"STUB_ASM_CODE("320")"\n"
+
+STUB_ASM_ENTRY("glVertexPointer")"\n"
+"\t"STUB_ASM_CODE("321")"\n"
+
+STUB_ASM_ENTRY("glCopyTexImage2D")"\n"
+"\t"STUB_ASM_CODE("324")"\n"
+
+STUB_ASM_ENTRY("glCopyTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("326")"\n"
+
+STUB_ASM_ENTRY("glDeleteTextures")"\n"
+"\t"STUB_ASM_CODE("327")"\n"
+
+STUB_ASM_ENTRY("glGenTextures")"\n"
+"\t"STUB_ASM_CODE("328")"\n"
+
+STUB_ASM_ENTRY("glGetPointerv")"\n"
+"\t"STUB_ASM_CODE("329")"\n"
+
+STUB_ASM_ENTRY("glIsTexture")"\n"
+"\t"STUB_ASM_CODE("330")"\n"
+
+STUB_ASM_ENTRY("glTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("333")"\n"
+
+STUB_ASM_ENTRY("glBlendEquationOES")"\n"
+"\t"STUB_ASM_CODE("337")"\n"
+
+STUB_ASM_ENTRY("glActiveTexture")"\n"
+"\t"STUB_ASM_CODE("374")"\n"
+
+STUB_ASM_ENTRY("glClientActiveTexture")"\n"
+"\t"STUB_ASM_CODE("375")"\n"
+
+STUB_ASM_ENTRY("glMultiTexCoord4f")"\n"
+"\t"STUB_ASM_CODE("402")"\n"
+
+STUB_ASM_ENTRY("glSampleCoverage")"\n"
+"\t"STUB_ASM_CODE("445")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexImage2D")"\n"
+"\t"STUB_ASM_CODE("447")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("450")"\n"
+
+STUB_ASM_ENTRY("glBindBuffer")"\n"
+"\t"STUB_ASM_CODE("510")"\n"
+
+STUB_ASM_ENTRY("glBufferData")"\n"
+"\t"STUB_ASM_CODE("511")"\n"
+
+STUB_ASM_ENTRY("glBufferSubData")"\n"
+"\t"STUB_ASM_CODE("512")"\n"
+
+STUB_ASM_ENTRY("glDeleteBuffers")"\n"
+"\t"STUB_ASM_CODE("513")"\n"
+
+STUB_ASM_ENTRY("glGenBuffers")"\n"
+"\t"STUB_ASM_CODE("514")"\n"
+
+STUB_ASM_ENTRY("glGetBufferParameteriv")"\n"
+"\t"STUB_ASM_CODE("515")"\n"
+
+STUB_ASM_ENTRY("glGetBufferPointervOES")"\n"
+"\t"STUB_ASM_CODE("516")"\n"
+
+STUB_ASM_ENTRY("glIsBuffer")"\n"
+"\t"STUB_ASM_CODE("518")"\n"
+
+STUB_ASM_ENTRY("glMapBufferOES")"\n"
+"\t"STUB_ASM_CODE("519")"\n"
+
+STUB_ASM_ENTRY("glUnmapBufferOES")"\n"
+"\t"STUB_ASM_CODE("520")"\n"
+
+STUB_ASM_ENTRY("glClearDepthf")"\n"
+"\t"STUB_ASM_CODE("605")"\n"
+
+".globl ""glClearDepthfOES""\n"
+".set ""glClearDepthfOES"", ""glClearDepthf""\n"
+
+STUB_ASM_ENTRY("glDepthRangef")"\n"
+"\t"STUB_ASM_CODE("606")"\n"
+
+".globl ""glDepthRangefOES""\n"
+".set ""glDepthRangefOES"", ""glDepthRangef""\n"
+
+STUB_ASM_ENTRY("glDrawTexfOES")"\n"
+"\t"STUB_ASM_CODE("614")"\n"
+
+STUB_ASM_ENTRY("glDrawTexfvOES")"\n"
+"\t"STUB_ASM_CODE("615")"\n"
+
+STUB_ASM_ENTRY("glDrawTexiOES")"\n"
+"\t"STUB_ASM_CODE("616")"\n"
+
+STUB_ASM_ENTRY("glDrawTexivOES")"\n"
+"\t"STUB_ASM_CODE("617")"\n"
+
+STUB_ASM_ENTRY("glDrawTexsOES")"\n"
+"\t"STUB_ASM_CODE("618")"\n"
+
+STUB_ASM_ENTRY("glDrawTexsvOES")"\n"
+"\t"STUB_ASM_CODE("619")"\n"
+
+STUB_ASM_ENTRY("glDrawTexxOES")"\n"
+"\t"STUB_ASM_CODE("620")"\n"
+
+STUB_ASM_ENTRY("glDrawTexxvOES")"\n"
+"\t"STUB_ASM_CODE("621")"\n"
+
+STUB_ASM_ENTRY("glPointSizePointerOES")"\n"
+"\t"STUB_ASM_CODE("622")"\n"
+
+STUB_ASM_ENTRY("glQueryMatrixxOES")"\n"
+"\t"STUB_ASM_CODE("629")"\n"
+
+STUB_ASM_ENTRY("glPointParameterf")"\n"
+"\t"STUB_ASM_CODE("638")"\n"
+
+STUB_ASM_ENTRY("glPointParameterfv")"\n"
+"\t"STUB_ASM_CODE("639")"\n"
+
+STUB_ASM_ENTRY("glMultiDrawArraysEXT")"\n"
+"\t"STUB_ASM_CODE("659")"\n"
+
+STUB_ASM_ENTRY("glMultiDrawElementsEXT")"\n"
+"\t"STUB_ASM_CODE("660")"\n"
+
+STUB_ASM_ENTRY("glBlendFuncSeparateOES")"\n"
+"\t"STUB_ASM_CODE("667")"\n"
+
+STUB_ASM_ENTRY("glAlphaFuncxOES")"\n"
+"\t"STUB_ASM_CODE("810")"\n"
+
+".globl ""glAlphaFuncx""\n"
+".set ""glAlphaFuncx"", ""glAlphaFuncxOES""\n"
+
+STUB_ASM_ENTRY("glClearColorxOES")"\n"
+"\t"STUB_ASM_CODE("811")"\n"
+
+".globl ""glClearColorx""\n"
+".set ""glClearColorx"", ""glClearColorxOES""\n"
+
+STUB_ASM_ENTRY("glClearDepthxOES")"\n"
+"\t"STUB_ASM_CODE("812")"\n"
+
+".globl ""glClearDepthx""\n"
+".set ""glClearDepthx"", ""glClearDepthxOES""\n"
+
+STUB_ASM_ENTRY("glClipPlanexOES")"\n"
+"\t"STUB_ASM_CODE("813")"\n"
+
+".globl ""glClipPlanex""\n"
+".set ""glClipPlanex"", ""glClipPlanexOES""\n"
+
+STUB_ASM_ENTRY("glColor4xOES")"\n"
+"\t"STUB_ASM_CODE("814")"\n"
+
+".globl ""glColor4x""\n"
+".set ""glColor4x"", ""glColor4xOES""\n"
+
+STUB_ASM_ENTRY("glDepthRangexOES")"\n"
+"\t"STUB_ASM_CODE("815")"\n"
+
+".globl ""glDepthRangex""\n"
+".set ""glDepthRangex"", ""glDepthRangexOES""\n"
+
+STUB_ASM_ENTRY("glFogxOES")"\n"
+"\t"STUB_ASM_CODE("816")"\n"
+
+".globl ""glFogx""\n"
+".set ""glFogx"", ""glFogxOES""\n"
+
+STUB_ASM_ENTRY("glFogxvOES")"\n"
+"\t"STUB_ASM_CODE("817")"\n"
+
+".globl ""glFogxv""\n"
+".set ""glFogxv"", ""glFogxvOES""\n"
+
+STUB_ASM_ENTRY("glFrustumxOES")"\n"
+"\t"STUB_ASM_CODE("818")"\n"
+
+".globl ""glFrustumx""\n"
+".set ""glFrustumx"", ""glFrustumxOES""\n"
+
+STUB_ASM_ENTRY("glGetClipPlanexOES")"\n"
+"\t"STUB_ASM_CODE("819")"\n"
+
+".globl ""glGetClipPlanex""\n"
+".set ""glGetClipPlanex"", ""glGetClipPlanexOES""\n"
+
+STUB_ASM_ENTRY("glGetFixedvOES")"\n"
+"\t"STUB_ASM_CODE("820")"\n"
+
+".globl ""glGetFixedv""\n"
+".set ""glGetFixedv"", ""glGetFixedvOES""\n"
+
+STUB_ASM_ENTRY("glGetLightxvOES")"\n"
+"\t"STUB_ASM_CODE("821")"\n"
+
+".globl ""glGetLightxv""\n"
+".set ""glGetLightxv"", ""glGetLightxvOES""\n"
+
+STUB_ASM_ENTRY("glGetMaterialxvOES")"\n"
+"\t"STUB_ASM_CODE("822")"\n"
+
+".globl ""glGetMaterialxv""\n"
+".set ""glGetMaterialxv"", ""glGetMaterialxvOES""\n"
+
+STUB_ASM_ENTRY("glGetTexEnvxvOES")"\n"
+"\t"STUB_ASM_CODE("823")"\n"
+
+".globl ""glGetTexEnvxv""\n"
+".set ""glGetTexEnvxv"", ""glGetTexEnvxvOES""\n"
+
+STUB_ASM_ENTRY("glGetTexGenxvOES")"\n"
+"\t"STUB_ASM_CODE("824")"\n"
+
+STUB_ASM_ENTRY("glGetTexParameterxvOES")"\n"
+"\t"STUB_ASM_CODE("825")"\n"
+
+".globl ""glGetTexParameterxv""\n"
+".set ""glGetTexParameterxv"", ""glGetTexParameterxvOES""\n"
+
+STUB_ASM_ENTRY("glLightModelxOES")"\n"
+"\t"STUB_ASM_CODE("826")"\n"
+
+".globl ""glLightModelx""\n"
+".set ""glLightModelx"", ""glLightModelxOES""\n"
+
+STUB_ASM_ENTRY("glLightModelxvOES")"\n"
+"\t"STUB_ASM_CODE("827")"\n"
+
+".globl ""glLightModelxv""\n"
+".set ""glLightModelxv"", ""glLightModelxvOES""\n"
+
+STUB_ASM_ENTRY("glLightxOES")"\n"
+"\t"STUB_ASM_CODE("828")"\n"
+
+".globl ""glLightx""\n"
+".set ""glLightx"", ""glLightxOES""\n"
+
+STUB_ASM_ENTRY("glLightxvOES")"\n"
+"\t"STUB_ASM_CODE("829")"\n"
+
+".globl ""glLightxv""\n"
+".set ""glLightxv"", ""glLightxvOES""\n"
+
+STUB_ASM_ENTRY("glLineWidthxOES")"\n"
+"\t"STUB_ASM_CODE("830")"\n"
+
+".globl ""glLineWidthx""\n"
+".set ""glLineWidthx"", ""glLineWidthxOES""\n"
+
+STUB_ASM_ENTRY("glLoadMatrixxOES")"\n"
+"\t"STUB_ASM_CODE("831")"\n"
+
+".globl ""glLoadMatrixx""\n"
+".set ""glLoadMatrixx"", ""glLoadMatrixxOES""\n"
+
+STUB_ASM_ENTRY("glMaterialxOES")"\n"
+"\t"STUB_ASM_CODE("832")"\n"
+
+".globl ""glMaterialx""\n"
+".set ""glMaterialx"", ""glMaterialxOES""\n"
+
+STUB_ASM_ENTRY("glMaterialxvOES")"\n"
+"\t"STUB_ASM_CODE("833")"\n"
+
+".globl ""glMaterialxv""\n"
+".set ""glMaterialxv"", ""glMaterialxvOES""\n"
+
+STUB_ASM_ENTRY("glMultMatrixxOES")"\n"
+"\t"STUB_ASM_CODE("834")"\n"
+
+".globl ""glMultMatrixx""\n"
+".set ""glMultMatrixx"", ""glMultMatrixxOES""\n"
+
+STUB_ASM_ENTRY("glMultiTexCoord4xOES")"\n"
+"\t"STUB_ASM_CODE("835")"\n"
+
+".globl ""glMultiTexCoord4x""\n"
+".set ""glMultiTexCoord4x"", ""glMultiTexCoord4xOES""\n"
+
+STUB_ASM_ENTRY("glNormal3xOES")"\n"
+"\t"STUB_ASM_CODE("836")"\n"
+
+".globl ""glNormal3x""\n"
+".set ""glNormal3x"", ""glNormal3xOES""\n"
+
+STUB_ASM_ENTRY("glOrthoxOES")"\n"
+"\t"STUB_ASM_CODE("837")"\n"
+
+".globl ""glOrthox""\n"
+".set ""glOrthox"", ""glOrthoxOES""\n"
+
+STUB_ASM_ENTRY("glPointParameterxOES")"\n"
+"\t"STUB_ASM_CODE("838")"\n"
+
+".globl ""glPointParameterx""\n"
+".set ""glPointParameterx"", ""glPointParameterxOES""\n"
+
+STUB_ASM_ENTRY("glPointParameterxvOES")"\n"
+"\t"STUB_ASM_CODE("839")"\n"
+
+".globl ""glPointParameterxv""\n"
+".set ""glPointParameterxv"", ""glPointParameterxvOES""\n"
+
+STUB_ASM_ENTRY("glPointSizexOES")"\n"
+"\t"STUB_ASM_CODE("840")"\n"
+
+".globl ""glPointSizex""\n"
+".set ""glPointSizex"", ""glPointSizexOES""\n"
+
+STUB_ASM_ENTRY("glPolygonOffsetxOES")"\n"
+"\t"STUB_ASM_CODE("841")"\n"
+
+".globl ""glPolygonOffsetx""\n"
+".set ""glPolygonOffsetx"", ""glPolygonOffsetxOES""\n"
+
+STUB_ASM_ENTRY("glRotatexOES")"\n"
+"\t"STUB_ASM_CODE("842")"\n"
+
+".globl ""glRotatex""\n"
+".set ""glRotatex"", ""glRotatexOES""\n"
+
+STUB_ASM_ENTRY("glSampleCoveragexOES")"\n"
+"\t"STUB_ASM_CODE("843")"\n"
+
+".globl ""glSampleCoveragex""\n"
+".set ""glSampleCoveragex"", ""glSampleCoveragexOES""\n"
+
+STUB_ASM_ENTRY("glScalexOES")"\n"
+"\t"STUB_ASM_CODE("844")"\n"
+
+".globl ""glScalex""\n"
+".set ""glScalex"", ""glScalexOES""\n"
+
+STUB_ASM_ENTRY("glTexEnvxOES")"\n"
+"\t"STUB_ASM_CODE("845")"\n"
+
+".globl ""glTexEnvx""\n"
+".set ""glTexEnvx"", ""glTexEnvxOES""\n"
+
+STUB_ASM_ENTRY("glTexEnvxvOES")"\n"
+"\t"STUB_ASM_CODE("846")"\n"
+
+".globl ""glTexEnvxv""\n"
+".set ""glTexEnvxv"", ""glTexEnvxvOES""\n"
+
+STUB_ASM_ENTRY("glTexGenxOES")"\n"
+"\t"STUB_ASM_CODE("847")"\n"
+
+STUB_ASM_ENTRY("glTexGenxvOES")"\n"
+"\t"STUB_ASM_CODE("848")"\n"
+
+STUB_ASM_ENTRY("glTexParameterxOES")"\n"
+"\t"STUB_ASM_CODE("849")"\n"
+
+".globl ""glTexParameterx""\n"
+".set ""glTexParameterx"", ""glTexParameterxOES""\n"
+
+STUB_ASM_ENTRY("glTexParameterxvOES")"\n"
+"\t"STUB_ASM_CODE("850")"\n"
+
+".globl ""glTexParameterxv""\n"
+".set ""glTexParameterxv"", ""glTexParameterxvOES""\n"
+
+STUB_ASM_ENTRY("glTranslatexOES")"\n"
+"\t"STUB_ASM_CODE("851")"\n"
+
+".globl ""glTranslatex""\n"
+".set ""glTranslatex"", ""glTranslatexOES""\n"
+
+STUB_ASM_ENTRY("glClipPlanefOES")"\n"
+"\t"STUB_ASM_CODE("852")"\n"
+
+".globl ""glClipPlanef""\n"
+".set ""glClipPlanef"", ""glClipPlanefOES""\n"
+
+STUB_ASM_ENTRY("glFrustumfOES")"\n"
+"\t"STUB_ASM_CODE("853")"\n"
+
+".globl ""glFrustumf""\n"
+".set ""glFrustumf"", ""glFrustumfOES""\n"
+
+STUB_ASM_ENTRY("glGetClipPlanefOES")"\n"
+"\t"STUB_ASM_CODE("854")"\n"
+
+".globl ""glGetClipPlanef""\n"
+".set ""glGetClipPlanef"", ""glGetClipPlanefOES""\n"
+
+STUB_ASM_ENTRY("glOrthofOES")"\n"
+"\t"STUB_ASM_CODE("855")"\n"
+
+".globl ""glOrthof""\n"
+".set ""glOrthof"", ""glOrthofOES""\n"
+
+STUB_ASM_ENTRY("glBlendEquationSeparateOES")"\n"
+"\t"STUB_ASM_CODE("857")"\n"
+
+STUB_ASM_ENTRY("glBindFramebufferOES")"\n"
+"\t"STUB_ASM_CODE("858")"\n"
+
+STUB_ASM_ENTRY("glBindRenderbufferOES")"\n"
+"\t"STUB_ASM_CODE("859")"\n"
+
+STUB_ASM_ENTRY("glCheckFramebufferStatusOES")"\n"
+"\t"STUB_ASM_CODE("860")"\n"
+
+STUB_ASM_ENTRY("glDeleteFramebuffersOES")"\n"
+"\t"STUB_ASM_CODE("861")"\n"
+
+STUB_ASM_ENTRY("glDeleteRenderbuffersOES")"\n"
+"\t"STUB_ASM_CODE("862")"\n"
+
+STUB_ASM_ENTRY("glFramebufferRenderbufferOES")"\n"
+"\t"STUB_ASM_CODE("863")"\n"
+
+STUB_ASM_ENTRY("glFramebufferTexture2DOES")"\n"
+"\t"STUB_ASM_CODE("865")"\n"
+
+STUB_ASM_ENTRY("glGenFramebuffersOES")"\n"
+"\t"STUB_ASM_CODE("867")"\n"
+
+STUB_ASM_ENTRY("glGenRenderbuffersOES")"\n"
+"\t"STUB_ASM_CODE("868")"\n"
+
+STUB_ASM_ENTRY("glGenerateMipmapOES")"\n"
+"\t"STUB_ASM_CODE("869")"\n"
+
+STUB_ASM_ENTRY("glGetFramebufferAttachmentParameterivOES")"\n"
+"\t"STUB_ASM_CODE("870")"\n"
+
+STUB_ASM_ENTRY("glGetRenderbufferParameterivOES")"\n"
+"\t"STUB_ASM_CODE("871")"\n"
+
+STUB_ASM_ENTRY("glIsFramebufferOES")"\n"
+"\t"STUB_ASM_CODE("872")"\n"
+
+STUB_ASM_ENTRY("glIsRenderbufferOES")"\n"
+"\t"STUB_ASM_CODE("873")"\n"
+
+STUB_ASM_ENTRY("glRenderbufferStorageOES")"\n"
+"\t"STUB_ASM_CODE("874")"\n"
+
+STUB_ASM_ENTRY("glEGLImageTargetRenderbufferStorageOES")"\n"
+"\t"STUB_ASM_CODE("949")"\n"
+
+STUB_ASM_ENTRY("glEGLImageTargetTexture2DOES")"\n"
+"\t"STUB_ASM_CODE("950")"\n"
+
+);
+#undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN
+#endif /* MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN */
diff --git a/src/mapi/es1api/main/glapidispatch.h b/src/mapi/es1api/main/glapidispatch.h
new file mode 100644
index 0000000000..59b0a1e708
--- /dev/null
+++ b/src/mapi/es1api/main/glapidispatch.h
@@ -0,0 +1,2524 @@
+/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
+
+/*
+ * (C) Copyright IBM Corporation 2005
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
+ * IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#if !defined( _GLAPI_DISPATCH_H_ )
+# define _GLAPI_DISPATCH_H_
+
+
+/* this file should not be included directly in mesa */
+
+/**
+ * \file glapidispatch.h
+ * Macros for handling GL dispatch tables.
+ *
+ * For each known GL function, there are 3 macros in this file. The first
+ * macro is named CALL_FuncName and is used to call that GL function using
+ * the specified dispatch table. The other 2 macros, called GET_FuncName
+ * can SET_FuncName, are used to get and set the dispatch pointer for the
+ * named function in the specified dispatch table.
+ */
+
+#define CALL_by_offset(disp, cast, offset, parameters) \
+ (*(cast (GET_by_offset(disp, offset)))) parameters
+#define GET_by_offset(disp, offset) \
+ (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL
+#define SET_by_offset(disp, offset, fn) \
+ do { \
+ if ( (offset) < 0 ) { \
+ /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\n", */ \
+ /* __func__, __LINE__, disp, offset, # fn); */ \
+ /* abort(); */ \
+ } \
+ else { \
+ ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \
+ } \
+ } while(0)
+
+/* total number of offsets below */
+#define _gloffset_COUNT 506
+
+#define _gloffset_NewList 0
+#define _gloffset_EndList 1
+#define _gloffset_CallList 2
+#define _gloffset_CallLists 3
+#define _gloffset_DeleteLists 4
+#define _gloffset_GenLists 5
+#define _gloffset_ListBase 6
+#define _gloffset_Begin 7
+#define _gloffset_Bitmap 8
+#define _gloffset_Color3b 9
+#define _gloffset_Color3bv 10
+#define _gloffset_Color3d 11
+#define _gloffset_Color3dv 12
+#define _gloffset_Color3f 13
+#define _gloffset_Color3fv 14
+#define _gloffset_Color3i 15
+#define _gloffset_Color3iv 16
+#define _gloffset_Color3s 17
+#define _gloffset_Color3sv 18
+#define _gloffset_Color3ub 19
+#define _gloffset_Color3ubv 20
+#define _gloffset_Color3ui 21
+#define _gloffset_Color3uiv 22
+#define _gloffset_Color3us 23
+#define _gloffset_Color3usv 24
+#define _gloffset_Color4b 25
+#define _gloffset_Color4bv 26
+#define _gloffset_Color4d 27
+#define _gloffset_Color4dv 28
+#define _gloffset_Color4f 29
+#define _gloffset_Color4fv 30
+#define _gloffset_Color4i 31
+#define _gloffset_Color4iv 32
+#define _gloffset_Color4s 33
+#define _gloffset_Color4sv 34
+#define _gloffset_Color4ub 35
+#define _gloffset_Color4ubv 36
+#define _gloffset_Color4ui 37
+#define _gloffset_Color4uiv 38
+#define _gloffset_Color4us 39
+#define _gloffset_Color4usv 40
+#define _gloffset_EdgeFlag 41
+#define _gloffset_EdgeFlagv 42
+#define _gloffset_End 43
+#define _gloffset_Indexd 44
+#define _gloffset_Indexdv 45
+#define _gloffset_Indexf 46
+#define _gloffset_Indexfv 47
+#define _gloffset_Indexi 48
+#define _gloffset_Indexiv 49
+#define _gloffset_Indexs 50
+#define _gloffset_Indexsv 51
+#define _gloffset_Normal3b 52
+#define _gloffset_Normal3bv 53
+#define _gloffset_Normal3d 54
+#define _gloffset_Normal3dv 55
+#define _gloffset_Normal3f 56
+#define _gloffset_Normal3fv 57
+#define _gloffset_Normal3i 58
+#define _gloffset_Normal3iv 59
+#define _gloffset_Normal3s 60
+#define _gloffset_Normal3sv 61
+#define _gloffset_RasterPos2d 62
+#define _gloffset_RasterPos2dv 63
+#define _gloffset_RasterPos2f 64
+#define _gloffset_RasterPos2fv 65
+#define _gloffset_RasterPos2i 66
+#define _gloffset_RasterPos2iv 67
+#define _gloffset_RasterPos2s 68
+#define _gloffset_RasterPos2sv 69
+#define _gloffset_RasterPos3d 70
+#define _gloffset_RasterPos3dv 71
+#define _gloffset_RasterPos3f 72
+#define _gloffset_RasterPos3fv 73
+#define _gloffset_RasterPos3i 74
+#define _gloffset_RasterPos3iv 75
+#define _gloffset_RasterPos3s 76
+#define _gloffset_RasterPos3sv 77
+#define _gloffset_RasterPos4d 78
+#define _gloffset_RasterPos4dv 79
+#define _gloffset_RasterPos4f 80
+#define _gloffset_RasterPos4fv 81
+#define _gloffset_RasterPos4i 82
+#define _gloffset_RasterPos4iv 83
+#define _gloffset_RasterPos4s 84
+#define _gloffset_RasterPos4sv 85
+#define _gloffset_Rectd 86
+#define _gloffset_Rectdv 87
+#define _gloffset_Rectf 88
+#define _gloffset_Rectfv 89
+#define _gloffset_Recti 90
+#define _gloffset_Rectiv 91
+#define _gloffset_Rects 92
+#define _gloffset_Rectsv 93
+#define _gloffset_TexCoord1d 94
+#define _gloffset_TexCoord1dv 95
+#define _gloffset_TexCoord1f 96
+#define _gloffset_TexCoord1fv 97
+#define _gloffset_TexCoord1i 98
+#define _gloffset_TexCoord1iv 99
+#define _gloffset_TexCoord1s 100
+#define _gloffset_TexCoord1sv 101
+#define _gloffset_TexCoord2d 102
+#define _gloffset_TexCoord2dv 103
+#define _gloffset_TexCoord2f 104
+#define _gloffset_TexCoord2fv 105
+#define _gloffset_TexCoord2i 106
+#define _gloffset_TexCoord2iv 107
+#define _gloffset_TexCoord2s 108
+#define _gloffset_TexCoord2sv 109
+#define _gloffset_TexCoord3d 110
+#define _gloffset_TexCoord3dv 111
+#define _gloffset_TexCoord3f 112
+#define _gloffset_TexCoord3fv 113
+#define _gloffset_TexCoord3i 114
+#define _gloffset_TexCoord3iv 115
+#define _gloffset_TexCoord3s 116
+#define _gloffset_TexCoord3sv 117
+#define _gloffset_TexCoord4d 118
+#define _gloffset_TexCoord4dv 119
+#define _gloffset_TexCoord4f 120
+#define _gloffset_TexCoord4fv 121
+#define _gloffset_TexCoord4i 122
+#define _gloffset_TexCoord4iv 123
+#define _gloffset_TexCoord4s 124
+#define _gloffset_TexCoord4sv 125
+#define _gloffset_Vertex2d 126
+#define _gloffset_Vertex2dv 127
+#define _gloffset_Vertex2f 128
+#define _gloffset_Vertex2fv 129
+#define _gloffset_Vertex2i 130
+#define _gloffset_Vertex2iv 131
+#define _gloffset_Vertex2s 132
+#define _gloffset_Vertex2sv 133
+#define _gloffset_Vertex3d 134
+#define _gloffset_Vertex3dv 135
+#define _gloffset_Vertex3f 136
+#define _gloffset_Vertex3fv 137
+#define _gloffset_Vertex3i 138
+#define _gloffset_Vertex3iv 139
+#define _gloffset_Vertex3s 140
+#define _gloffset_Vertex3sv 141
+#define _gloffset_Vertex4d 142
+#define _gloffset_Vertex4dv 143
+#define _gloffset_Vertex4f 144
+#define _gloffset_Vertex4fv 145
+#define _gloffset_Vertex4i 146
+#define _gloffset_Vertex4iv 147
+#define _gloffset_Vertex4s 148
+#define _gloffset_Vertex4sv 149
+#define _gloffset_ClipPlane 150
+#define _gloffset_ColorMaterial 151
+#define _gloffset_CullFace 152
+#define _gloffset_Fogf 153
+#define _gloffset_Fogfv 154
+#define _gloffset_Fogi 155
+#define _gloffset_Fogiv 156
+#define _gloffset_FrontFace 157
+#define _gloffset_Hint 158
+#define _gloffset_Lightf 159
+#define _gloffset_Lightfv 160
+#define _gloffset_Lighti 161
+#define _gloffset_Lightiv 162
+#define _gloffset_LightModelf 163
+#define _gloffset_LightModelfv 164
+#define _gloffset_LightModeli 165
+#define _gloffset_LightModeliv 166
+#define _gloffset_LineStipple 167
+#define _gloffset_LineWidth 168
+#define _gloffset_Materialf 169
+#define _gloffset_Materialfv 170
+#define _gloffset_Materiali 171
+#define _gloffset_Materialiv 172
+#define _gloffset_PointSize 173
+#define _gloffset_PolygonMode 174
+#define _gloffset_PolygonStipple 175
+#define _gloffset_Scissor 176
+#define _gloffset_ShadeModel 177
+#define _gloffset_TexParameterf 178
+#define _gloffset_TexParameterfv 179
+#define _gloffset_TexParameteri 180
+#define _gloffset_TexParameteriv 181
+#define _gloffset_TexImage1D 182
+#define _gloffset_TexImage2D 183
+#define _gloffset_TexEnvf 184
+#define _gloffset_TexEnvfv 185
+#define _gloffset_TexEnvi 186
+#define _gloffset_TexEnviv 187
+#define _gloffset_TexGend 188
+#define _gloffset_TexGendv 189
+#define _gloffset_TexGenfOES 190
+#define _gloffset_TexGenfvOES 191
+#define _gloffset_TexGeniOES 192
+#define _gloffset_TexGenivOES 193
+#define _gloffset_FeedbackBuffer 194
+#define _gloffset_SelectBuffer 195
+#define _gloffset_RenderMode 196
+#define _gloffset_InitNames 197
+#define _gloffset_LoadName 198
+#define _gloffset_PassThrough 199
+#define _gloffset_PopName 200
+#define _gloffset_PushName 201
+#define _gloffset_DrawBuffer 202
+#define _gloffset_Clear 203
+#define _gloffset_ClearAccum 204
+#define _gloffset_ClearIndex 205
+#define _gloffset_ClearColor 206
+#define _gloffset_ClearStencil 207
+#define _gloffset_ClearDepth 208
+#define _gloffset_StencilMask 209
+#define _gloffset_ColorMask 210
+#define _gloffset_DepthMask 211
+#define _gloffset_IndexMask 212
+#define _gloffset_Accum 213
+#define _gloffset_Disable 214
+#define _gloffset_Enable 215
+#define _gloffset_Finish 216
+#define _gloffset_Flush 217
+#define _gloffset_PopAttrib 218
+#define _gloffset_PushAttrib 219
+#define _gloffset_Map1d 220
+#define _gloffset_Map1f 221
+#define _gloffset_Map2d 222
+#define _gloffset_Map2f 223
+#define _gloffset_MapGrid1d 224
+#define _gloffset_MapGrid1f 225
+#define _gloffset_MapGrid2d 226
+#define _gloffset_MapGrid2f 227
+#define _gloffset_EvalCoord1d 228
+#define _gloffset_EvalCoord1dv 229
+#define _gloffset_EvalCoord1f 230
+#define _gloffset_EvalCoord1fv 231
+#define _gloffset_EvalCoord2d 232
+#define _gloffset_EvalCoord2dv 233
+#define _gloffset_EvalCoord2f 234
+#define _gloffset_EvalCoord2fv 235
+#define _gloffset_EvalMesh1 236
+#define _gloffset_EvalPoint1 237
+#define _gloffset_EvalMesh2 238
+#define _gloffset_EvalPoint2 239
+#define _gloffset_AlphaFunc 240
+#define _gloffset_BlendFunc 241
+#define _gloffset_LogicOp 242
+#define _gloffset_StencilFunc 243
+#define _gloffset_StencilOp 244
+#define _gloffset_DepthFunc 245
+#define _gloffset_PixelZoom 246
+#define _gloffset_PixelTransferf 247
+#define _gloffset_PixelTransferi 248
+#define _gloffset_PixelStoref 249
+#define _gloffset_PixelStorei 250
+#define _gloffset_PixelMapfv 251
+#define _gloffset_PixelMapuiv 252
+#define _gloffset_PixelMapusv 253
+#define _gloffset_ReadBuffer 254
+#define _gloffset_CopyPixels 255
+#define _gloffset_ReadPixels 256
+#define _gloffset_DrawPixels 257
+#define _gloffset_GetBooleanv 258
+#define _gloffset_GetClipPlane 259
+#define _gloffset_GetDoublev 260
+#define _gloffset_GetError 261
+#define _gloffset_GetFloatv 262
+#define _gloffset_GetIntegerv 263
+#define _gloffset_GetLightfv 264
+#define _gloffset_GetLightiv 265
+#define _gloffset_GetMapdv 266
+#define _gloffset_GetMapfv 267
+#define _gloffset_GetMapiv 268
+#define _gloffset_GetMaterialfv 269
+#define _gloffset_GetMaterialiv 270
+#define _gloffset_GetPixelMapfv 271
+#define _gloffset_GetPixelMapuiv 272
+#define _gloffset_GetPixelMapusv 273
+#define _gloffset_GetPolygonStipple 274
+#define _gloffset_GetString 275
+#define _gloffset_GetTexEnvfv 276
+#define _gloffset_GetTexEnviv 277
+#define _gloffset_GetTexGendv 278
+#define _gloffset_GetTexGenfvOES 279
+#define _gloffset_GetTexGenivOES 280
+#define _gloffset_GetTexImage 281
+#define _gloffset_GetTexParameterfv 282
+#define _gloffset_GetTexParameteriv 283
+#define _gloffset_GetTexLevelParameterfv 284
+#define _gloffset_GetTexLevelParameteriv 285
+#define _gloffset_IsEnabled 286
+#define _gloffset_IsList 287
+#define _gloffset_DepthRange 288
+#define _gloffset_Frustum 289
+#define _gloffset_LoadIdentity 290
+#define _gloffset_LoadMatrixf 291
+#define _gloffset_LoadMatrixd 292
+#define _gloffset_MatrixMode 293
+#define _gloffset_MultMatrixf 294
+#define _gloffset_MultMatrixd 295
+#define _gloffset_Ortho 296
+#define _gloffset_PopMatrix 297
+#define _gloffset_PushMatrix 298
+#define _gloffset_Rotated 299
+#define _gloffset_Rotatef 300
+#define _gloffset_Scaled 301
+#define _gloffset_Scalef 302
+#define _gloffset_Translated 303
+#define _gloffset_Translatef 304
+#define _gloffset_Viewport 305
+#define _gloffset_ArrayElement 306
+#define _gloffset_BindTexture 307
+#define _gloffset_ColorPointer 308
+#define _gloffset_DisableClientState 309
+#define _gloffset_DrawArrays 310
+#define _gloffset_DrawElements 311
+#define _gloffset_EdgeFlagPointer 312
+#define _gloffset_EnableClientState 313
+#define _gloffset_IndexPointer 314
+#define _gloffset_Indexub 315
+#define _gloffset_Indexubv 316
+#define _gloffset_InterleavedArrays 317
+#define _gloffset_NormalPointer 318
+#define _gloffset_PolygonOffset 319
+#define _gloffset_TexCoordPointer 320
+#define _gloffset_VertexPointer 321
+#define _gloffset_AreTexturesResident 322
+#define _gloffset_CopyTexImage1D 323
+#define _gloffset_CopyTexImage2D 324
+#define _gloffset_CopyTexSubImage1D 325
+#define _gloffset_CopyTexSubImage2D 326
+#define _gloffset_DeleteTextures 327
+#define _gloffset_GenTextures 328
+#define _gloffset_GetPointerv 329
+#define _gloffset_IsTexture 330
+#define _gloffset_PrioritizeTextures 331
+#define _gloffset_TexSubImage1D 332
+#define _gloffset_TexSubImage2D 333
+#define _gloffset_PopClientAttrib 334
+#define _gloffset_PushClientAttrib 335
+#define _gloffset_BlendColor 336
+#define _gloffset_BlendEquationOES 337
+#define _gloffset_DrawRangeElements 338
+#define _gloffset_ColorTable 339
+#define _gloffset_ColorTableParameterfv 340
+#define _gloffset_ColorTableParameteriv 341
+#define _gloffset_CopyColorTable 342
+#define _gloffset_GetColorTable 343
+#define _gloffset_GetColorTableParameterfv 344
+#define _gloffset_GetColorTableParameteriv 345
+#define _gloffset_ColorSubTable 346
+#define _gloffset_CopyColorSubTable 347
+#define _gloffset_ConvolutionFilter1D 348
+#define _gloffset_ConvolutionFilter2D 349
+#define _gloffset_ConvolutionParameterf 350
+#define _gloffset_ConvolutionParameterfv 351
+#define _gloffset_ConvolutionParameteri 352
+#define _gloffset_ConvolutionParameteriv 353
+#define _gloffset_CopyConvolutionFilter1D 354
+#define _gloffset_CopyConvolutionFilter2D 355
+#define _gloffset_GetConvolutionFilter 356
+#define _gloffset_GetConvolutionParameterfv 357
+#define _gloffset_GetConvolutionParameteriv 358
+#define _gloffset_GetSeparableFilter 359
+#define _gloffset_SeparableFilter2D 360
+#define _gloffset_GetHistogram 361
+#define _gloffset_GetHistogramParameterfv 362
+#define _gloffset_GetHistogramParameteriv 363
+#define _gloffset_GetMinmax 364
+#define _gloffset_GetMinmaxParameterfv 365
+#define _gloffset_GetMinmaxParameteriv 366
+#define _gloffset_Histogram 367
+#define _gloffset_Minmax 368
+#define _gloffset_ResetHistogram 369
+#define _gloffset_ResetMinmax 370
+#define _gloffset_TexImage3D 371
+#define _gloffset_TexSubImage3D 372
+#define _gloffset_CopyTexSubImage3D 373
+#define _gloffset_ActiveTexture 374
+#define _gloffset_ClientActiveTexture 375
+#define _gloffset_MultiTexCoord1dARB 376
+#define _gloffset_MultiTexCoord1dvARB 377
+#define _gloffset_MultiTexCoord1fARB 378
+#define _gloffset_MultiTexCoord1fvARB 379
+#define _gloffset_MultiTexCoord1iARB 380
+#define _gloffset_MultiTexCoord1ivARB 381
+#define _gloffset_MultiTexCoord1sARB 382
+#define _gloffset_MultiTexCoord1svARB 383
+#define _gloffset_MultiTexCoord2dARB 384
+#define _gloffset_MultiTexCoord2dvARB 385
+#define _gloffset_MultiTexCoord2fARB 386
+#define _gloffset_MultiTexCoord2fvARB 387
+#define _gloffset_MultiTexCoord2iARB 388
+#define _gloffset_MultiTexCoord2ivARB 389
+#define _gloffset_MultiTexCoord2sARB 390
+#define _gloffset_MultiTexCoord2svARB 391
+#define _gloffset_MultiTexCoord3dARB 392
+#define _gloffset_MultiTexCoord3dvARB 393
+#define _gloffset_MultiTexCoord3fARB 394
+#define _gloffset_MultiTexCoord3fvARB 395
+#define _gloffset_MultiTexCoord3iARB 396
+#define _gloffset_MultiTexCoord3ivARB 397
+#define _gloffset_MultiTexCoord3sARB 398
+#define _gloffset_MultiTexCoord3svARB 399
+#define _gloffset_MultiTexCoord4dARB 400
+#define _gloffset_MultiTexCoord4dvARB 401
+#define _gloffset_MultiTexCoord4f 402
+#define _gloffset_MultiTexCoord4fvARB 403
+#define _gloffset_MultiTexCoord4iARB 404
+#define _gloffset_MultiTexCoord4ivARB 405
+#define _gloffset_MultiTexCoord4sARB 406
+#define _gloffset_MultiTexCoord4svARB 407
+
+#if !defined(_GLAPI_USE_REMAP_TABLE)
+
+#define _gloffset_BlendEquationSeparateOES 408
+#define _gloffset_BlendFuncSeparateOES 409
+#define _gloffset_DrawTexfOES 410
+#define _gloffset_DrawTexfvOES 411
+#define _gloffset_DrawTexiOES 412
+#define _gloffset_DrawTexivOES 413
+#define _gloffset_DrawTexsOES 414
+#define _gloffset_DrawTexsvOES 415
+#define _gloffset_DrawTexxOES 416
+#define _gloffset_DrawTexxvOES 417
+#define _gloffset_BindFramebufferOES 418
+#define _gloffset_BindRenderbufferOES 419
+#define _gloffset_CheckFramebufferStatusOES 420
+#define _gloffset_DeleteFramebuffersOES 421
+#define _gloffset_DeleteRenderbuffersOES 422
+#define _gloffset_FramebufferRenderbufferOES 423
+#define _gloffset_FramebufferTexture2DOES 424
+#define _gloffset_GenFramebuffersOES 425
+#define _gloffset_GenRenderbuffersOES 426
+#define _gloffset_GenerateMipmapOES 427
+#define _gloffset_GetFramebufferAttachmentParameterivOES 428
+#define _gloffset_GetRenderbufferParameterivOES 429
+#define _gloffset_IsFramebufferOES 430
+#define _gloffset_IsRenderbufferOES 431
+#define _gloffset_RenderbufferStorageOES 432
+#define _gloffset_PointSizePointerOES 433
+#define _gloffset_QueryMatrixxOES 434
+#define _gloffset_GetTexGenxvOES 435
+#define _gloffset_TexGenxOES 436
+#define _gloffset_TexGenxvOES 437
+#define _gloffset_GetBufferPointervOES 438
+#define _gloffset_MapBufferOES 439
+#define _gloffset_UnmapBufferOES 440
+#define _gloffset_MultiDrawArraysEXT 441
+#define _gloffset_MultiDrawElementsEXT 442
+#define _gloffset_BindVertexArrayAPPLE 443
+#define _gloffset_DeleteVertexArraysAPPLE 444
+#define _gloffset_GenVertexArraysAPPLE 445
+#define _gloffset_IsVertexArrayAPPLE 446
+#define _gloffset_EGLImageTargetRenderbufferStorageOES 447
+#define _gloffset_EGLImageTargetTexture2DOES 448
+#define _gloffset_CompressedTexImage2D 449
+#define _gloffset_CompressedTexSubImage2D 450
+#define _gloffset_SampleCoverage 451
+#define _gloffset_BindBuffer 452
+#define _gloffset_BufferData 453
+#define _gloffset_BufferSubData 454
+#define _gloffset_DeleteBuffers 455
+#define _gloffset_GenBuffers 456
+#define _gloffset_GetBufferParameteriv 457
+#define _gloffset_IsBuffer 458
+#define _gloffset_PointParameterf 459
+#define _gloffset_PointParameterfv 460
+#define _gloffset_AlphaFuncx 461
+#define _gloffset_ClearColorx 462
+#define _gloffset_ClearDepthf 463
+#define _gloffset_ClearDepthx 464
+#define _gloffset_Color4x 465
+#define _gloffset_DepthRangef 466
+#define _gloffset_DepthRangex 467
+#define _gloffset_Fogx 468
+#define _gloffset_Fogxv 469
+#define _gloffset_Frustumf 470
+#define _gloffset_Frustumx 471
+#define _gloffset_LightModelx 472
+#define _gloffset_LightModelxv 473
+#define _gloffset_Lightx 474
+#define _gloffset_Lightxv 475
+#define _gloffset_LineWidthx 476
+#define _gloffset_LoadMatrixx 477
+#define _gloffset_Materialx 478
+#define _gloffset_Materialxv 479
+#define _gloffset_MultMatrixx 480
+#define _gloffset_MultiTexCoord4x 481
+#define _gloffset_Normal3x 482
+#define _gloffset_Orthof 483
+#define _gloffset_Orthox 484
+#define _gloffset_PointSizex 485
+#define _gloffset_PolygonOffsetx 486
+#define _gloffset_Rotatex 487
+#define _gloffset_SampleCoveragex 488
+#define _gloffset_Scalex 489
+#define _gloffset_TexEnvx 490
+#define _gloffset_TexEnvxv 491
+#define _gloffset_TexParameterx 492
+#define _gloffset_Translatex 493
+#define _gloffset_ClipPlanef 494
+#define _gloffset_ClipPlanex 495
+#define _gloffset_GetClipPlanef 496
+#define _gloffset_GetClipPlanex 497
+#define _gloffset_GetFixedv 498
+#define _gloffset_GetLightxv 499
+#define _gloffset_GetMaterialxv 500
+#define _gloffset_GetTexEnvxv 501
+#define _gloffset_GetTexParameterxv 502
+#define _gloffset_PointParameterx 503
+#define _gloffset_PointParameterxv 504
+#define _gloffset_TexParameterxv 505
+
+#else /* !_GLAPI_USE_REMAP_TABLE */
+
+#define driDispatchRemapTable_size 98
+extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
+
+#define BlendEquationSeparateOES_remap_index 0
+#define BlendFuncSeparateOES_remap_index 1
+#define DrawTexfOES_remap_index 2
+#define DrawTexfvOES_remap_index 3
+#define DrawTexiOES_remap_index 4
+#define DrawTexivOES_remap_index 5
+#define DrawTexsOES_remap_index 6
+#define DrawTexsvOES_remap_index 7
+#define DrawTexxOES_remap_index 8
+#define DrawTexxvOES_remap_index 9
+#define BindFramebufferOES_remap_index 10
+#define BindRenderbufferOES_remap_index 11
+#define CheckFramebufferStatusOES_remap_index 12
+#define DeleteFramebuffersOES_remap_index 13
+#define DeleteRenderbuffersOES_remap_index 14
+#define FramebufferRenderbufferOES_remap_index 15
+#define FramebufferTexture2DOES_remap_index 16
+#define GenFramebuffersOES_remap_index 17
+#define GenRenderbuffersOES_remap_index 18
+#define GenerateMipmapOES_remap_index 19
+#define GetFramebufferAttachmentParameterivOES_remap_index 20
+#define GetRenderbufferParameterivOES_remap_index 21
+#define IsFramebufferOES_remap_index 22
+#define IsRenderbufferOES_remap_index 23
+#define RenderbufferStorageOES_remap_index 24
+#define PointSizePointerOES_remap_index 25
+#define QueryMatrixxOES_remap_index 26
+#define GetTexGenxvOES_remap_index 27
+#define TexGenxOES_remap_index 28
+#define TexGenxvOES_remap_index 29
+#define GetBufferPointervOES_remap_index 30
+#define MapBufferOES_remap_index 31
+#define UnmapBufferOES_remap_index 32
+#define MultiDrawArraysEXT_remap_index 33
+#define MultiDrawElementsEXT_remap_index 34
+#define BindVertexArrayAPPLE_remap_index 35
+#define DeleteVertexArraysAPPLE_remap_index 36
+#define GenVertexArraysAPPLE_remap_index 37
+#define IsVertexArrayAPPLE_remap_index 38
+#define EGLImageTargetRenderbufferStorageOES_remap_index 39
+#define EGLImageTargetTexture2DOES_remap_index 40
+#define CompressedTexImage2D_remap_index 41
+#define CompressedTexSubImage2D_remap_index 42
+#define SampleCoverage_remap_index 43
+#define BindBuffer_remap_index 44
+#define BufferData_remap_index 45
+#define BufferSubData_remap_index 46
+#define DeleteBuffers_remap_index 47
+#define GenBuffers_remap_index 48
+#define GetBufferParameteriv_remap_index 49
+#define IsBuffer_remap_index 50
+#define PointParameterf_remap_index 51
+#define PointParameterfv_remap_index 52
+#define AlphaFuncx_remap_index 53
+#define ClearColorx_remap_index 54
+#define ClearDepthf_remap_index 55
+#define ClearDepthx_remap_index 56
+#define Color4x_remap_index 57
+#define DepthRangef_remap_index 58
+#define DepthRangex_remap_index 59
+#define Fogx_remap_index 60
+#define Fogxv_remap_index 61
+#define Frustumf_remap_index 62
+#define Frustumx_remap_index 63
+#define LightModelx_remap_index 64
+#define LightModelxv_remap_index 65
+#define Lightx_remap_index 66
+#define Lightxv_remap_index 67
+#define LineWidthx_remap_index 68
+#define LoadMatrixx_remap_index 69
+#define Materialx_remap_index 70
+#define Materialxv_remap_index 71
+#define MultMatrixx_remap_index 72
+#define MultiTexCoord4x_remap_index 73
+#define Normal3x_remap_index 74
+#define Orthof_remap_index 75
+#define Orthox_remap_index 76
+#define PointSizex_remap_index 77
+#define PolygonOffsetx_remap_index 78
+#define Rotatex_remap_index 79
+#define SampleCoveragex_remap_index 80
+#define Scalex_remap_index 81
+#define TexEnvx_remap_index 82
+#define TexEnvxv_remap_index 83
+#define TexParameterx_remap_index 84
+#define Translatex_remap_index 85
+#define ClipPlanef_remap_index 86
+#define ClipPlanex_remap_index 87
+#define GetClipPlanef_remap_index 88
+#define GetClipPlanex_remap_index 89
+#define GetFixedv_remap_index 90
+#define GetLightxv_remap_index 91
+#define GetMaterialxv_remap_index 92
+#define GetTexEnvxv_remap_index 93
+#define GetTexParameterxv_remap_index 94
+#define PointParameterx_remap_index 95
+#define PointParameterxv_remap_index 96
+#define TexParameterxv_remap_index 97
+
+#define _gloffset_BlendEquationSeparateOES driDispatchRemapTable[BlendEquationSeparateOES_remap_index]
+#define _gloffset_BlendFuncSeparateOES driDispatchRemapTable[BlendFuncSeparateOES_remap_index]
+#define _gloffset_DrawTexfOES driDispatchRemapTable[DrawTexfOES_remap_index]
+#define _gloffset_DrawTexfvOES driDispatchRemapTable[DrawTexfvOES_remap_index]
+#define _gloffset_DrawTexiOES driDispatchRemapTable[DrawTexiOES_remap_index]
+#define _gloffset_DrawTexivOES driDispatchRemapTable[DrawTexivOES_remap_index]
+#define _gloffset_DrawTexsOES driDispatchRemapTable[DrawTexsOES_remap_index]
+#define _gloffset_DrawTexsvOES driDispatchRemapTable[DrawTexsvOES_remap_index]
+#define _gloffset_DrawTexxOES driDispatchRemapTable[DrawTexxOES_remap_index]
+#define _gloffset_DrawTexxvOES driDispatchRemapTable[DrawTexxvOES_remap_index]
+#define _gloffset_BindFramebufferOES driDispatchRemapTable[BindFramebufferOES_remap_index]
+#define _gloffset_BindRenderbufferOES driDispatchRemapTable[BindRenderbufferOES_remap_index]
+#define _gloffset_CheckFramebufferStatusOES driDispatchRemapTable[CheckFramebufferStatusOES_remap_index]
+#define _gloffset_DeleteFramebuffersOES driDispatchRemapTable[DeleteFramebuffersOES_remap_index]
+#define _gloffset_DeleteRenderbuffersOES driDispatchRemapTable[DeleteRenderbuffersOES_remap_index]
+#define _gloffset_FramebufferRenderbufferOES driDispatchRemapTable[FramebufferRenderbufferOES_remap_index]
+#define _gloffset_FramebufferTexture2DOES driDispatchRemapTable[FramebufferTexture2DOES_remap_index]
+#define _gloffset_GenFramebuffersOES driDispatchRemapTable[GenFramebuffersOES_remap_index]
+#define _gloffset_GenRenderbuffersOES driDispatchRemapTable[GenRenderbuffersOES_remap_index]
+#define _gloffset_GenerateMipmapOES driDispatchRemapTable[GenerateMipmapOES_remap_index]
+#define _gloffset_GetFramebufferAttachmentParameterivOES driDispatchRemapTable[GetFramebufferAttachmentParameterivOES_remap_index]
+#define _gloffset_GetRenderbufferParameterivOES driDispatchRemapTable[GetRenderbufferParameterivOES_remap_index]
+#define _gloffset_IsFramebufferOES driDispatchRemapTable[IsFramebufferOES_remap_index]
+#define _gloffset_IsRenderbufferOES driDispatchRemapTable[IsRenderbufferOES_remap_index]
+#define _gloffset_RenderbufferStorageOES driDispatchRemapTable[RenderbufferStorageOES_remap_index]
+#define _gloffset_PointSizePointerOES driDispatchRemapTable[PointSizePointerOES_remap_index]
+#define _gloffset_QueryMatrixxOES driDispatchRemapTable[QueryMatrixxOES_remap_index]
+#define _gloffset_GetTexGenxvOES driDispatchRemapTable[GetTexGenxvOES_remap_index]
+#define _gloffset_TexGenxOES driDispatchRemapTable[TexGenxOES_remap_index]
+#define _gloffset_TexGenxvOES driDispatchRemapTable[TexGenxvOES_remap_index]
+#define _gloffset_GetBufferPointervOES driDispatchRemapTable[GetBufferPointervOES_remap_index]
+#define _gloffset_MapBufferOES driDispatchRemapTable[MapBufferOES_remap_index]
+#define _gloffset_UnmapBufferOES driDispatchRemapTable[UnmapBufferOES_remap_index]
+#define _gloffset_MultiDrawArraysEXT driDispatchRemapTable[MultiDrawArraysEXT_remap_index]
+#define _gloffset_MultiDrawElementsEXT driDispatchRemapTable[MultiDrawElementsEXT_remap_index]
+#define _gloffset_BindVertexArrayAPPLE driDispatchRemapTable[BindVertexArrayAPPLE_remap_index]
+#define _gloffset_DeleteVertexArraysAPPLE driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index]
+#define _gloffset_GenVertexArraysAPPLE driDispatchRemapTable[GenVertexArraysAPPLE_remap_index]
+#define _gloffset_IsVertexArrayAPPLE driDispatchRemapTable[IsVertexArrayAPPLE_remap_index]
+#define _gloffset_EGLImageTargetRenderbufferStorageOES driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index]
+#define _gloffset_EGLImageTargetTexture2DOES driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index]
+#define _gloffset_CompressedTexImage2D driDispatchRemapTable[CompressedTexImage2D_remap_index]
+#define _gloffset_CompressedTexSubImage2D driDispatchRemapTable[CompressedTexSubImage2D_remap_index]
+#define _gloffset_SampleCoverage driDispatchRemapTable[SampleCoverage_remap_index]
+#define _gloffset_BindBuffer driDispatchRemapTable[BindBuffer_remap_index]
+#define _gloffset_BufferData driDispatchRemapTable[BufferData_remap_index]
+#define _gloffset_BufferSubData driDispatchRemapTable[BufferSubData_remap_index]
+#define _gloffset_DeleteBuffers driDispatchRemapTable[DeleteBuffers_remap_index]
+#define _gloffset_GenBuffers driDispatchRemapTable[GenBuffers_remap_index]
+#define _gloffset_GetBufferParameteriv driDispatchRemapTable[GetBufferParameteriv_remap_index]
+#define _gloffset_IsBuffer driDispatchRemapTable[IsBuffer_remap_index]
+#define _gloffset_PointParameterf driDispatchRemapTable[PointParameterf_remap_index]
+#define _gloffset_PointParameterfv driDispatchRemapTable[PointParameterfv_remap_index]
+#define _gloffset_AlphaFuncx driDispatchRemapTable[AlphaFuncx_remap_index]
+#define _gloffset_ClearColorx driDispatchRemapTable[ClearColorx_remap_index]
+#define _gloffset_ClearDepthf driDispatchRemapTable[ClearDepthf_remap_index]
+#define _gloffset_ClearDepthx driDispatchRemapTable[ClearDepthx_remap_index]
+#define _gloffset_Color4x driDispatchRemapTable[Color4x_remap_index]
+#define _gloffset_DepthRangef driDispatchRemapTable[DepthRangef_remap_index]
+#define _gloffset_DepthRangex driDispatchRemapTable[DepthRangex_remap_index]
+#define _gloffset_Fogx driDispatchRemapTable[Fogx_remap_index]
+#define _gloffset_Fogxv driDispatchRemapTable[Fogxv_remap_index]
+#define _gloffset_Frustumf driDispatchRemapTable[Frustumf_remap_index]
+#define _gloffset_Frustumx driDispatchRemapTable[Frustumx_remap_index]
+#define _gloffset_LightModelx driDispatchRemapTable[LightModelx_remap_index]
+#define _gloffset_LightModelxv driDispatchRemapTable[LightModelxv_remap_index]
+#define _gloffset_Lightx driDispatchRemapTable[Lightx_remap_index]
+#define _gloffset_Lightxv driDispatchRemapTable[Lightxv_remap_index]
+#define _gloffset_LineWidthx driDispatchRemapTable[LineWidthx_remap_index]
+#define _gloffset_LoadMatrixx driDispatchRemapTable[LoadMatrixx_remap_index]
+#define _gloffset_Materialx driDispatchRemapTable[Materialx_remap_index]
+#define _gloffset_Materialxv driDispatchRemapTable[Materialxv_remap_index]
+#define _gloffset_MultMatrixx driDispatchRemapTable[MultMatrixx_remap_index]
+#define _gloffset_MultiTexCoord4x driDispatchRemapTable[MultiTexCoord4x_remap_index]
+#define _gloffset_Normal3x driDispatchRemapTable[Normal3x_remap_index]
+#define _gloffset_Orthof driDispatchRemapTable[Orthof_remap_index]
+#define _gloffset_Orthox driDispatchRemapTable[Orthox_remap_index]
+#define _gloffset_PointSizex driDispatchRemapTable[PointSizex_remap_index]
+#define _gloffset_PolygonOffsetx driDispatchRemapTable[PolygonOffsetx_remap_index]
+#define _gloffset_Rotatex driDispatchRemapTable[Rotatex_remap_index]
+#define _gloffset_SampleCoveragex driDispatchRemapTable[SampleCoveragex_remap_index]
+#define _gloffset_Scalex driDispatchRemapTable[Scalex_remap_index]
+#define _gloffset_TexEnvx driDispatchRemapTable[TexEnvx_remap_index]
+#define _gloffset_TexEnvxv driDispatchRemapTable[TexEnvxv_remap_index]
+#define _gloffset_TexParameterx driDispatchRemapTable[TexParameterx_remap_index]
+#define _gloffset_Translatex driDispatchRemapTable[Translatex_remap_index]
+#define _gloffset_ClipPlanef driDispatchRemapTable[ClipPlanef_remap_index]
+#define _gloffset_ClipPlanex driDispatchRemapTable[ClipPlanex_remap_index]
+#define _gloffset_GetClipPlanef driDispatchRemapTable[GetClipPlanef_remap_index]
+#define _gloffset_GetClipPlanex driDispatchRemapTable[GetClipPlanex_remap_index]
+#define _gloffset_GetFixedv driDispatchRemapTable[GetFixedv_remap_index]
+#define _gloffset_GetLightxv driDispatchRemapTable[GetLightxv_remap_index]
+#define _gloffset_GetMaterialxv driDispatchRemapTable[GetMaterialxv_remap_index]
+#define _gloffset_GetTexEnvxv driDispatchRemapTable[GetTexEnvxv_remap_index]
+#define _gloffset_GetTexParameterxv driDispatchRemapTable[GetTexParameterxv_remap_index]
+#define _gloffset_PointParameterx driDispatchRemapTable[PointParameterx_remap_index]
+#define _gloffset_PointParameterxv driDispatchRemapTable[PointParameterxv_remap_index]
+#define _gloffset_TexParameterxv driDispatchRemapTable[TexParameterxv_remap_index]
+
+#endif /* _GLAPI_USE_REMAP_TABLE */
+
+#define CALL_NewList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), _gloffset_NewList, parameters)
+#define GET_NewList(disp) GET_by_offset(disp, _gloffset_NewList)
+#define SET_NewList(disp, fn) SET_by_offset(disp, _gloffset_NewList, fn)
+#define CALL_EndList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_EndList, parameters)
+#define GET_EndList(disp) GET_by_offset(disp, _gloffset_EndList)
+#define SET_EndList(disp, fn) SET_by_offset(disp, _gloffset_EndList, fn)
+#define CALL_CallList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_CallList, parameters)
+#define GET_CallList(disp) GET_by_offset(disp, _gloffset_CallList)
+#define SET_CallList(disp, fn) SET_by_offset(disp, _gloffset_CallList, fn)
+#define CALL_CallLists(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLenum, const GLvoid *)), _gloffset_CallLists, parameters)
+#define GET_CallLists(disp) GET_by_offset(disp, _gloffset_CallLists)
+#define SET_CallLists(disp, fn) SET_by_offset(disp, _gloffset_CallLists, fn)
+#define CALL_DeleteLists(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei)), _gloffset_DeleteLists, parameters)
+#define GET_DeleteLists(disp) GET_by_offset(disp, _gloffset_DeleteLists)
+#define SET_DeleteLists(disp, fn) SET_by_offset(disp, _gloffset_DeleteLists, fn)
+#define CALL_GenLists(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLsizei)), _gloffset_GenLists, parameters)
+#define GET_GenLists(disp) GET_by_offset(disp, _gloffset_GenLists)
+#define SET_GenLists(disp, fn) SET_by_offset(disp, _gloffset_GenLists, fn)
+#define CALL_ListBase(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_ListBase, parameters)
+#define GET_ListBase(disp) GET_by_offset(disp, _gloffset_ListBase)
+#define SET_ListBase(disp, fn) SET_by_offset(disp, _gloffset_ListBase, fn)
+#define CALL_Begin(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Begin, parameters)
+#define GET_Begin(disp) GET_by_offset(disp, _gloffset_Begin)
+#define SET_Begin(disp, fn) SET_by_offset(disp, _gloffset_Begin, fn)
+#define CALL_Bitmap(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, GLfloat, GLfloat, GLfloat, GLfloat, const GLubyte *)), _gloffset_Bitmap, parameters)
+#define GET_Bitmap(disp) GET_by_offset(disp, _gloffset_Bitmap)
+#define SET_Bitmap(disp, fn) SET_by_offset(disp, _gloffset_Bitmap, fn)
+#define CALL_Color3b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), _gloffset_Color3b, parameters)
+#define GET_Color3b(disp) GET_by_offset(disp, _gloffset_Color3b)
+#define SET_Color3b(disp, fn) SET_by_offset(disp, _gloffset_Color3b, fn)
+#define CALL_Color3bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Color3bv, parameters)
+#define GET_Color3bv(disp) GET_by_offset(disp, _gloffset_Color3bv)
+#define SET_Color3bv(disp, fn) SET_by_offset(disp, _gloffset_Color3bv, fn)
+#define CALL_Color3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Color3d, parameters)
+#define GET_Color3d(disp) GET_by_offset(disp, _gloffset_Color3d)
+#define SET_Color3d(disp, fn) SET_by_offset(disp, _gloffset_Color3d, fn)
+#define CALL_Color3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Color3dv, parameters)
+#define GET_Color3dv(disp) GET_by_offset(disp, _gloffset_Color3dv)
+#define SET_Color3dv(disp, fn) SET_by_offset(disp, _gloffset_Color3dv, fn)
+#define CALL_Color3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Color3f, parameters)
+#define GET_Color3f(disp) GET_by_offset(disp, _gloffset_Color3f)
+#define SET_Color3f(disp, fn) SET_by_offset(disp, _gloffset_Color3f, fn)
+#define CALL_Color3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Color3fv, parameters)
+#define GET_Color3fv(disp) GET_by_offset(disp, _gloffset_Color3fv)
+#define SET_Color3fv(disp, fn) SET_by_offset(disp, _gloffset_Color3fv, fn)
+#define CALL_Color3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Color3i, parameters)
+#define GET_Color3i(disp) GET_by_offset(disp, _gloffset_Color3i)
+#define SET_Color3i(disp, fn) SET_by_offset(disp, _gloffset_Color3i, fn)
+#define CALL_Color3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Color3iv, parameters)
+#define GET_Color3iv(disp) GET_by_offset(disp, _gloffset_Color3iv)
+#define SET_Color3iv(disp, fn) SET_by_offset(disp, _gloffset_Color3iv, fn)
+#define CALL_Color3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Color3s, parameters)
+#define GET_Color3s(disp) GET_by_offset(disp, _gloffset_Color3s)
+#define SET_Color3s(disp, fn) SET_by_offset(disp, _gloffset_Color3s, fn)
+#define CALL_Color3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Color3sv, parameters)
+#define GET_Color3sv(disp) GET_by_offset(disp, _gloffset_Color3sv)
+#define SET_Color3sv(disp, fn) SET_by_offset(disp, _gloffset_Color3sv, fn)
+#define CALL_Color3ub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte)), _gloffset_Color3ub, parameters)
+#define GET_Color3ub(disp) GET_by_offset(disp, _gloffset_Color3ub)
+#define SET_Color3ub(disp, fn) SET_by_offset(disp, _gloffset_Color3ub, fn)
+#define CALL_Color3ubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Color3ubv, parameters)
+#define GET_Color3ubv(disp) GET_by_offset(disp, _gloffset_Color3ubv)
+#define SET_Color3ubv(disp, fn) SET_by_offset(disp, _gloffset_Color3ubv, fn)
+#define CALL_Color3ui(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint)), _gloffset_Color3ui, parameters)
+#define GET_Color3ui(disp) GET_by_offset(disp, _gloffset_Color3ui)
+#define SET_Color3ui(disp, fn) SET_by_offset(disp, _gloffset_Color3ui, fn)
+#define CALL_Color3uiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), _gloffset_Color3uiv, parameters)
+#define GET_Color3uiv(disp) GET_by_offset(disp, _gloffset_Color3uiv)
+#define SET_Color3uiv(disp, fn) SET_by_offset(disp, _gloffset_Color3uiv, fn)
+#define CALL_Color3us(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort)), _gloffset_Color3us, parameters)
+#define GET_Color3us(disp) GET_by_offset(disp, _gloffset_Color3us)
+#define SET_Color3us(disp, fn) SET_by_offset(disp, _gloffset_Color3us, fn)
+#define CALL_Color3usv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), _gloffset_Color3usv, parameters)
+#define GET_Color3usv(disp) GET_by_offset(disp, _gloffset_Color3usv)
+#define SET_Color3usv(disp, fn) SET_by_offset(disp, _gloffset_Color3usv, fn)
+#define CALL_Color4b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte, GLbyte)), _gloffset_Color4b, parameters)
+#define GET_Color4b(disp) GET_by_offset(disp, _gloffset_Color4b)
+#define SET_Color4b(disp, fn) SET_by_offset(disp, _gloffset_Color4b, fn)
+#define CALL_Color4bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Color4bv, parameters)
+#define GET_Color4bv(disp) GET_by_offset(disp, _gloffset_Color4bv)
+#define SET_Color4bv(disp, fn) SET_by_offset(disp, _gloffset_Color4bv, fn)
+#define CALL_Color4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Color4d, parameters)
+#define GET_Color4d(disp) GET_by_offset(disp, _gloffset_Color4d)
+#define SET_Color4d(disp, fn) SET_by_offset(disp, _gloffset_Color4d, fn)
+#define CALL_Color4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Color4dv, parameters)
+#define GET_Color4dv(disp) GET_by_offset(disp, _gloffset_Color4dv)
+#define SET_Color4dv(disp, fn) SET_by_offset(disp, _gloffset_Color4dv, fn)
+#define CALL_Color4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Color4f, parameters)
+#define GET_Color4f(disp) GET_by_offset(disp, _gloffset_Color4f)
+#define SET_Color4f(disp, fn) SET_by_offset(disp, _gloffset_Color4f, fn)
+#define CALL_Color4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Color4fv, parameters)
+#define GET_Color4fv(disp) GET_by_offset(disp, _gloffset_Color4fv)
+#define SET_Color4fv(disp, fn) SET_by_offset(disp, _gloffset_Color4fv, fn)
+#define CALL_Color4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Color4i, parameters)
+#define GET_Color4i(disp) GET_by_offset(disp, _gloffset_Color4i)
+#define SET_Color4i(disp, fn) SET_by_offset(disp, _gloffset_Color4i, fn)
+#define CALL_Color4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Color4iv, parameters)
+#define GET_Color4iv(disp) GET_by_offset(disp, _gloffset_Color4iv)
+#define SET_Color4iv(disp, fn) SET_by_offset(disp, _gloffset_Color4iv, fn)
+#define CALL_Color4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Color4s, parameters)
+#define GET_Color4s(disp) GET_by_offset(disp, _gloffset_Color4s)
+#define SET_Color4s(disp, fn) SET_by_offset(disp, _gloffset_Color4s, fn)
+#define CALL_Color4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Color4sv, parameters)
+#define GET_Color4sv(disp) GET_by_offset(disp, _gloffset_Color4sv)
+#define SET_Color4sv(disp, fn) SET_by_offset(disp, _gloffset_Color4sv, fn)
+#define CALL_Color4ub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte, GLubyte)), _gloffset_Color4ub, parameters)
+#define GET_Color4ub(disp) GET_by_offset(disp, _gloffset_Color4ub)
+#define SET_Color4ub(disp, fn) SET_by_offset(disp, _gloffset_Color4ub, fn)
+#define CALL_Color4ubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Color4ubv, parameters)
+#define GET_Color4ubv(disp) GET_by_offset(disp, _gloffset_Color4ubv)
+#define SET_Color4ubv(disp, fn) SET_by_offset(disp, _gloffset_Color4ubv, fn)
+#define CALL_Color4ui(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint, GLuint)), _gloffset_Color4ui, parameters)
+#define GET_Color4ui(disp) GET_by_offset(disp, _gloffset_Color4ui)
+#define SET_Color4ui(disp, fn) SET_by_offset(disp, _gloffset_Color4ui, fn)
+#define CALL_Color4uiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), _gloffset_Color4uiv, parameters)
+#define GET_Color4uiv(disp) GET_by_offset(disp, _gloffset_Color4uiv)
+#define SET_Color4uiv(disp, fn) SET_by_offset(disp, _gloffset_Color4uiv, fn)
+#define CALL_Color4us(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort, GLushort)), _gloffset_Color4us, parameters)
+#define GET_Color4us(disp) GET_by_offset(disp, _gloffset_Color4us)
+#define SET_Color4us(disp, fn) SET_by_offset(disp, _gloffset_Color4us, fn)
+#define CALL_Color4usv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), _gloffset_Color4usv, parameters)
+#define GET_Color4usv(disp) GET_by_offset(disp, _gloffset_Color4usv)
+#define SET_Color4usv(disp, fn) SET_by_offset(disp, _gloffset_Color4usv, fn)
+#define CALL_EdgeFlag(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean)), _gloffset_EdgeFlag, parameters)
+#define GET_EdgeFlag(disp) GET_by_offset(disp, _gloffset_EdgeFlag)
+#define SET_EdgeFlag(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlag, fn)
+#define CALL_EdgeFlagv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLboolean *)), _gloffset_EdgeFlagv, parameters)
+#define GET_EdgeFlagv(disp) GET_by_offset(disp, _gloffset_EdgeFlagv)
+#define SET_EdgeFlagv(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlagv, fn)
+#define CALL_End(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_End, parameters)
+#define GET_End(disp) GET_by_offset(disp, _gloffset_End)
+#define SET_End(disp, fn) SET_by_offset(disp, _gloffset_End, fn)
+#define CALL_Indexd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_Indexd, parameters)
+#define GET_Indexd(disp) GET_by_offset(disp, _gloffset_Indexd)
+#define SET_Indexd(disp, fn) SET_by_offset(disp, _gloffset_Indexd, fn)
+#define CALL_Indexdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Indexdv, parameters)
+#define GET_Indexdv(disp) GET_by_offset(disp, _gloffset_Indexdv)
+#define SET_Indexdv(disp, fn) SET_by_offset(disp, _gloffset_Indexdv, fn)
+#define CALL_Indexf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_Indexf, parameters)
+#define GET_Indexf(disp) GET_by_offset(disp, _gloffset_Indexf)
+#define SET_Indexf(disp, fn) SET_by_offset(disp, _gloffset_Indexf, fn)
+#define CALL_Indexfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Indexfv, parameters)
+#define GET_Indexfv(disp) GET_by_offset(disp, _gloffset_Indexfv)
+#define SET_Indexfv(disp, fn) SET_by_offset(disp, _gloffset_Indexfv, fn)
+#define CALL_Indexi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_Indexi, parameters)
+#define GET_Indexi(disp) GET_by_offset(disp, _gloffset_Indexi)
+#define SET_Indexi(disp, fn) SET_by_offset(disp, _gloffset_Indexi, fn)
+#define CALL_Indexiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Indexiv, parameters)
+#define GET_Indexiv(disp) GET_by_offset(disp, _gloffset_Indexiv)
+#define SET_Indexiv(disp, fn) SET_by_offset(disp, _gloffset_Indexiv, fn)
+#define CALL_Indexs(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort)), _gloffset_Indexs, parameters)
+#define GET_Indexs(disp) GET_by_offset(disp, _gloffset_Indexs)
+#define SET_Indexs(disp, fn) SET_by_offset(disp, _gloffset_Indexs, fn)
+#define CALL_Indexsv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Indexsv, parameters)
+#define GET_Indexsv(disp) GET_by_offset(disp, _gloffset_Indexsv)
+#define SET_Indexsv(disp, fn) SET_by_offset(disp, _gloffset_Indexsv, fn)
+#define CALL_Normal3b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), _gloffset_Normal3b, parameters)
+#define GET_Normal3b(disp) GET_by_offset(disp, _gloffset_Normal3b)
+#define SET_Normal3b(disp, fn) SET_by_offset(disp, _gloffset_Normal3b, fn)
+#define CALL_Normal3bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Normal3bv, parameters)
+#define GET_Normal3bv(disp) GET_by_offset(disp, _gloffset_Normal3bv)
+#define SET_Normal3bv(disp, fn) SET_by_offset(disp, _gloffset_Normal3bv, fn)
+#define CALL_Normal3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Normal3d, parameters)
+#define GET_Normal3d(disp) GET_by_offset(disp, _gloffset_Normal3d)
+#define SET_Normal3d(disp, fn) SET_by_offset(disp, _gloffset_Normal3d, fn)
+#define CALL_Normal3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Normal3dv, parameters)
+#define GET_Normal3dv(disp) GET_by_offset(disp, _gloffset_Normal3dv)
+#define SET_Normal3dv(disp, fn) SET_by_offset(disp, _gloffset_Normal3dv, fn)
+#define CALL_Normal3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Normal3f, parameters)
+#define GET_Normal3f(disp) GET_by_offset(disp, _gloffset_Normal3f)
+#define SET_Normal3f(disp, fn) SET_by_offset(disp, _gloffset_Normal3f, fn)
+#define CALL_Normal3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Normal3fv, parameters)
+#define GET_Normal3fv(disp) GET_by_offset(disp, _gloffset_Normal3fv)
+#define SET_Normal3fv(disp, fn) SET_by_offset(disp, _gloffset_Normal3fv, fn)
+#define CALL_Normal3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Normal3i, parameters)
+#define GET_Normal3i(disp) GET_by_offset(disp, _gloffset_Normal3i)
+#define SET_Normal3i(disp, fn) SET_by_offset(disp, _gloffset_Normal3i, fn)
+#define CALL_Normal3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Normal3iv, parameters)
+#define GET_Normal3iv(disp) GET_by_offset(disp, _gloffset_Normal3iv)
+#define SET_Normal3iv(disp, fn) SET_by_offset(disp, _gloffset_Normal3iv, fn)
+#define CALL_Normal3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Normal3s, parameters)
+#define GET_Normal3s(disp) GET_by_offset(disp, _gloffset_Normal3s)
+#define SET_Normal3s(disp, fn) SET_by_offset(disp, _gloffset_Normal3s, fn)
+#define CALL_Normal3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Normal3sv, parameters)
+#define GET_Normal3sv(disp) GET_by_offset(disp, _gloffset_Normal3sv)
+#define SET_Normal3sv(disp, fn) SET_by_offset(disp, _gloffset_Normal3sv, fn)
+#define CALL_RasterPos2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_RasterPos2d, parameters)
+#define GET_RasterPos2d(disp) GET_by_offset(disp, _gloffset_RasterPos2d)
+#define SET_RasterPos2d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2d, fn)
+#define CALL_RasterPos2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos2dv, parameters)
+#define GET_RasterPos2dv(disp) GET_by_offset(disp, _gloffset_RasterPos2dv)
+#define SET_RasterPos2dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2dv, fn)
+#define CALL_RasterPos2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_RasterPos2f, parameters)
+#define GET_RasterPos2f(disp) GET_by_offset(disp, _gloffset_RasterPos2f)
+#define SET_RasterPos2f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2f, fn)
+#define CALL_RasterPos2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos2fv, parameters)
+#define GET_RasterPos2fv(disp) GET_by_offset(disp, _gloffset_RasterPos2fv)
+#define SET_RasterPos2fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2fv, fn)
+#define CALL_RasterPos2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_RasterPos2i, parameters)
+#define GET_RasterPos2i(disp) GET_by_offset(disp, _gloffset_RasterPos2i)
+#define SET_RasterPos2i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2i, fn)
+#define CALL_RasterPos2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos2iv, parameters)
+#define GET_RasterPos2iv(disp) GET_by_offset(disp, _gloffset_RasterPos2iv)
+#define SET_RasterPos2iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2iv, fn)
+#define CALL_RasterPos2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_RasterPos2s, parameters)
+#define GET_RasterPos2s(disp) GET_by_offset(disp, _gloffset_RasterPos2s)
+#define SET_RasterPos2s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2s, fn)
+#define CALL_RasterPos2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos2sv, parameters)
+#define GET_RasterPos2sv(disp) GET_by_offset(disp, _gloffset_RasterPos2sv)
+#define SET_RasterPos2sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2sv, fn)
+#define CALL_RasterPos3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_RasterPos3d, parameters)
+#define GET_RasterPos3d(disp) GET_by_offset(disp, _gloffset_RasterPos3d)
+#define SET_RasterPos3d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3d, fn)
+#define CALL_RasterPos3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos3dv, parameters)
+#define GET_RasterPos3dv(disp) GET_by_offset(disp, _gloffset_RasterPos3dv)
+#define SET_RasterPos3dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3dv, fn)
+#define CALL_RasterPos3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_RasterPos3f, parameters)
+#define GET_RasterPos3f(disp) GET_by_offset(disp, _gloffset_RasterPos3f)
+#define SET_RasterPos3f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3f, fn)
+#define CALL_RasterPos3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos3fv, parameters)
+#define GET_RasterPos3fv(disp) GET_by_offset(disp, _gloffset_RasterPos3fv)
+#define SET_RasterPos3fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3fv, fn)
+#define CALL_RasterPos3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_RasterPos3i, parameters)
+#define GET_RasterPos3i(disp) GET_by_offset(disp, _gloffset_RasterPos3i)
+#define SET_RasterPos3i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3i, fn)
+#define CALL_RasterPos3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos3iv, parameters)
+#define GET_RasterPos3iv(disp) GET_by_offset(disp, _gloffset_RasterPos3iv)
+#define SET_RasterPos3iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3iv, fn)
+#define CALL_RasterPos3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_RasterPos3s, parameters)
+#define GET_RasterPos3s(disp) GET_by_offset(disp, _gloffset_RasterPos3s)
+#define SET_RasterPos3s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3s, fn)
+#define CALL_RasterPos3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos3sv, parameters)
+#define GET_RasterPos3sv(disp) GET_by_offset(disp, _gloffset_RasterPos3sv)
+#define SET_RasterPos3sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3sv, fn)
+#define CALL_RasterPos4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_RasterPos4d, parameters)
+#define GET_RasterPos4d(disp) GET_by_offset(disp, _gloffset_RasterPos4d)
+#define SET_RasterPos4d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4d, fn)
+#define CALL_RasterPos4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos4dv, parameters)
+#define GET_RasterPos4dv(disp) GET_by_offset(disp, _gloffset_RasterPos4dv)
+#define SET_RasterPos4dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4dv, fn)
+#define CALL_RasterPos4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_RasterPos4f, parameters)
+#define GET_RasterPos4f(disp) GET_by_offset(disp, _gloffset_RasterPos4f)
+#define SET_RasterPos4f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4f, fn)
+#define CALL_RasterPos4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos4fv, parameters)
+#define GET_RasterPos4fv(disp) GET_by_offset(disp, _gloffset_RasterPos4fv)
+#define SET_RasterPos4fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4fv, fn)
+#define CALL_RasterPos4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_RasterPos4i, parameters)
+#define GET_RasterPos4i(disp) GET_by_offset(disp, _gloffset_RasterPos4i)
+#define SET_RasterPos4i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4i, fn)
+#define CALL_RasterPos4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos4iv, parameters)
+#define GET_RasterPos4iv(disp) GET_by_offset(disp, _gloffset_RasterPos4iv)
+#define SET_RasterPos4iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4iv, fn)
+#define CALL_RasterPos4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_RasterPos4s, parameters)
+#define GET_RasterPos4s(disp) GET_by_offset(disp, _gloffset_RasterPos4s)
+#define SET_RasterPos4s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4s, fn)
+#define CALL_RasterPos4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos4sv, parameters)
+#define GET_RasterPos4sv(disp) GET_by_offset(disp, _gloffset_RasterPos4sv)
+#define SET_RasterPos4sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4sv, fn)
+#define CALL_Rectd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Rectd, parameters)
+#define GET_Rectd(disp) GET_by_offset(disp, _gloffset_Rectd)
+#define SET_Rectd(disp, fn) SET_by_offset(disp, _gloffset_Rectd, fn)
+#define CALL_Rectdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *, const GLdouble *)), _gloffset_Rectdv, parameters)
+#define GET_Rectdv(disp) GET_by_offset(disp, _gloffset_Rectdv)
+#define SET_Rectdv(disp, fn) SET_by_offset(disp, _gloffset_Rectdv, fn)
+#define CALL_Rectf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Rectf, parameters)
+#define GET_Rectf(disp) GET_by_offset(disp, _gloffset_Rectf)
+#define SET_Rectf(disp, fn) SET_by_offset(disp, _gloffset_Rectf, fn)
+#define CALL_Rectfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *, const GLfloat *)), _gloffset_Rectfv, parameters)
+#define GET_Rectfv(disp) GET_by_offset(disp, _gloffset_Rectfv)
+#define SET_Rectfv(disp, fn) SET_by_offset(disp, _gloffset_Rectfv, fn)
+#define CALL_Recti(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Recti, parameters)
+#define GET_Recti(disp) GET_by_offset(disp, _gloffset_Recti)
+#define SET_Recti(disp, fn) SET_by_offset(disp, _gloffset_Recti, fn)
+#define CALL_Rectiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *, const GLint *)), _gloffset_Rectiv, parameters)
+#define GET_Rectiv(disp) GET_by_offset(disp, _gloffset_Rectiv)
+#define SET_Rectiv(disp, fn) SET_by_offset(disp, _gloffset_Rectiv, fn)
+#define CALL_Rects(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Rects, parameters)
+#define GET_Rects(disp) GET_by_offset(disp, _gloffset_Rects)
+#define SET_Rects(disp, fn) SET_by_offset(disp, _gloffset_Rects, fn)
+#define CALL_Rectsv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *, const GLshort *)), _gloffset_Rectsv, parameters)
+#define GET_Rectsv(disp) GET_by_offset(disp, _gloffset_Rectsv)
+#define SET_Rectsv(disp, fn) SET_by_offset(disp, _gloffset_Rectsv, fn)
+#define CALL_TexCoord1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_TexCoord1d, parameters)
+#define GET_TexCoord1d(disp) GET_by_offset(disp, _gloffset_TexCoord1d)
+#define SET_TexCoord1d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1d, fn)
+#define CALL_TexCoord1dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord1dv, parameters)
+#define GET_TexCoord1dv(disp) GET_by_offset(disp, _gloffset_TexCoord1dv)
+#define SET_TexCoord1dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1dv, fn)
+#define CALL_TexCoord1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_TexCoord1f, parameters)
+#define GET_TexCoord1f(disp) GET_by_offset(disp, _gloffset_TexCoord1f)
+#define SET_TexCoord1f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1f, fn)
+#define CALL_TexCoord1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord1fv, parameters)
+#define GET_TexCoord1fv(disp) GET_by_offset(disp, _gloffset_TexCoord1fv)
+#define SET_TexCoord1fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1fv, fn)
+#define CALL_TexCoord1i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_TexCoord1i, parameters)
+#define GET_TexCoord1i(disp) GET_by_offset(disp, _gloffset_TexCoord1i)
+#define SET_TexCoord1i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1i, fn)
+#define CALL_TexCoord1iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord1iv, parameters)
+#define GET_TexCoord1iv(disp) GET_by_offset(disp, _gloffset_TexCoord1iv)
+#define SET_TexCoord1iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1iv, fn)
+#define CALL_TexCoord1s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort)), _gloffset_TexCoord1s, parameters)
+#define GET_TexCoord1s(disp) GET_by_offset(disp, _gloffset_TexCoord1s)
+#define SET_TexCoord1s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1s, fn)
+#define CALL_TexCoord1sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord1sv, parameters)
+#define GET_TexCoord1sv(disp) GET_by_offset(disp, _gloffset_TexCoord1sv)
+#define SET_TexCoord1sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1sv, fn)
+#define CALL_TexCoord2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_TexCoord2d, parameters)
+#define GET_TexCoord2d(disp) GET_by_offset(disp, _gloffset_TexCoord2d)
+#define SET_TexCoord2d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2d, fn)
+#define CALL_TexCoord2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord2dv, parameters)
+#define GET_TexCoord2dv(disp) GET_by_offset(disp, _gloffset_TexCoord2dv)
+#define SET_TexCoord2dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2dv, fn)
+#define CALL_TexCoord2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_TexCoord2f, parameters)
+#define GET_TexCoord2f(disp) GET_by_offset(disp, _gloffset_TexCoord2f)
+#define SET_TexCoord2f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2f, fn)
+#define CALL_TexCoord2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord2fv, parameters)
+#define GET_TexCoord2fv(disp) GET_by_offset(disp, _gloffset_TexCoord2fv)
+#define SET_TexCoord2fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2fv, fn)
+#define CALL_TexCoord2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_TexCoord2i, parameters)
+#define GET_TexCoord2i(disp) GET_by_offset(disp, _gloffset_TexCoord2i)
+#define SET_TexCoord2i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2i, fn)
+#define CALL_TexCoord2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord2iv, parameters)
+#define GET_TexCoord2iv(disp) GET_by_offset(disp, _gloffset_TexCoord2iv)
+#define SET_TexCoord2iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2iv, fn)
+#define CALL_TexCoord2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_TexCoord2s, parameters)
+#define GET_TexCoord2s(disp) GET_by_offset(disp, _gloffset_TexCoord2s)
+#define SET_TexCoord2s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2s, fn)
+#define CALL_TexCoord2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord2sv, parameters)
+#define GET_TexCoord2sv(disp) GET_by_offset(disp, _gloffset_TexCoord2sv)
+#define SET_TexCoord2sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2sv, fn)
+#define CALL_TexCoord3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_TexCoord3d, parameters)
+#define GET_TexCoord3d(disp) GET_by_offset(disp, _gloffset_TexCoord3d)
+#define SET_TexCoord3d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3d, fn)
+#define CALL_TexCoord3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord3dv, parameters)
+#define GET_TexCoord3dv(disp) GET_by_offset(disp, _gloffset_TexCoord3dv)
+#define SET_TexCoord3dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3dv, fn)
+#define CALL_TexCoord3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_TexCoord3f, parameters)
+#define GET_TexCoord3f(disp) GET_by_offset(disp, _gloffset_TexCoord3f)
+#define SET_TexCoord3f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3f, fn)
+#define CALL_TexCoord3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord3fv, parameters)
+#define GET_TexCoord3fv(disp) GET_by_offset(disp, _gloffset_TexCoord3fv)
+#define SET_TexCoord3fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3fv, fn)
+#define CALL_TexCoord3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_TexCoord3i, parameters)
+#define GET_TexCoord3i(disp) GET_by_offset(disp, _gloffset_TexCoord3i)
+#define SET_TexCoord3i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3i, fn)
+#define CALL_TexCoord3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord3iv, parameters)
+#define GET_TexCoord3iv(disp) GET_by_offset(disp, _gloffset_TexCoord3iv)
+#define SET_TexCoord3iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3iv, fn)
+#define CALL_TexCoord3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_TexCoord3s, parameters)
+#define GET_TexCoord3s(disp) GET_by_offset(disp, _gloffset_TexCoord3s)
+#define SET_TexCoord3s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3s, fn)
+#define CALL_TexCoord3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord3sv, parameters)
+#define GET_TexCoord3sv(disp) GET_by_offset(disp, _gloffset_TexCoord3sv)
+#define SET_TexCoord3sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3sv, fn)
+#define CALL_TexCoord4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_TexCoord4d, parameters)
+#define GET_TexCoord4d(disp) GET_by_offset(disp, _gloffset_TexCoord4d)
+#define SET_TexCoord4d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4d, fn)
+#define CALL_TexCoord4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord4dv, parameters)
+#define GET_TexCoord4dv(disp) GET_by_offset(disp, _gloffset_TexCoord4dv)
+#define SET_TexCoord4dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4dv, fn)
+#define CALL_TexCoord4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_TexCoord4f, parameters)
+#define GET_TexCoord4f(disp) GET_by_offset(disp, _gloffset_TexCoord4f)
+#define SET_TexCoord4f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4f, fn)
+#define CALL_TexCoord4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord4fv, parameters)
+#define GET_TexCoord4fv(disp) GET_by_offset(disp, _gloffset_TexCoord4fv)
+#define SET_TexCoord4fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4fv, fn)
+#define CALL_TexCoord4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_TexCoord4i, parameters)
+#define GET_TexCoord4i(disp) GET_by_offset(disp, _gloffset_TexCoord4i)
+#define SET_TexCoord4i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4i, fn)
+#define CALL_TexCoord4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord4iv, parameters)
+#define GET_TexCoord4iv(disp) GET_by_offset(disp, _gloffset_TexCoord4iv)
+#define SET_TexCoord4iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4iv, fn)
+#define CALL_TexCoord4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_TexCoord4s, parameters)
+#define GET_TexCoord4s(disp) GET_by_offset(disp, _gloffset_TexCoord4s)
+#define SET_TexCoord4s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4s, fn)
+#define CALL_TexCoord4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord4sv, parameters)
+#define GET_TexCoord4sv(disp) GET_by_offset(disp, _gloffset_TexCoord4sv)
+#define SET_TexCoord4sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4sv, fn)
+#define CALL_Vertex2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_Vertex2d, parameters)
+#define GET_Vertex2d(disp) GET_by_offset(disp, _gloffset_Vertex2d)
+#define SET_Vertex2d(disp, fn) SET_by_offset(disp, _gloffset_Vertex2d, fn)
+#define CALL_Vertex2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex2dv, parameters)
+#define GET_Vertex2dv(disp) GET_by_offset(disp, _gloffset_Vertex2dv)
+#define SET_Vertex2dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2dv, fn)
+#define CALL_Vertex2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_Vertex2f, parameters)
+#define GET_Vertex2f(disp) GET_by_offset(disp, _gloffset_Vertex2f)
+#define SET_Vertex2f(disp, fn) SET_by_offset(disp, _gloffset_Vertex2f, fn)
+#define CALL_Vertex2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex2fv, parameters)
+#define GET_Vertex2fv(disp) GET_by_offset(disp, _gloffset_Vertex2fv)
+#define SET_Vertex2fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2fv, fn)
+#define CALL_Vertex2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_Vertex2i, parameters)
+#define GET_Vertex2i(disp) GET_by_offset(disp, _gloffset_Vertex2i)
+#define SET_Vertex2i(disp, fn) SET_by_offset(disp, _gloffset_Vertex2i, fn)
+#define CALL_Vertex2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex2iv, parameters)
+#define GET_Vertex2iv(disp) GET_by_offset(disp, _gloffset_Vertex2iv)
+#define SET_Vertex2iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2iv, fn)
+#define CALL_Vertex2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_Vertex2s, parameters)
+#define GET_Vertex2s(disp) GET_by_offset(disp, _gloffset_Vertex2s)
+#define SET_Vertex2s(disp, fn) SET_by_offset(disp, _gloffset_Vertex2s, fn)
+#define CALL_Vertex2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex2sv, parameters)
+#define GET_Vertex2sv(disp) GET_by_offset(disp, _gloffset_Vertex2sv)
+#define SET_Vertex2sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2sv, fn)
+#define CALL_Vertex3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Vertex3d, parameters)
+#define GET_Vertex3d(disp) GET_by_offset(disp, _gloffset_Vertex3d)
+#define SET_Vertex3d(disp, fn) SET_by_offset(disp, _gloffset_Vertex3d, fn)
+#define CALL_Vertex3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex3dv, parameters)
+#define GET_Vertex3dv(disp) GET_by_offset(disp, _gloffset_Vertex3dv)
+#define SET_Vertex3dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3dv, fn)
+#define CALL_Vertex3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Vertex3f, parameters)
+#define GET_Vertex3f(disp) GET_by_offset(disp, _gloffset_Vertex3f)
+#define SET_Vertex3f(disp, fn) SET_by_offset(disp, _gloffset_Vertex3f, fn)
+#define CALL_Vertex3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex3fv, parameters)
+#define GET_Vertex3fv(disp) GET_by_offset(disp, _gloffset_Vertex3fv)
+#define SET_Vertex3fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3fv, fn)
+#define CALL_Vertex3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Vertex3i, parameters)
+#define GET_Vertex3i(disp) GET_by_offset(disp, _gloffset_Vertex3i)
+#define SET_Vertex3i(disp, fn) SET_by_offset(disp, _gloffset_Vertex3i, fn)
+#define CALL_Vertex3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex3iv, parameters)
+#define GET_Vertex3iv(disp) GET_by_offset(disp, _gloffset_Vertex3iv)
+#define SET_Vertex3iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3iv, fn)
+#define CALL_Vertex3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Vertex3s, parameters)
+#define GET_Vertex3s(disp) GET_by_offset(disp, _gloffset_Vertex3s)
+#define SET_Vertex3s(disp, fn) SET_by_offset(disp, _gloffset_Vertex3s, fn)
+#define CALL_Vertex3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex3sv, parameters)
+#define GET_Vertex3sv(disp) GET_by_offset(disp, _gloffset_Vertex3sv)
+#define SET_Vertex3sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3sv, fn)
+#define CALL_Vertex4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Vertex4d, parameters)
+#define GET_Vertex4d(disp) GET_by_offset(disp, _gloffset_Vertex4d)
+#define SET_Vertex4d(disp, fn) SET_by_offset(disp, _gloffset_Vertex4d, fn)
+#define CALL_Vertex4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex4dv, parameters)
+#define GET_Vertex4dv(disp) GET_by_offset(disp, _gloffset_Vertex4dv)
+#define SET_Vertex4dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4dv, fn)
+#define CALL_Vertex4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Vertex4f, parameters)
+#define GET_Vertex4f(disp) GET_by_offset(disp, _gloffset_Vertex4f)
+#define SET_Vertex4f(disp, fn) SET_by_offset(disp, _gloffset_Vertex4f, fn)
+#define CALL_Vertex4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex4fv, parameters)
+#define GET_Vertex4fv(disp) GET_by_offset(disp, _gloffset_Vertex4fv)
+#define SET_Vertex4fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4fv, fn)
+#define CALL_Vertex4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Vertex4i, parameters)
+#define GET_Vertex4i(disp) GET_by_offset(disp, _gloffset_Vertex4i)
+#define SET_Vertex4i(disp, fn) SET_by_offset(disp, _gloffset_Vertex4i, fn)
+#define CALL_Vertex4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex4iv, parameters)
+#define GET_Vertex4iv(disp) GET_by_offset(disp, _gloffset_Vertex4iv)
+#define SET_Vertex4iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4iv, fn)
+#define CALL_Vertex4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Vertex4s, parameters)
+#define GET_Vertex4s(disp) GET_by_offset(disp, _gloffset_Vertex4s)
+#define SET_Vertex4s(disp, fn) SET_by_offset(disp, _gloffset_Vertex4s, fn)
+#define CALL_Vertex4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex4sv, parameters)
+#define GET_Vertex4sv(disp) GET_by_offset(disp, _gloffset_Vertex4sv)
+#define SET_Vertex4sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4sv, fn)
+#define CALL_ClipPlane(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_ClipPlane, parameters)
+#define GET_ClipPlane(disp) GET_by_offset(disp, _gloffset_ClipPlane)
+#define SET_ClipPlane(disp, fn) SET_by_offset(disp, _gloffset_ClipPlane, fn)
+#define CALL_ColorMaterial(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_ColorMaterial, parameters)
+#define GET_ColorMaterial(disp) GET_by_offset(disp, _gloffset_ColorMaterial)
+#define SET_ColorMaterial(disp, fn) SET_by_offset(disp, _gloffset_ColorMaterial, fn)
+#define CALL_CullFace(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_CullFace, parameters)
+#define GET_CullFace(disp) GET_by_offset(disp, _gloffset_CullFace)
+#define SET_CullFace(disp, fn) SET_by_offset(disp, _gloffset_CullFace, fn)
+#define CALL_Fogf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_Fogf, parameters)
+#define GET_Fogf(disp) GET_by_offset(disp, _gloffset_Fogf)
+#define SET_Fogf(disp, fn) SET_by_offset(disp, _gloffset_Fogf, fn)
+#define CALL_Fogfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_Fogfv, parameters)
+#define GET_Fogfv(disp) GET_by_offset(disp, _gloffset_Fogfv)
+#define SET_Fogfv(disp, fn) SET_by_offset(disp, _gloffset_Fogfv, fn)
+#define CALL_Fogi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_Fogi, parameters)
+#define GET_Fogi(disp) GET_by_offset(disp, _gloffset_Fogi)
+#define SET_Fogi(disp, fn) SET_by_offset(disp, _gloffset_Fogi, fn)
+#define CALL_Fogiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_Fogiv, parameters)
+#define GET_Fogiv(disp) GET_by_offset(disp, _gloffset_Fogiv)
+#define SET_Fogiv(disp, fn) SET_by_offset(disp, _gloffset_Fogiv, fn)
+#define CALL_FrontFace(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_FrontFace, parameters)
+#define GET_FrontFace(disp) GET_by_offset(disp, _gloffset_FrontFace)
+#define SET_FrontFace(disp, fn) SET_by_offset(disp, _gloffset_FrontFace, fn)
+#define CALL_Hint(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_Hint, parameters)
+#define GET_Hint(disp) GET_by_offset(disp, _gloffset_Hint)
+#define SET_Hint(disp, fn) SET_by_offset(disp, _gloffset_Hint, fn)
+#define CALL_Lightf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_Lightf, parameters)
+#define GET_Lightf(disp) GET_by_offset(disp, _gloffset_Lightf)
+#define SET_Lightf(disp, fn) SET_by_offset(disp, _gloffset_Lightf, fn)
+#define CALL_Lightfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_Lightfv, parameters)
+#define GET_Lightfv(disp) GET_by_offset(disp, _gloffset_Lightfv)
+#define SET_Lightfv(disp, fn) SET_by_offset(disp, _gloffset_Lightfv, fn)
+#define CALL_Lighti(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_Lighti, parameters)
+#define GET_Lighti(disp) GET_by_offset(disp, _gloffset_Lighti)
+#define SET_Lighti(disp, fn) SET_by_offset(disp, _gloffset_Lighti, fn)
+#define CALL_Lightiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_Lightiv, parameters)
+#define GET_Lightiv(disp) GET_by_offset(disp, _gloffset_Lightiv)
+#define SET_Lightiv(disp, fn) SET_by_offset(disp, _gloffset_Lightiv, fn)
+#define CALL_LightModelf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_LightModelf, parameters)
+#define GET_LightModelf(disp) GET_by_offset(disp, _gloffset_LightModelf)
+#define SET_LightModelf(disp, fn) SET_by_offset(disp, _gloffset_LightModelf, fn)
+#define CALL_LightModelfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_LightModelfv, parameters)
+#define GET_LightModelfv(disp) GET_by_offset(disp, _gloffset_LightModelfv)
+#define SET_LightModelfv(disp, fn) SET_by_offset(disp, _gloffset_LightModelfv, fn)
+#define CALL_LightModeli(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_LightModeli, parameters)
+#define GET_LightModeli(disp) GET_by_offset(disp, _gloffset_LightModeli)
+#define SET_LightModeli(disp, fn) SET_by_offset(disp, _gloffset_LightModeli, fn)
+#define CALL_LightModeliv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_LightModeliv, parameters)
+#define GET_LightModeliv(disp) GET_by_offset(disp, _gloffset_LightModeliv)
+#define SET_LightModeliv(disp, fn) SET_by_offset(disp, _gloffset_LightModeliv, fn)
+#define CALL_LineStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLushort)), _gloffset_LineStipple, parameters)
+#define GET_LineStipple(disp) GET_by_offset(disp, _gloffset_LineStipple)
+#define SET_LineStipple(disp, fn) SET_by_offset(disp, _gloffset_LineStipple, fn)
+#define CALL_LineWidth(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_LineWidth, parameters)
+#define GET_LineWidth(disp) GET_by_offset(disp, _gloffset_LineWidth)
+#define SET_LineWidth(disp, fn) SET_by_offset(disp, _gloffset_LineWidth, fn)
+#define CALL_Materialf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_Materialf, parameters)
+#define GET_Materialf(disp) GET_by_offset(disp, _gloffset_Materialf)
+#define SET_Materialf(disp, fn) SET_by_offset(disp, _gloffset_Materialf, fn)
+#define CALL_Materialfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_Materialfv, parameters)
+#define GET_Materialfv(disp) GET_by_offset(disp, _gloffset_Materialfv)
+#define SET_Materialfv(disp, fn) SET_by_offset(disp, _gloffset_Materialfv, fn)
+#define CALL_Materiali(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_Materiali, parameters)
+#define GET_Materiali(disp) GET_by_offset(disp, _gloffset_Materiali)
+#define SET_Materiali(disp, fn) SET_by_offset(disp, _gloffset_Materiali, fn)
+#define CALL_Materialiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_Materialiv, parameters)
+#define GET_Materialiv(disp) GET_by_offset(disp, _gloffset_Materialiv)
+#define SET_Materialiv(disp, fn) SET_by_offset(disp, _gloffset_Materialiv, fn)
+#define CALL_PointSize(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_PointSize, parameters)
+#define GET_PointSize(disp) GET_by_offset(disp, _gloffset_PointSize)
+#define SET_PointSize(disp, fn) SET_by_offset(disp, _gloffset_PointSize, fn)
+#define CALL_PolygonMode(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_PolygonMode, parameters)
+#define GET_PolygonMode(disp) GET_by_offset(disp, _gloffset_PolygonMode)
+#define SET_PolygonMode(disp, fn) SET_by_offset(disp, _gloffset_PolygonMode, fn)
+#define CALL_PolygonStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_PolygonStipple, parameters)
+#define GET_PolygonStipple(disp) GET_by_offset(disp, _gloffset_PolygonStipple)
+#define SET_PolygonStipple(disp, fn) SET_by_offset(disp, _gloffset_PolygonStipple, fn)
+#define CALL_Scissor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei)), _gloffset_Scissor, parameters)
+#define GET_Scissor(disp) GET_by_offset(disp, _gloffset_Scissor)
+#define SET_Scissor(disp, fn) SET_by_offset(disp, _gloffset_Scissor, fn)
+#define CALL_ShadeModel(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ShadeModel, parameters)
+#define GET_ShadeModel(disp) GET_by_offset(disp, _gloffset_ShadeModel)
+#define SET_ShadeModel(disp, fn) SET_by_offset(disp, _gloffset_ShadeModel, fn)
+#define CALL_TexParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexParameterf, parameters)
+#define GET_TexParameterf(disp) GET_by_offset(disp, _gloffset_TexParameterf)
+#define SET_TexParameterf(disp, fn) SET_by_offset(disp, _gloffset_TexParameterf, fn)
+#define CALL_TexParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexParameterfv, parameters)
+#define GET_TexParameterfv(disp) GET_by_offset(disp, _gloffset_TexParameterfv)
+#define SET_TexParameterfv(disp, fn) SET_by_offset(disp, _gloffset_TexParameterfv, fn)
+#define CALL_TexParameteri(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexParameteri, parameters)
+#define GET_TexParameteri(disp) GET_by_offset(disp, _gloffset_TexParameteri)
+#define SET_TexParameteri(disp, fn) SET_by_offset(disp, _gloffset_TexParameteri, fn)
+#define CALL_TexParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexParameteriv, parameters)
+#define GET_TexParameteriv(disp) GET_by_offset(disp, _gloffset_TexParameteriv)
+#define SET_TexParameteriv(disp, fn) SET_by_offset(disp, _gloffset_TexParameteriv, fn)
+#define CALL_TexImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage1D, parameters)
+#define GET_TexImage1D(disp) GET_by_offset(disp, _gloffset_TexImage1D)
+#define SET_TexImage1D(disp, fn) SET_by_offset(disp, _gloffset_TexImage1D, fn)
+#define CALL_TexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage2D, parameters)
+#define GET_TexImage2D(disp) GET_by_offset(disp, _gloffset_TexImage2D)
+#define SET_TexImage2D(disp, fn) SET_by_offset(disp, _gloffset_TexImage2D, fn)
+#define CALL_TexEnvf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexEnvf, parameters)
+#define GET_TexEnvf(disp) GET_by_offset(disp, _gloffset_TexEnvf)
+#define SET_TexEnvf(disp, fn) SET_by_offset(disp, _gloffset_TexEnvf, fn)
+#define CALL_TexEnvfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexEnvfv, parameters)
+#define GET_TexEnvfv(disp) GET_by_offset(disp, _gloffset_TexEnvfv)
+#define SET_TexEnvfv(disp, fn) SET_by_offset(disp, _gloffset_TexEnvfv, fn)
+#define CALL_TexEnvi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexEnvi, parameters)
+#define GET_TexEnvi(disp) GET_by_offset(disp, _gloffset_TexEnvi)
+#define SET_TexEnvi(disp, fn) SET_by_offset(disp, _gloffset_TexEnvi, fn)
+#define CALL_TexEnviv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexEnviv, parameters)
+#define GET_TexEnviv(disp) GET_by_offset(disp, _gloffset_TexEnviv)
+#define SET_TexEnviv(disp, fn) SET_by_offset(disp, _gloffset_TexEnviv, fn)
+#define CALL_TexGend(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble)), _gloffset_TexGend, parameters)
+#define GET_TexGend(disp) GET_by_offset(disp, _gloffset_TexGend)
+#define SET_TexGend(disp, fn) SET_by_offset(disp, _gloffset_TexGend, fn)
+#define CALL_TexGendv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLdouble *)), _gloffset_TexGendv, parameters)
+#define GET_TexGendv(disp) GET_by_offset(disp, _gloffset_TexGendv)
+#define SET_TexGendv(disp, fn) SET_by_offset(disp, _gloffset_TexGendv, fn)
+#define CALL_TexGenfOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexGenfOES, parameters)
+#define GET_TexGenfOES(disp) GET_by_offset(disp, _gloffset_TexGenfOES)
+#define SET_TexGenfOES(disp, fn) SET_by_offset(disp, _gloffset_TexGenfOES, fn)
+#define CALL_TexGenfvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexGenfvOES, parameters)
+#define GET_TexGenfvOES(disp) GET_by_offset(disp, _gloffset_TexGenfvOES)
+#define SET_TexGenfvOES(disp, fn) SET_by_offset(disp, _gloffset_TexGenfvOES, fn)
+#define CALL_TexGeniOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexGeniOES, parameters)
+#define GET_TexGeniOES(disp) GET_by_offset(disp, _gloffset_TexGeniOES)
+#define SET_TexGeniOES(disp, fn) SET_by_offset(disp, _gloffset_TexGeniOES, fn)
+#define CALL_TexGenivOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexGenivOES, parameters)
+#define GET_TexGenivOES(disp) GET_by_offset(disp, _gloffset_TexGenivOES)
+#define SET_TexGenivOES(disp, fn) SET_by_offset(disp, _gloffset_TexGenivOES, fn)
+#define CALL_FeedbackBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLenum, GLfloat *)), _gloffset_FeedbackBuffer, parameters)
+#define GET_FeedbackBuffer(disp) GET_by_offset(disp, _gloffset_FeedbackBuffer)
+#define SET_FeedbackBuffer(disp, fn) SET_by_offset(disp, _gloffset_FeedbackBuffer, fn)
+#define CALL_SelectBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_SelectBuffer, parameters)
+#define GET_SelectBuffer(disp) GET_by_offset(disp, _gloffset_SelectBuffer)
+#define SET_SelectBuffer(disp, fn) SET_by_offset(disp, _gloffset_SelectBuffer, fn)
+#define CALL_RenderMode(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLenum)), _gloffset_RenderMode, parameters)
+#define GET_RenderMode(disp) GET_by_offset(disp, _gloffset_RenderMode)
+#define SET_RenderMode(disp, fn) SET_by_offset(disp, _gloffset_RenderMode, fn)
+#define CALL_InitNames(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_InitNames, parameters)
+#define GET_InitNames(disp) GET_by_offset(disp, _gloffset_InitNames)
+#define SET_InitNames(disp, fn) SET_by_offset(disp, _gloffset_InitNames, fn)
+#define CALL_LoadName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_LoadName, parameters)
+#define GET_LoadName(disp) GET_by_offset(disp, _gloffset_LoadName)
+#define SET_LoadName(disp, fn) SET_by_offset(disp, _gloffset_LoadName, fn)
+#define CALL_PassThrough(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_PassThrough, parameters)
+#define GET_PassThrough(disp) GET_by_offset(disp, _gloffset_PassThrough)
+#define SET_PassThrough(disp, fn) SET_by_offset(disp, _gloffset_PassThrough, fn)
+#define CALL_PopName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopName, parameters)
+#define GET_PopName(disp) GET_by_offset(disp, _gloffset_PopName)
+#define SET_PopName(disp, fn) SET_by_offset(disp, _gloffset_PopName, fn)
+#define CALL_PushName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_PushName, parameters)
+#define GET_PushName(disp) GET_by_offset(disp, _gloffset_PushName)
+#define SET_PushName(disp, fn) SET_by_offset(disp, _gloffset_PushName, fn)
+#define CALL_DrawBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DrawBuffer, parameters)
+#define GET_DrawBuffer(disp) GET_by_offset(disp, _gloffset_DrawBuffer)
+#define SET_DrawBuffer(disp, fn) SET_by_offset(disp, _gloffset_DrawBuffer, fn)
+#define CALL_Clear(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_Clear, parameters)
+#define GET_Clear(disp) GET_by_offset(disp, _gloffset_Clear)
+#define SET_Clear(disp, fn) SET_by_offset(disp, _gloffset_Clear, fn)
+#define CALL_ClearAccum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_ClearAccum, parameters)
+#define GET_ClearAccum(disp) GET_by_offset(disp, _gloffset_ClearAccum)
+#define SET_ClearAccum(disp, fn) SET_by_offset(disp, _gloffset_ClearAccum, fn)
+#define CALL_ClearIndex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_ClearIndex, parameters)
+#define GET_ClearIndex(disp) GET_by_offset(disp, _gloffset_ClearIndex)
+#define SET_ClearIndex(disp, fn) SET_by_offset(disp, _gloffset_ClearIndex, fn)
+#define CALL_ClearColor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf, GLclampf, GLclampf)), _gloffset_ClearColor, parameters)
+#define GET_ClearColor(disp) GET_by_offset(disp, _gloffset_ClearColor)
+#define SET_ClearColor(disp, fn) SET_by_offset(disp, _gloffset_ClearColor, fn)
+#define CALL_ClearStencil(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_ClearStencil, parameters)
+#define GET_ClearStencil(disp) GET_by_offset(disp, _gloffset_ClearStencil)
+#define SET_ClearStencil(disp, fn) SET_by_offset(disp, _gloffset_ClearStencil, fn)
+#define CALL_ClearDepth(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd)), _gloffset_ClearDepth, parameters)
+#define GET_ClearDepth(disp) GET_by_offset(disp, _gloffset_ClearDepth)
+#define SET_ClearDepth(disp, fn) SET_by_offset(disp, _gloffset_ClearDepth, fn)
+#define CALL_StencilMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_StencilMask, parameters)
+#define GET_StencilMask(disp) GET_by_offset(disp, _gloffset_StencilMask)
+#define SET_StencilMask(disp, fn) SET_by_offset(disp, _gloffset_StencilMask, fn)
+#define CALL_ColorMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean, GLboolean, GLboolean, GLboolean)), _gloffset_ColorMask, parameters)
+#define GET_ColorMask(disp) GET_by_offset(disp, _gloffset_ColorMask)
+#define SET_ColorMask(disp, fn) SET_by_offset(disp, _gloffset_ColorMask, fn)
+#define CALL_DepthMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean)), _gloffset_DepthMask, parameters)
+#define GET_DepthMask(disp) GET_by_offset(disp, _gloffset_DepthMask)
+#define SET_DepthMask(disp, fn) SET_by_offset(disp, _gloffset_DepthMask, fn)
+#define CALL_IndexMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_IndexMask, parameters)
+#define GET_IndexMask(disp) GET_by_offset(disp, _gloffset_IndexMask)
+#define SET_IndexMask(disp, fn) SET_by_offset(disp, _gloffset_IndexMask, fn)
+#define CALL_Accum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_Accum, parameters)
+#define GET_Accum(disp) GET_by_offset(disp, _gloffset_Accum)
+#define SET_Accum(disp, fn) SET_by_offset(disp, _gloffset_Accum, fn)
+#define CALL_Disable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Disable, parameters)
+#define GET_Disable(disp) GET_by_offset(disp, _gloffset_Disable)
+#define SET_Disable(disp, fn) SET_by_offset(disp, _gloffset_Disable, fn)
+#define CALL_Enable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Enable, parameters)
+#define GET_Enable(disp) GET_by_offset(disp, _gloffset_Enable)
+#define SET_Enable(disp, fn) SET_by_offset(disp, _gloffset_Enable, fn)
+#define CALL_Finish(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_Finish, parameters)
+#define GET_Finish(disp) GET_by_offset(disp, _gloffset_Finish)
+#define SET_Finish(disp, fn) SET_by_offset(disp, _gloffset_Finish, fn)
+#define CALL_Flush(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_Flush, parameters)
+#define GET_Flush(disp) GET_by_offset(disp, _gloffset_Flush)
+#define SET_Flush(disp, fn) SET_by_offset(disp, _gloffset_Flush, fn)
+#define CALL_PopAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopAttrib, parameters)
+#define GET_PopAttrib(disp) GET_by_offset(disp, _gloffset_PopAttrib)
+#define SET_PopAttrib(disp, fn) SET_by_offset(disp, _gloffset_PopAttrib, fn)
+#define CALL_PushAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_PushAttrib, parameters)
+#define GET_PushAttrib(disp) GET_by_offset(disp, _gloffset_PushAttrib)
+#define SET_PushAttrib(disp, fn) SET_by_offset(disp, _gloffset_PushAttrib, fn)
+#define CALL_Map1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLint, GLint, const GLdouble *)), _gloffset_Map1d, parameters)
+#define GET_Map1d(disp) GET_by_offset(disp, _gloffset_Map1d)
+#define SET_Map1d(disp, fn) SET_by_offset(disp, _gloffset_Map1d, fn)
+#define CALL_Map1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLint, GLint, const GLfloat *)), _gloffset_Map1f, parameters)
+#define GET_Map1f(disp) GET_by_offset(disp, _gloffset_Map1f)
+#define SET_Map1f(disp, fn) SET_by_offset(disp, _gloffset_Map1f, fn)
+#define CALL_Map2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, const GLdouble *)), _gloffset_Map2d, parameters)
+#define GET_Map2d(disp) GET_by_offset(disp, _gloffset_Map2d)
+#define SET_Map2d(disp, fn) SET_by_offset(disp, _gloffset_Map2d, fn)
+#define CALL_Map2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, const GLfloat *)), _gloffset_Map2f, parameters)
+#define GET_Map2f(disp) GET_by_offset(disp, _gloffset_Map2f)
+#define SET_Map2f(disp, fn) SET_by_offset(disp, _gloffset_Map2f, fn)
+#define CALL_MapGrid1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLdouble, GLdouble)), _gloffset_MapGrid1d, parameters)
+#define GET_MapGrid1d(disp) GET_by_offset(disp, _gloffset_MapGrid1d)
+#define SET_MapGrid1d(disp, fn) SET_by_offset(disp, _gloffset_MapGrid1d, fn)
+#define CALL_MapGrid1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat)), _gloffset_MapGrid1f, parameters)
+#define GET_MapGrid1f(disp) GET_by_offset(disp, _gloffset_MapGrid1f)
+#define SET_MapGrid1f(disp, fn) SET_by_offset(disp, _gloffset_MapGrid1f, fn)
+#define CALL_MapGrid2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLdouble, GLdouble, GLint, GLdouble, GLdouble)), _gloffset_MapGrid2d, parameters)
+#define GET_MapGrid2d(disp) GET_by_offset(disp, _gloffset_MapGrid2d)
+#define SET_MapGrid2d(disp, fn) SET_by_offset(disp, _gloffset_MapGrid2d, fn)
+#define CALL_MapGrid2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLint, GLfloat, GLfloat)), _gloffset_MapGrid2f, parameters)
+#define GET_MapGrid2f(disp) GET_by_offset(disp, _gloffset_MapGrid2f)
+#define SET_MapGrid2f(disp, fn) SET_by_offset(disp, _gloffset_MapGrid2f, fn)
+#define CALL_EvalCoord1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_EvalCoord1d, parameters)
+#define GET_EvalCoord1d(disp) GET_by_offset(disp, _gloffset_EvalCoord1d)
+#define SET_EvalCoord1d(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1d, fn)
+#define CALL_EvalCoord1dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_EvalCoord1dv, parameters)
+#define GET_EvalCoord1dv(disp) GET_by_offset(disp, _gloffset_EvalCoord1dv)
+#define SET_EvalCoord1dv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1dv, fn)
+#define CALL_EvalCoord1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_EvalCoord1f, parameters)
+#define GET_EvalCoord1f(disp) GET_by_offset(disp, _gloffset_EvalCoord1f)
+#define SET_EvalCoord1f(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1f, fn)
+#define CALL_EvalCoord1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_EvalCoord1fv, parameters)
+#define GET_EvalCoord1fv(disp) GET_by_offset(disp, _gloffset_EvalCoord1fv)
+#define SET_EvalCoord1fv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1fv, fn)
+#define CALL_EvalCoord2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_EvalCoord2d, parameters)
+#define GET_EvalCoord2d(disp) GET_by_offset(disp, _gloffset_EvalCoord2d)
+#define SET_EvalCoord2d(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2d, fn)
+#define CALL_EvalCoord2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_EvalCoord2dv, parameters)
+#define GET_EvalCoord2dv(disp) GET_by_offset(disp, _gloffset_EvalCoord2dv)
+#define SET_EvalCoord2dv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2dv, fn)
+#define CALL_EvalCoord2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_EvalCoord2f, parameters)
+#define GET_EvalCoord2f(disp) GET_by_offset(disp, _gloffset_EvalCoord2f)
+#define SET_EvalCoord2f(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2f, fn)
+#define CALL_EvalCoord2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_EvalCoord2fv, parameters)
+#define GET_EvalCoord2fv(disp) GET_by_offset(disp, _gloffset_EvalCoord2fv)
+#define SET_EvalCoord2fv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2fv, fn)
+#define CALL_EvalMesh1(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint)), _gloffset_EvalMesh1, parameters)
+#define GET_EvalMesh1(disp) GET_by_offset(disp, _gloffset_EvalMesh1)
+#define SET_EvalMesh1(disp, fn) SET_by_offset(disp, _gloffset_EvalMesh1, fn)
+#define CALL_EvalPoint1(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_EvalPoint1, parameters)
+#define GET_EvalPoint1(disp) GET_by_offset(disp, _gloffset_EvalPoint1)
+#define SET_EvalPoint1(disp, fn) SET_by_offset(disp, _gloffset_EvalPoint1, fn)
+#define CALL_EvalMesh2(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint)), _gloffset_EvalMesh2, parameters)
+#define GET_EvalMesh2(disp) GET_by_offset(disp, _gloffset_EvalMesh2)
+#define SET_EvalMesh2(disp, fn) SET_by_offset(disp, _gloffset_EvalMesh2, fn)
+#define CALL_EvalPoint2(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_EvalPoint2, parameters)
+#define GET_EvalPoint2(disp) GET_by_offset(disp, _gloffset_EvalPoint2)
+#define SET_EvalPoint2(disp, fn) SET_by_offset(disp, _gloffset_EvalPoint2, fn)
+#define CALL_AlphaFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLclampf)), _gloffset_AlphaFunc, parameters)
+#define GET_AlphaFunc(disp) GET_by_offset(disp, _gloffset_AlphaFunc)
+#define SET_AlphaFunc(disp, fn) SET_by_offset(disp, _gloffset_AlphaFunc, fn)
+#define CALL_BlendFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_BlendFunc, parameters)
+#define GET_BlendFunc(disp) GET_by_offset(disp, _gloffset_BlendFunc)
+#define SET_BlendFunc(disp, fn) SET_by_offset(disp, _gloffset_BlendFunc, fn)
+#define CALL_LogicOp(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_LogicOp, parameters)
+#define GET_LogicOp(disp) GET_by_offset(disp, _gloffset_LogicOp)
+#define SET_LogicOp(disp, fn) SET_by_offset(disp, _gloffset_LogicOp, fn)
+#define CALL_StencilFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLuint)), _gloffset_StencilFunc, parameters)
+#define GET_StencilFunc(disp) GET_by_offset(disp, _gloffset_StencilFunc)
+#define SET_StencilFunc(disp, fn) SET_by_offset(disp, _gloffset_StencilFunc, fn)
+#define CALL_StencilOp(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum)), _gloffset_StencilOp, parameters)
+#define GET_StencilOp(disp) GET_by_offset(disp, _gloffset_StencilOp)
+#define SET_StencilOp(disp, fn) SET_by_offset(disp, _gloffset_StencilOp, fn)
+#define CALL_DepthFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DepthFunc, parameters)
+#define GET_DepthFunc(disp) GET_by_offset(disp, _gloffset_DepthFunc)
+#define SET_DepthFunc(disp, fn) SET_by_offset(disp, _gloffset_DepthFunc, fn)
+#define CALL_PixelZoom(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_PixelZoom, parameters)
+#define GET_PixelZoom(disp) GET_by_offset(disp, _gloffset_PixelZoom)
+#define SET_PixelZoom(disp, fn) SET_by_offset(disp, _gloffset_PixelZoom, fn)
+#define CALL_PixelTransferf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_PixelTransferf, parameters)
+#define GET_PixelTransferf(disp) GET_by_offset(disp, _gloffset_PixelTransferf)
+#define SET_PixelTransferf(disp, fn) SET_by_offset(disp, _gloffset_PixelTransferf, fn)
+#define CALL_PixelTransferi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_PixelTransferi, parameters)
+#define GET_PixelTransferi(disp) GET_by_offset(disp, _gloffset_PixelTransferi)
+#define SET_PixelTransferi(disp, fn) SET_by_offset(disp, _gloffset_PixelTransferi, fn)
+#define CALL_PixelStoref(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_PixelStoref, parameters)
+#define GET_PixelStoref(disp) GET_by_offset(disp, _gloffset_PixelStoref)
+#define SET_PixelStoref(disp, fn) SET_by_offset(disp, _gloffset_PixelStoref, fn)
+#define CALL_PixelStorei(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_PixelStorei, parameters)
+#define GET_PixelStorei(disp) GET_by_offset(disp, _gloffset_PixelStorei)
+#define SET_PixelStorei(disp, fn) SET_by_offset(disp, _gloffset_PixelStorei, fn)
+#define CALL_PixelMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLfloat *)), _gloffset_PixelMapfv, parameters)
+#define GET_PixelMapfv(disp) GET_by_offset(disp, _gloffset_PixelMapfv)
+#define SET_PixelMapfv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapfv, fn)
+#define CALL_PixelMapuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLuint *)), _gloffset_PixelMapuiv, parameters)
+#define GET_PixelMapuiv(disp) GET_by_offset(disp, _gloffset_PixelMapuiv)
+#define SET_PixelMapuiv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapuiv, fn)
+#define CALL_PixelMapusv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLushort *)), _gloffset_PixelMapusv, parameters)
+#define GET_PixelMapusv(disp) GET_by_offset(disp, _gloffset_PixelMapusv)
+#define SET_PixelMapusv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapusv, fn)
+#define CALL_ReadBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ReadBuffer, parameters)
+#define GET_ReadBuffer(disp) GET_by_offset(disp, _gloffset_ReadBuffer)
+#define SET_ReadBuffer(disp, fn) SET_by_offset(disp, _gloffset_ReadBuffer, fn)
+#define CALL_CopyPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei, GLenum)), _gloffset_CopyPixels, parameters)
+#define GET_CopyPixels(disp) GET_by_offset(disp, _gloffset_CopyPixels)
+#define SET_CopyPixels(disp, fn) SET_by_offset(disp, _gloffset_CopyPixels, fn)
+#define CALL_ReadPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid *)), _gloffset_ReadPixels, parameters)
+#define GET_ReadPixels(disp) GET_by_offset(disp, _gloffset_ReadPixels)
+#define SET_ReadPixels(disp, fn) SET_by_offset(disp, _gloffset_ReadPixels, fn)
+#define CALL_DrawPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_DrawPixels, parameters)
+#define GET_DrawPixels(disp) GET_by_offset(disp, _gloffset_DrawPixels)
+#define SET_DrawPixels(disp, fn) SET_by_offset(disp, _gloffset_DrawPixels, fn)
+#define CALL_GetBooleanv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean *)), _gloffset_GetBooleanv, parameters)
+#define GET_GetBooleanv(disp) GET_by_offset(disp, _gloffset_GetBooleanv)
+#define SET_GetBooleanv(disp, fn) SET_by_offset(disp, _gloffset_GetBooleanv, fn)
+#define CALL_GetClipPlane(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), _gloffset_GetClipPlane, parameters)
+#define GET_GetClipPlane(disp) GET_by_offset(disp, _gloffset_GetClipPlane)
+#define SET_GetClipPlane(disp, fn) SET_by_offset(disp, _gloffset_GetClipPlane, fn)
+#define CALL_GetDoublev(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), _gloffset_GetDoublev, parameters)
+#define GET_GetDoublev(disp) GET_by_offset(disp, _gloffset_GetDoublev)
+#define SET_GetDoublev(disp, fn) SET_by_offset(disp, _gloffset_GetDoublev, fn)
+#define CALL_GetError(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(void)), _gloffset_GetError, parameters)
+#define GET_GetError(disp) GET_by_offset(disp, _gloffset_GetError)
+#define SET_GetError(disp, fn) SET_by_offset(disp, _gloffset_GetError, fn)
+#define CALL_GetFloatv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), _gloffset_GetFloatv, parameters)
+#define GET_GetFloatv(disp) GET_by_offset(disp, _gloffset_GetFloatv)
+#define SET_GetFloatv(disp, fn) SET_by_offset(disp, _gloffset_GetFloatv, fn)
+#define CALL_GetIntegerv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), _gloffset_GetIntegerv, parameters)
+#define GET_GetIntegerv(disp) GET_by_offset(disp, _gloffset_GetIntegerv)
+#define SET_GetIntegerv(disp, fn) SET_by_offset(disp, _gloffset_GetIntegerv, fn)
+#define CALL_GetLightfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetLightfv, parameters)
+#define GET_GetLightfv(disp) GET_by_offset(disp, _gloffset_GetLightfv)
+#define SET_GetLightfv(disp, fn) SET_by_offset(disp, _gloffset_GetLightfv, fn)
+#define CALL_GetLightiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetLightiv, parameters)
+#define GET_GetLightiv(disp) GET_by_offset(disp, _gloffset_GetLightiv)
+#define SET_GetLightiv(disp, fn) SET_by_offset(disp, _gloffset_GetLightiv, fn)
+#define CALL_GetMapdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble *)), _gloffset_GetMapdv, parameters)
+#define GET_GetMapdv(disp) GET_by_offset(disp, _gloffset_GetMapdv)
+#define SET_GetMapdv(disp, fn) SET_by_offset(disp, _gloffset_GetMapdv, fn)
+#define CALL_GetMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMapfv, parameters)
+#define GET_GetMapfv(disp) GET_by_offset(disp, _gloffset_GetMapfv)
+#define SET_GetMapfv(disp, fn) SET_by_offset(disp, _gloffset_GetMapfv, fn)
+#define CALL_GetMapiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMapiv, parameters)
+#define GET_GetMapiv(disp) GET_by_offset(disp, _gloffset_GetMapiv)
+#define SET_GetMapiv(disp, fn) SET_by_offset(disp, _gloffset_GetMapiv, fn)
+#define CALL_GetMaterialfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMaterialfv, parameters)
+#define GET_GetMaterialfv(disp) GET_by_offset(disp, _gloffset_GetMaterialfv)
+#define SET_GetMaterialfv(disp, fn) SET_by_offset(disp, _gloffset_GetMaterialfv, fn)
+#define CALL_GetMaterialiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMaterialiv, parameters)
+#define GET_GetMaterialiv(disp) GET_by_offset(disp, _gloffset_GetMaterialiv)
+#define SET_GetMaterialiv(disp, fn) SET_by_offset(disp, _gloffset_GetMaterialiv, fn)
+#define CALL_GetPixelMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), _gloffset_GetPixelMapfv, parameters)
+#define GET_GetPixelMapfv(disp) GET_by_offset(disp, _gloffset_GetPixelMapfv)
+#define SET_GetPixelMapfv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapfv, fn)
+#define CALL_GetPixelMapuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint *)), _gloffset_GetPixelMapuiv, parameters)
+#define GET_GetPixelMapuiv(disp) GET_by_offset(disp, _gloffset_GetPixelMapuiv)
+#define SET_GetPixelMapuiv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapuiv, fn)
+#define CALL_GetPixelMapusv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLushort *)), _gloffset_GetPixelMapusv, parameters)
+#define GET_GetPixelMapusv(disp) GET_by_offset(disp, _gloffset_GetPixelMapusv)
+#define SET_GetPixelMapusv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapusv, fn)
+#define CALL_GetPolygonStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte *)), _gloffset_GetPolygonStipple, parameters)
+#define GET_GetPolygonStipple(disp) GET_by_offset(disp, _gloffset_GetPolygonStipple)
+#define SET_GetPolygonStipple(disp, fn) SET_by_offset(disp, _gloffset_GetPolygonStipple, fn)
+#define CALL_GetString(disp, parameters) CALL_by_offset(disp, (const GLubyte * (GLAPIENTRYP)(GLenum)), _gloffset_GetString, parameters)
+#define GET_GetString(disp) GET_by_offset(disp, _gloffset_GetString)
+#define SET_GetString(disp, fn) SET_by_offset(disp, _gloffset_GetString, fn)
+#define CALL_GetTexEnvfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexEnvfv, parameters)
+#define GET_GetTexEnvfv(disp) GET_by_offset(disp, _gloffset_GetTexEnvfv)
+#define SET_GetTexEnvfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexEnvfv, fn)
+#define CALL_GetTexEnviv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexEnviv, parameters)
+#define GET_GetTexEnviv(disp) GET_by_offset(disp, _gloffset_GetTexEnviv)
+#define SET_GetTexEnviv(disp, fn) SET_by_offset(disp, _gloffset_GetTexEnviv, fn)
+#define CALL_GetTexGendv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble *)), _gloffset_GetTexGendv, parameters)
+#define GET_GetTexGendv(disp) GET_by_offset(disp, _gloffset_GetTexGendv)
+#define SET_GetTexGendv(disp, fn) SET_by_offset(disp, _gloffset_GetTexGendv, fn)
+#define CALL_GetTexGenfvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexGenfvOES, parameters)
+#define GET_GetTexGenfvOES(disp) GET_by_offset(disp, _gloffset_GetTexGenfvOES)
+#define SET_GetTexGenfvOES(disp, fn) SET_by_offset(disp, _gloffset_GetTexGenfvOES, fn)
+#define CALL_GetTexGenivOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexGenivOES, parameters)
+#define GET_GetTexGenivOES(disp) GET_by_offset(disp, _gloffset_GetTexGenivOES)
+#define SET_GetTexGenivOES(disp, fn) SET_by_offset(disp, _gloffset_GetTexGenivOES, fn)
+#define CALL_GetTexImage(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLenum, GLvoid *)), _gloffset_GetTexImage, parameters)
+#define GET_GetTexImage(disp) GET_by_offset(disp, _gloffset_GetTexImage)
+#define SET_GetTexImage(disp, fn) SET_by_offset(disp, _gloffset_GetTexImage, fn)
+#define CALL_GetTexParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexParameterfv, parameters)
+#define GET_GetTexParameterfv(disp) GET_by_offset(disp, _gloffset_GetTexParameterfv)
+#define SET_GetTexParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexParameterfv, fn)
+#define CALL_GetTexParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexParameteriv, parameters)
+#define GET_GetTexParameteriv(disp) GET_by_offset(disp, _gloffset_GetTexParameteriv)
+#define SET_GetTexParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetTexParameteriv, fn)
+#define CALL_GetTexLevelParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLfloat *)), _gloffset_GetTexLevelParameterfv, parameters)
+#define GET_GetTexLevelParameterfv(disp) GET_by_offset(disp, _gloffset_GetTexLevelParameterfv)
+#define SET_GetTexLevelParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexLevelParameterfv, fn)
+#define CALL_GetTexLevelParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint *)), _gloffset_GetTexLevelParameteriv, parameters)
+#define GET_GetTexLevelParameteriv(disp) GET_by_offset(disp, _gloffset_GetTexLevelParameteriv)
+#define SET_GetTexLevelParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetTexLevelParameteriv, fn)
+#define CALL_IsEnabled(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), _gloffset_IsEnabled, parameters)
+#define GET_IsEnabled(disp) GET_by_offset(disp, _gloffset_IsEnabled)
+#define SET_IsEnabled(disp, fn) SET_by_offset(disp, _gloffset_IsEnabled, fn)
+#define CALL_IsList(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsList, parameters)
+#define GET_IsList(disp) GET_by_offset(disp, _gloffset_IsList)
+#define SET_IsList(disp, fn) SET_by_offset(disp, _gloffset_IsList, fn)
+#define CALL_DepthRange(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd, GLclampd)), _gloffset_DepthRange, parameters)
+#define GET_DepthRange(disp) GET_by_offset(disp, _gloffset_DepthRange)
+#define SET_DepthRange(disp, fn) SET_by_offset(disp, _gloffset_DepthRange, fn)
+#define CALL_Frustum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Frustum, parameters)
+#define GET_Frustum(disp) GET_by_offset(disp, _gloffset_Frustum)
+#define SET_Frustum(disp, fn) SET_by_offset(disp, _gloffset_Frustum, fn)
+#define CALL_LoadIdentity(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_LoadIdentity, parameters)
+#define GET_LoadIdentity(disp) GET_by_offset(disp, _gloffset_LoadIdentity)
+#define SET_LoadIdentity(disp, fn) SET_by_offset(disp, _gloffset_LoadIdentity, fn)
+#define CALL_LoadMatrixf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_LoadMatrixf, parameters)
+#define GET_LoadMatrixf(disp) GET_by_offset(disp, _gloffset_LoadMatrixf)
+#define SET_LoadMatrixf(disp, fn) SET_by_offset(disp, _gloffset_LoadMatrixf, fn)
+#define CALL_LoadMatrixd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_LoadMatrixd, parameters)
+#define GET_LoadMatrixd(disp) GET_by_offset(disp, _gloffset_LoadMatrixd)
+#define SET_LoadMatrixd(disp, fn) SET_by_offset(disp, _gloffset_LoadMatrixd, fn)
+#define CALL_MatrixMode(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_MatrixMode, parameters)
+#define GET_MatrixMode(disp) GET_by_offset(disp, _gloffset_MatrixMode)
+#define SET_MatrixMode(disp, fn) SET_by_offset(disp, _gloffset_MatrixMode, fn)
+#define CALL_MultMatrixf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_MultMatrixf, parameters)
+#define GET_MultMatrixf(disp) GET_by_offset(disp, _gloffset_MultMatrixf)
+#define SET_MultMatrixf(disp, fn) SET_by_offset(disp, _gloffset_MultMatrixf, fn)
+#define CALL_MultMatrixd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_MultMatrixd, parameters)
+#define GET_MultMatrixd(disp) GET_by_offset(disp, _gloffset_MultMatrixd)
+#define SET_MultMatrixd(disp, fn) SET_by_offset(disp, _gloffset_MultMatrixd, fn)
+#define CALL_Ortho(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Ortho, parameters)
+#define GET_Ortho(disp) GET_by_offset(disp, _gloffset_Ortho)
+#define SET_Ortho(disp, fn) SET_by_offset(disp, _gloffset_Ortho, fn)
+#define CALL_PopMatrix(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopMatrix, parameters)
+#define GET_PopMatrix(disp) GET_by_offset(disp, _gloffset_PopMatrix)
+#define SET_PopMatrix(disp, fn) SET_by_offset(disp, _gloffset_PopMatrix, fn)
+#define CALL_PushMatrix(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PushMatrix, parameters)
+#define GET_PushMatrix(disp) GET_by_offset(disp, _gloffset_PushMatrix)
+#define SET_PushMatrix(disp, fn) SET_by_offset(disp, _gloffset_PushMatrix, fn)
+#define CALL_Rotated(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Rotated, parameters)
+#define GET_Rotated(disp) GET_by_offset(disp, _gloffset_Rotated)
+#define SET_Rotated(disp, fn) SET_by_offset(disp, _gloffset_Rotated, fn)
+#define CALL_Rotatef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Rotatef, parameters)
+#define GET_Rotatef(disp) GET_by_offset(disp, _gloffset_Rotatef)
+#define SET_Rotatef(disp, fn) SET_by_offset(disp, _gloffset_Rotatef, fn)
+#define CALL_Scaled(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Scaled, parameters)
+#define GET_Scaled(disp) GET_by_offset(disp, _gloffset_Scaled)
+#define SET_Scaled(disp, fn) SET_by_offset(disp, _gloffset_Scaled, fn)
+#define CALL_Scalef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Scalef, parameters)
+#define GET_Scalef(disp) GET_by_offset(disp, _gloffset_Scalef)
+#define SET_Scalef(disp, fn) SET_by_offset(disp, _gloffset_Scalef, fn)
+#define CALL_Translated(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Translated, parameters)
+#define GET_Translated(disp) GET_by_offset(disp, _gloffset_Translated)
+#define SET_Translated(disp, fn) SET_by_offset(disp, _gloffset_Translated, fn)
+#define CALL_Translatef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Translatef, parameters)
+#define GET_Translatef(disp) GET_by_offset(disp, _gloffset_Translatef)
+#define SET_Translatef(disp, fn) SET_by_offset(disp, _gloffset_Translatef, fn)
+#define CALL_Viewport(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei)), _gloffset_Viewport, parameters)
+#define GET_Viewport(disp) GET_by_offset(disp, _gloffset_Viewport)
+#define SET_Viewport(disp, fn) SET_by_offset(disp, _gloffset_Viewport, fn)
+#define CALL_ArrayElement(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_ArrayElement, parameters)
+#define GET_ArrayElement(disp) GET_by_offset(disp, _gloffset_ArrayElement)
+#define SET_ArrayElement(disp, fn) SET_by_offset(disp, _gloffset_ArrayElement, fn)
+#define CALL_BindTexture(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindTexture, parameters)
+#define GET_BindTexture(disp) GET_by_offset(disp, _gloffset_BindTexture)
+#define SET_BindTexture(disp, fn) SET_by_offset(disp, _gloffset_BindTexture, fn)
+#define CALL_ColorPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_ColorPointer, parameters)
+#define GET_ColorPointer(disp) GET_by_offset(disp, _gloffset_ColorPointer)
+#define SET_ColorPointer(disp, fn) SET_by_offset(disp, _gloffset_ColorPointer, fn)
+#define CALL_DisableClientState(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DisableClientState, parameters)
+#define GET_DisableClientState(disp) GET_by_offset(disp, _gloffset_DisableClientState)
+#define SET_DisableClientState(disp, fn) SET_by_offset(disp, _gloffset_DisableClientState, fn)
+#define CALL_DrawArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei)), _gloffset_DrawArrays, parameters)
+#define GET_DrawArrays(disp) GET_by_offset(disp, _gloffset_DrawArrays)
+#define SET_DrawArrays(disp, fn) SET_by_offset(disp, _gloffset_DrawArrays, fn)
+#define CALL_DrawElements(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *)), _gloffset_DrawElements, parameters)
+#define GET_DrawElements(disp) GET_by_offset(disp, _gloffset_DrawElements)
+#define SET_DrawElements(disp, fn) SET_by_offset(disp, _gloffset_DrawElements, fn)
+#define CALL_EdgeFlagPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLvoid *)), _gloffset_EdgeFlagPointer, parameters)
+#define GET_EdgeFlagPointer(disp) GET_by_offset(disp, _gloffset_EdgeFlagPointer)
+#define SET_EdgeFlagPointer(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlagPointer, fn)
+#define CALL_EnableClientState(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_EnableClientState, parameters)
+#define GET_EnableClientState(disp) GET_by_offset(disp, _gloffset_EnableClientState)
+#define SET_EnableClientState(disp, fn) SET_by_offset(disp, _gloffset_EnableClientState, fn)
+#define CALL_IndexPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_IndexPointer, parameters)
+#define GET_IndexPointer(disp) GET_by_offset(disp, _gloffset_IndexPointer)
+#define SET_IndexPointer(disp, fn) SET_by_offset(disp, _gloffset_IndexPointer, fn)
+#define CALL_Indexub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte)), _gloffset_Indexub, parameters)
+#define GET_Indexub(disp) GET_by_offset(disp, _gloffset_Indexub)
+#define SET_Indexub(disp, fn) SET_by_offset(disp, _gloffset_Indexub, fn)
+#define CALL_Indexubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Indexubv, parameters)
+#define GET_Indexubv(disp) GET_by_offset(disp, _gloffset_Indexubv)
+#define SET_Indexubv(disp, fn) SET_by_offset(disp, _gloffset_Indexubv, fn)
+#define CALL_InterleavedArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_InterleavedArrays, parameters)
+#define GET_InterleavedArrays(disp) GET_by_offset(disp, _gloffset_InterleavedArrays)
+#define SET_InterleavedArrays(disp, fn) SET_by_offset(disp, _gloffset_InterleavedArrays, fn)
+#define CALL_NormalPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_NormalPointer, parameters)
+#define GET_NormalPointer(disp) GET_by_offset(disp, _gloffset_NormalPointer)
+#define SET_NormalPointer(disp, fn) SET_by_offset(disp, _gloffset_NormalPointer, fn)
+#define CALL_PolygonOffset(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_PolygonOffset, parameters)
+#define GET_PolygonOffset(disp) GET_by_offset(disp, _gloffset_PolygonOffset)
+#define SET_PolygonOffset(disp, fn) SET_by_offset(disp, _gloffset_PolygonOffset, fn)
+#define CALL_TexCoordPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_TexCoordPointer, parameters)
+#define GET_TexCoordPointer(disp) GET_by_offset(disp, _gloffset_TexCoordPointer)
+#define SET_TexCoordPointer(disp, fn) SET_by_offset(disp, _gloffset_TexCoordPointer, fn)
+#define CALL_VertexPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_VertexPointer, parameters)
+#define GET_VertexPointer(disp) GET_by_offset(disp, _gloffset_VertexPointer)
+#define SET_VertexPointer(disp, fn) SET_by_offset(disp, _gloffset_VertexPointer, fn)
+#define CALL_AreTexturesResident(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsizei, const GLuint *, GLboolean *)), _gloffset_AreTexturesResident, parameters)
+#define GET_AreTexturesResident(disp) GET_by_offset(disp, _gloffset_AreTexturesResident)
+#define SET_AreTexturesResident(disp, fn) SET_by_offset(disp, _gloffset_AreTexturesResident, fn)
+#define CALL_CopyTexImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint)), _gloffset_CopyTexImage1D, parameters)
+#define GET_CopyTexImage1D(disp) GET_by_offset(disp, _gloffset_CopyTexImage1D)
+#define SET_CopyTexImage1D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexImage1D, fn)
+#define CALL_CopyTexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint)), _gloffset_CopyTexImage2D, parameters)
+#define GET_CopyTexImage2D(disp) GET_by_offset(disp, _gloffset_CopyTexImage2D)
+#define SET_CopyTexImage2D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexImage2D, fn)
+#define CALL_CopyTexSubImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei)), _gloffset_CopyTexSubImage1D, parameters)
+#define GET_CopyTexSubImage1D(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage1D)
+#define SET_CopyTexSubImage1D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage1D, fn)
+#define CALL_CopyTexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyTexSubImage2D, parameters)
+#define GET_CopyTexSubImage2D(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage2D)
+#define SET_CopyTexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage2D, fn)
+#define CALL_DeleteTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteTextures, parameters)
+#define GET_DeleteTextures(disp) GET_by_offset(disp, _gloffset_DeleteTextures)
+#define SET_DeleteTextures(disp, fn) SET_by_offset(disp, _gloffset_DeleteTextures, fn)
+#define CALL_GenTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenTextures, parameters)
+#define GET_GenTextures(disp) GET_by_offset(disp, _gloffset_GenTextures)
+#define SET_GenTextures(disp, fn) SET_by_offset(disp, _gloffset_GenTextures, fn)
+#define CALL_GetPointerv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid **)), _gloffset_GetPointerv, parameters)
+#define GET_GetPointerv(disp) GET_by_offset(disp, _gloffset_GetPointerv)
+#define SET_GetPointerv(disp, fn) SET_by_offset(disp, _gloffset_GetPointerv, fn)
+#define CALL_IsTexture(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsTexture, parameters)
+#define GET_IsTexture(disp) GET_by_offset(disp, _gloffset_IsTexture)
+#define SET_IsTexture(disp, fn) SET_by_offset(disp, _gloffset_IsTexture, fn)
+#define CALL_PrioritizeTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *, const GLclampf *)), _gloffset_PrioritizeTextures, parameters)
+#define GET_PrioritizeTextures(disp) GET_by_offset(disp, _gloffset_PrioritizeTextures)
+#define SET_PrioritizeTextures(disp, fn) SET_by_offset(disp, _gloffset_PrioritizeTextures, fn)
+#define CALL_TexSubImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage1D, parameters)
+#define GET_TexSubImage1D(disp) GET_by_offset(disp, _gloffset_TexSubImage1D)
+#define SET_TexSubImage1D(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage1D, fn)
+#define CALL_TexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage2D, parameters)
+#define GET_TexSubImage2D(disp) GET_by_offset(disp, _gloffset_TexSubImage2D)
+#define SET_TexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage2D, fn)
+#define CALL_PopClientAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopClientAttrib, parameters)
+#define GET_PopClientAttrib(disp) GET_by_offset(disp, _gloffset_PopClientAttrib)
+#define SET_PopClientAttrib(disp, fn) SET_by_offset(disp, _gloffset_PopClientAttrib, fn)
+#define CALL_PushClientAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_PushClientAttrib, parameters)
+#define GET_PushClientAttrib(disp) GET_by_offset(disp, _gloffset_PushClientAttrib)
+#define SET_PushClientAttrib(disp, fn) SET_by_offset(disp, _gloffset_PushClientAttrib, fn)
+#define CALL_BlendColor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf, GLclampf, GLclampf)), _gloffset_BlendColor, parameters)
+#define GET_BlendColor(disp) GET_by_offset(disp, _gloffset_BlendColor)
+#define SET_BlendColor(disp, fn) SET_by_offset(disp, _gloffset_BlendColor, fn)
+#define CALL_BlendEquationOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_BlendEquationOES, parameters)
+#define GET_BlendEquationOES(disp) GET_by_offset(disp, _gloffset_BlendEquationOES)
+#define SET_BlendEquationOES(disp, fn) SET_by_offset(disp, _gloffset_BlendEquationOES, fn)
+#define CALL_DrawRangeElements(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *)), _gloffset_DrawRangeElements, parameters)
+#define GET_DrawRangeElements(disp) GET_by_offset(disp, _gloffset_DrawRangeElements)
+#define SET_DrawRangeElements(disp, fn) SET_by_offset(disp, _gloffset_DrawRangeElements, fn)
+#define CALL_ColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ColorTable, parameters)
+#define GET_ColorTable(disp) GET_by_offset(disp, _gloffset_ColorTable)
+#define SET_ColorTable(disp, fn) SET_by_offset(disp, _gloffset_ColorTable, fn)
+#define CALL_ColorTableParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_ColorTableParameterfv, parameters)
+#define GET_ColorTableParameterfv(disp) GET_by_offset(disp, _gloffset_ColorTableParameterfv)
+#define SET_ColorTableParameterfv(disp, fn) SET_by_offset(disp, _gloffset_ColorTableParameterfv, fn)
+#define CALL_ColorTableParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_ColorTableParameteriv, parameters)
+#define GET_ColorTableParameteriv(disp) GET_by_offset(disp, _gloffset_ColorTableParameteriv)
+#define SET_ColorTableParameteriv(disp, fn) SET_by_offset(disp, _gloffset_ColorTableParameteriv, fn)
+#define CALL_CopyColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei)), _gloffset_CopyColorTable, parameters)
+#define GET_CopyColorTable(disp) GET_by_offset(disp, _gloffset_CopyColorTable)
+#define SET_CopyColorTable(disp, fn) SET_by_offset(disp, _gloffset_CopyColorTable, fn)
+#define CALL_GetColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *)), _gloffset_GetColorTable, parameters)
+#define GET_GetColorTable(disp) GET_by_offset(disp, _gloffset_GetColorTable)
+#define SET_GetColorTable(disp, fn) SET_by_offset(disp, _gloffset_GetColorTable, fn)
+#define CALL_GetColorTableParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetColorTableParameterfv, parameters)
+#define GET_GetColorTableParameterfv(disp) GET_by_offset(disp, _gloffset_GetColorTableParameterfv)
+#define SET_GetColorTableParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetColorTableParameterfv, fn)
+#define CALL_GetColorTableParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetColorTableParameteriv, parameters)
+#define GET_GetColorTableParameteriv(disp) GET_by_offset(disp, _gloffset_GetColorTableParameteriv)
+#define SET_GetColorTableParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetColorTableParameteriv, fn)
+#define CALL_ColorSubTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ColorSubTable, parameters)
+#define GET_ColorSubTable(disp) GET_by_offset(disp, _gloffset_ColorSubTable)
+#define SET_ColorSubTable(disp, fn) SET_by_offset(disp, _gloffset_ColorSubTable, fn)
+#define CALL_CopyColorSubTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLint, GLint, GLsizei)), _gloffset_CopyColorSubTable, parameters)
+#define GET_CopyColorSubTable(disp) GET_by_offset(disp, _gloffset_CopyColorSubTable)
+#define SET_CopyColorSubTable(disp, fn) SET_by_offset(disp, _gloffset_CopyColorSubTable, fn)
+#define CALL_ConvolutionFilter1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ConvolutionFilter1D, parameters)
+#define GET_ConvolutionFilter1D(disp) GET_by_offset(disp, _gloffset_ConvolutionFilter1D)
+#define SET_ConvolutionFilter1D(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionFilter1D, fn)
+#define CALL_ConvolutionFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ConvolutionFilter2D, parameters)
+#define GET_ConvolutionFilter2D(disp) GET_by_offset(disp, _gloffset_ConvolutionFilter2D)
+#define SET_ConvolutionFilter2D(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionFilter2D, fn)
+#define CALL_ConvolutionParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_ConvolutionParameterf, parameters)
+#define GET_ConvolutionParameterf(disp) GET_by_offset(disp, _gloffset_ConvolutionParameterf)
+#define SET_ConvolutionParameterf(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameterf, fn)
+#define CALL_ConvolutionParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_ConvolutionParameterfv, parameters)
+#define GET_ConvolutionParameterfv(disp) GET_by_offset(disp, _gloffset_ConvolutionParameterfv)
+#define SET_ConvolutionParameterfv(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameterfv, fn)
+#define CALL_ConvolutionParameteri(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_ConvolutionParameteri, parameters)
+#define GET_ConvolutionParameteri(disp) GET_by_offset(disp, _gloffset_ConvolutionParameteri)
+#define SET_ConvolutionParameteri(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameteri, fn)
+#define CALL_ConvolutionParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_ConvolutionParameteriv, parameters)
+#define GET_ConvolutionParameteriv(disp) GET_by_offset(disp, _gloffset_ConvolutionParameteriv)
+#define SET_ConvolutionParameteriv(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameteriv, fn)
+#define CALL_CopyConvolutionFilter1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei)), _gloffset_CopyConvolutionFilter1D, parameters)
+#define GET_CopyConvolutionFilter1D(disp) GET_by_offset(disp, _gloffset_CopyConvolutionFilter1D)
+#define SET_CopyConvolutionFilter1D(disp, fn) SET_by_offset(disp, _gloffset_CopyConvolutionFilter1D, fn)
+#define CALL_CopyConvolutionFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyConvolutionFilter2D, parameters)
+#define GET_CopyConvolutionFilter2D(disp) GET_by_offset(disp, _gloffset_CopyConvolutionFilter2D)
+#define SET_CopyConvolutionFilter2D(disp, fn) SET_by_offset(disp, _gloffset_CopyConvolutionFilter2D, fn)
+#define CALL_GetConvolutionFilter(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *)), _gloffset_GetConvolutionFilter, parameters)
+#define GET_GetConvolutionFilter(disp) GET_by_offset(disp, _gloffset_GetConvolutionFilter)
+#define SET_GetConvolutionFilter(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionFilter, fn)
+#define CALL_GetConvolutionParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetConvolutionParameterfv, parameters)
+#define GET_GetConvolutionParameterfv(disp) GET_by_offset(disp, _gloffset_GetConvolutionParameterfv)
+#define SET_GetConvolutionParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionParameterfv, fn)
+#define CALL_GetConvolutionParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetConvolutionParameteriv, parameters)
+#define GET_GetConvolutionParameteriv(disp) GET_by_offset(disp, _gloffset_GetConvolutionParameteriv)
+#define SET_GetConvolutionParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionParameteriv, fn)
+#define CALL_GetSeparableFilter(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *)), _gloffset_GetSeparableFilter, parameters)
+#define GET_GetSeparableFilter(disp) GET_by_offset(disp, _gloffset_GetSeparableFilter)
+#define SET_GetSeparableFilter(disp, fn) SET_by_offset(disp, _gloffset_GetSeparableFilter, fn)
+#define CALL_SeparableFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *)), _gloffset_SeparableFilter2D, parameters)
+#define GET_SeparableFilter2D(disp) GET_by_offset(disp, _gloffset_SeparableFilter2D)
+#define SET_SeparableFilter2D(disp, fn) SET_by_offset(disp, _gloffset_SeparableFilter2D, fn)
+#define CALL_GetHistogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLvoid *)), _gloffset_GetHistogram, parameters)
+#define GET_GetHistogram(disp) GET_by_offset(disp, _gloffset_GetHistogram)
+#define SET_GetHistogram(disp, fn) SET_by_offset(disp, _gloffset_GetHistogram, fn)
+#define CALL_GetHistogramParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetHistogramParameterfv, parameters)
+#define GET_GetHistogramParameterfv(disp) GET_by_offset(disp, _gloffset_GetHistogramParameterfv)
+#define SET_GetHistogramParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetHistogramParameterfv, fn)
+#define CALL_GetHistogramParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetHistogramParameteriv, parameters)
+#define GET_GetHistogramParameteriv(disp) GET_by_offset(disp, _gloffset_GetHistogramParameteriv)
+#define SET_GetHistogramParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetHistogramParameteriv, fn)
+#define CALL_GetMinmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLvoid *)), _gloffset_GetMinmax, parameters)
+#define GET_GetMinmax(disp) GET_by_offset(disp, _gloffset_GetMinmax)
+#define SET_GetMinmax(disp, fn) SET_by_offset(disp, _gloffset_GetMinmax, fn)
+#define CALL_GetMinmaxParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMinmaxParameterfv, parameters)
+#define GET_GetMinmaxParameterfv(disp) GET_by_offset(disp, _gloffset_GetMinmaxParameterfv)
+#define SET_GetMinmaxParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetMinmaxParameterfv, fn)
+#define CALL_GetMinmaxParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMinmaxParameteriv, parameters)
+#define GET_GetMinmaxParameteriv(disp) GET_by_offset(disp, _gloffset_GetMinmaxParameteriv)
+#define SET_GetMinmaxParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetMinmaxParameteriv, fn)
+#define CALL_Histogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, GLboolean)), _gloffset_Histogram, parameters)
+#define GET_Histogram(disp) GET_by_offset(disp, _gloffset_Histogram)
+#define SET_Histogram(disp, fn) SET_by_offset(disp, _gloffset_Histogram, fn)
+#define CALL_Minmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLboolean)), _gloffset_Minmax, parameters)
+#define GET_Minmax(disp) GET_by_offset(disp, _gloffset_Minmax)
+#define SET_Minmax(disp, fn) SET_by_offset(disp, _gloffset_Minmax, fn)
+#define CALL_ResetHistogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ResetHistogram, parameters)
+#define GET_ResetHistogram(disp) GET_by_offset(disp, _gloffset_ResetHistogram)
+#define SET_ResetHistogram(disp, fn) SET_by_offset(disp, _gloffset_ResetHistogram, fn)
+#define CALL_ResetMinmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ResetMinmax, parameters)
+#define GET_ResetMinmax(disp) GET_by_offset(disp, _gloffset_ResetMinmax)
+#define SET_ResetMinmax(disp, fn) SET_by_offset(disp, _gloffset_ResetMinmax, fn)
+#define CALL_TexImage3D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage3D, parameters)
+#define GET_TexImage3D(disp) GET_by_offset(disp, _gloffset_TexImage3D)
+#define SET_TexImage3D(disp, fn) SET_by_offset(disp, _gloffset_TexImage3D, fn)
+#define CALL_TexSubImage3D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage3D, parameters)
+#define GET_TexSubImage3D(disp) GET_by_offset(disp, _gloffset_TexSubImage3D)
+#define SET_TexSubImage3D(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage3D, fn)
+#define CALL_CopyTexSubImage3D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyTexSubImage3D, parameters)
+#define GET_CopyTexSubImage3D(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage3D)
+#define SET_CopyTexSubImage3D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage3D, fn)
+#define CALL_ActiveTexture(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ActiveTexture, parameters)
+#define GET_ActiveTexture(disp) GET_by_offset(disp, _gloffset_ActiveTexture)
+#define SET_ActiveTexture(disp, fn) SET_by_offset(disp, _gloffset_ActiveTexture, fn)
+#define CALL_ClientActiveTexture(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ClientActiveTexture, parameters)
+#define GET_ClientActiveTexture(disp) GET_by_offset(disp, _gloffset_ClientActiveTexture)
+#define SET_ClientActiveTexture(disp, fn) SET_by_offset(disp, _gloffset_ClientActiveTexture, fn)
+#define CALL_MultiTexCoord1dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble)), _gloffset_MultiTexCoord1dARB, parameters)
+#define GET_MultiTexCoord1dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1dARB)
+#define SET_MultiTexCoord1dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1dARB, fn)
+#define CALL_MultiTexCoord1dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord1dvARB, parameters)
+#define GET_MultiTexCoord1dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1dvARB)
+#define SET_MultiTexCoord1dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1dvARB, fn)
+#define CALL_MultiTexCoord1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_MultiTexCoord1fARB, parameters)
+#define GET_MultiTexCoord1fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1fARB)
+#define SET_MultiTexCoord1fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1fARB, fn)
+#define CALL_MultiTexCoord1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord1fvARB, parameters)
+#define GET_MultiTexCoord1fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1fvARB)
+#define SET_MultiTexCoord1fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1fvARB, fn)
+#define CALL_MultiTexCoord1iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_MultiTexCoord1iARB, parameters)
+#define GET_MultiTexCoord1iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1iARB)
+#define SET_MultiTexCoord1iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1iARB, fn)
+#define CALL_MultiTexCoord1ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord1ivARB, parameters)
+#define GET_MultiTexCoord1ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1ivARB)
+#define SET_MultiTexCoord1ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1ivARB, fn)
+#define CALL_MultiTexCoord1sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort)), _gloffset_MultiTexCoord1sARB, parameters)
+#define GET_MultiTexCoord1sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1sARB)
+#define SET_MultiTexCoord1sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1sARB, fn)
+#define CALL_MultiTexCoord1svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord1svARB, parameters)
+#define GET_MultiTexCoord1svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1svARB)
+#define SET_MultiTexCoord1svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1svARB, fn)
+#define CALL_MultiTexCoord2dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble)), _gloffset_MultiTexCoord2dARB, parameters)
+#define GET_MultiTexCoord2dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2dARB)
+#define SET_MultiTexCoord2dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2dARB, fn)
+#define CALL_MultiTexCoord2dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord2dvARB, parameters)
+#define GET_MultiTexCoord2dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2dvARB)
+#define SET_MultiTexCoord2dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2dvARB, fn)
+#define CALL_MultiTexCoord2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat)), _gloffset_MultiTexCoord2fARB, parameters)
+#define GET_MultiTexCoord2fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2fARB)
+#define SET_MultiTexCoord2fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2fARB, fn)
+#define CALL_MultiTexCoord2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord2fvARB, parameters)
+#define GET_MultiTexCoord2fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2fvARB)
+#define SET_MultiTexCoord2fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2fvARB, fn)
+#define CALL_MultiTexCoord2iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint)), _gloffset_MultiTexCoord2iARB, parameters)
+#define GET_MultiTexCoord2iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2iARB)
+#define SET_MultiTexCoord2iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2iARB, fn)
+#define CALL_MultiTexCoord2ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord2ivARB, parameters)
+#define GET_MultiTexCoord2ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2ivARB)
+#define SET_MultiTexCoord2ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2ivARB, fn)
+#define CALL_MultiTexCoord2sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort)), _gloffset_MultiTexCoord2sARB, parameters)
+#define GET_MultiTexCoord2sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2sARB)
+#define SET_MultiTexCoord2sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2sARB, fn)
+#define CALL_MultiTexCoord2svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord2svARB, parameters)
+#define GET_MultiTexCoord2svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2svARB)
+#define SET_MultiTexCoord2svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2svARB, fn)
+#define CALL_MultiTexCoord3dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLdouble)), _gloffset_MultiTexCoord3dARB, parameters)
+#define GET_MultiTexCoord3dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3dARB)
+#define SET_MultiTexCoord3dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3dARB, fn)
+#define CALL_MultiTexCoord3dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord3dvARB, parameters)
+#define GET_MultiTexCoord3dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3dvARB)
+#define SET_MultiTexCoord3dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3dvARB, fn)
+#define CALL_MultiTexCoord3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLfloat)), _gloffset_MultiTexCoord3fARB, parameters)
+#define GET_MultiTexCoord3fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3fARB)
+#define SET_MultiTexCoord3fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3fARB, fn)
+#define CALL_MultiTexCoord3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord3fvARB, parameters)
+#define GET_MultiTexCoord3fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3fvARB)
+#define SET_MultiTexCoord3fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3fvARB, fn)
+#define CALL_MultiTexCoord3iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint)), _gloffset_MultiTexCoord3iARB, parameters)
+#define GET_MultiTexCoord3iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3iARB)
+#define SET_MultiTexCoord3iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3iARB, fn)
+#define CALL_MultiTexCoord3ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord3ivARB, parameters)
+#define GET_MultiTexCoord3ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3ivARB)
+#define SET_MultiTexCoord3ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3ivARB, fn)
+#define CALL_MultiTexCoord3sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort, GLshort)), _gloffset_MultiTexCoord3sARB, parameters)
+#define GET_MultiTexCoord3sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3sARB)
+#define SET_MultiTexCoord3sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3sARB, fn)
+#define CALL_MultiTexCoord3svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord3svARB, parameters)
+#define GET_MultiTexCoord3svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3svARB)
+#define SET_MultiTexCoord3svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3svARB, fn)
+#define CALL_MultiTexCoord4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_MultiTexCoord4dARB, parameters)
+#define GET_MultiTexCoord4dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4dARB)
+#define SET_MultiTexCoord4dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4dARB, fn)
+#define CALL_MultiTexCoord4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord4dvARB, parameters)
+#define GET_MultiTexCoord4dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4dvARB)
+#define SET_MultiTexCoord4dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4dvARB, fn)
+#define CALL_MultiTexCoord4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_MultiTexCoord4f, parameters)
+#define GET_MultiTexCoord4f(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4f)
+#define SET_MultiTexCoord4f(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4f, fn)
+#define CALL_MultiTexCoord4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord4fvARB, parameters)
+#define GET_MultiTexCoord4fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4fvARB)
+#define SET_MultiTexCoord4fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4fvARB, fn)
+#define CALL_MultiTexCoord4iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint)), _gloffset_MultiTexCoord4iARB, parameters)
+#define GET_MultiTexCoord4iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4iARB)
+#define SET_MultiTexCoord4iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4iARB, fn)
+#define CALL_MultiTexCoord4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord4ivARB, parameters)
+#define GET_MultiTexCoord4ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4ivARB)
+#define SET_MultiTexCoord4ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4ivARB, fn)
+#define CALL_MultiTexCoord4sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort, GLshort, GLshort)), _gloffset_MultiTexCoord4sARB, parameters)
+#define GET_MultiTexCoord4sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4sARB)
+#define SET_MultiTexCoord4sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4sARB, fn)
+#define CALL_MultiTexCoord4svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord4svARB, parameters)
+#define GET_MultiTexCoord4svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4svARB)
+#define SET_MultiTexCoord4svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4svARB, fn)
+#define CALL_BlendEquationSeparateOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_BlendEquationSeparateOES, parameters)
+#define GET_BlendEquationSeparateOES(disp) GET_by_offset(disp, _gloffset_BlendEquationSeparateOES)
+#define SET_BlendEquationSeparateOES(disp, fn) SET_by_offset(disp, _gloffset_BlendEquationSeparateOES, fn)
+#define CALL_BlendFuncSeparateOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), _gloffset_BlendFuncSeparateOES, parameters)
+#define GET_BlendFuncSeparateOES(disp) GET_by_offset(disp, _gloffset_BlendFuncSeparateOES)
+#define SET_BlendFuncSeparateOES(disp, fn) SET_by_offset(disp, _gloffset_BlendFuncSeparateOES, fn)
+#define CALL_DrawTexfOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_DrawTexfOES, parameters)
+#define GET_DrawTexfOES(disp) GET_by_offset(disp, _gloffset_DrawTexfOES)
+#define SET_DrawTexfOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexfOES, fn)
+#define CALL_DrawTexfvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_DrawTexfvOES, parameters)
+#define GET_DrawTexfvOES(disp) GET_by_offset(disp, _gloffset_DrawTexfvOES)
+#define SET_DrawTexfvOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexfvOES, fn)
+#define CALL_DrawTexiOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint)), _gloffset_DrawTexiOES, parameters)
+#define GET_DrawTexiOES(disp) GET_by_offset(disp, _gloffset_DrawTexiOES)
+#define SET_DrawTexiOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexiOES, fn)
+#define CALL_DrawTexivOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_DrawTexivOES, parameters)
+#define GET_DrawTexivOES(disp) GET_by_offset(disp, _gloffset_DrawTexivOES)
+#define SET_DrawTexivOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexivOES, fn)
+#define CALL_DrawTexsOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort, GLshort)), _gloffset_DrawTexsOES, parameters)
+#define GET_DrawTexsOES(disp) GET_by_offset(disp, _gloffset_DrawTexsOES)
+#define SET_DrawTexsOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexsOES, fn)
+#define CALL_DrawTexsvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_DrawTexsvOES, parameters)
+#define GET_DrawTexsvOES(disp) GET_by_offset(disp, _gloffset_DrawTexsvOES)
+#define SET_DrawTexsvOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexsvOES, fn)
+#define CALL_DrawTexxOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_DrawTexxOES, parameters)
+#define GET_DrawTexxOES(disp) GET_by_offset(disp, _gloffset_DrawTexxOES)
+#define SET_DrawTexxOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexxOES, fn)
+#define CALL_DrawTexxvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfixed *)), _gloffset_DrawTexxvOES, parameters)
+#define GET_DrawTexxvOES(disp) GET_by_offset(disp, _gloffset_DrawTexxvOES)
+#define SET_DrawTexxvOES(disp, fn) SET_by_offset(disp, _gloffset_DrawTexxvOES, fn)
+#define CALL_BindFramebufferOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindFramebufferOES, parameters)
+#define GET_BindFramebufferOES(disp) GET_by_offset(disp, _gloffset_BindFramebufferOES)
+#define SET_BindFramebufferOES(disp, fn) SET_by_offset(disp, _gloffset_BindFramebufferOES, fn)
+#define CALL_BindRenderbufferOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindRenderbufferOES, parameters)
+#define GET_BindRenderbufferOES(disp) GET_by_offset(disp, _gloffset_BindRenderbufferOES)
+#define SET_BindRenderbufferOES(disp, fn) SET_by_offset(disp, _gloffset_BindRenderbufferOES, fn)
+#define CALL_CheckFramebufferStatusOES(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum)), _gloffset_CheckFramebufferStatusOES, parameters)
+#define GET_CheckFramebufferStatusOES(disp) GET_by_offset(disp, _gloffset_CheckFramebufferStatusOES)
+#define SET_CheckFramebufferStatusOES(disp, fn) SET_by_offset(disp, _gloffset_CheckFramebufferStatusOES, fn)
+#define CALL_DeleteFramebuffersOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteFramebuffersOES, parameters)
+#define GET_DeleteFramebuffersOES(disp) GET_by_offset(disp, _gloffset_DeleteFramebuffersOES)
+#define SET_DeleteFramebuffersOES(disp, fn) SET_by_offset(disp, _gloffset_DeleteFramebuffersOES, fn)
+#define CALL_DeleteRenderbuffersOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteRenderbuffersOES, parameters)
+#define GET_DeleteRenderbuffersOES(disp) GET_by_offset(disp, _gloffset_DeleteRenderbuffersOES)
+#define SET_DeleteRenderbuffersOES(disp, fn) SET_by_offset(disp, _gloffset_DeleteRenderbuffersOES, fn)
+#define CALL_FramebufferRenderbufferOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint)), _gloffset_FramebufferRenderbufferOES, parameters)
+#define GET_FramebufferRenderbufferOES(disp) GET_by_offset(disp, _gloffset_FramebufferRenderbufferOES)
+#define SET_FramebufferRenderbufferOES(disp, fn) SET_by_offset(disp, _gloffset_FramebufferRenderbufferOES, fn)
+#define CALL_FramebufferTexture2DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), _gloffset_FramebufferTexture2DOES, parameters)
+#define GET_FramebufferTexture2DOES(disp) GET_by_offset(disp, _gloffset_FramebufferTexture2DOES)
+#define SET_FramebufferTexture2DOES(disp, fn) SET_by_offset(disp, _gloffset_FramebufferTexture2DOES, fn)
+#define CALL_GenFramebuffersOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenFramebuffersOES, parameters)
+#define GET_GenFramebuffersOES(disp) GET_by_offset(disp, _gloffset_GenFramebuffersOES)
+#define SET_GenFramebuffersOES(disp, fn) SET_by_offset(disp, _gloffset_GenFramebuffersOES, fn)
+#define CALL_GenRenderbuffersOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenRenderbuffersOES, parameters)
+#define GET_GenRenderbuffersOES(disp) GET_by_offset(disp, _gloffset_GenRenderbuffersOES)
+#define SET_GenRenderbuffersOES(disp, fn) SET_by_offset(disp, _gloffset_GenRenderbuffersOES, fn)
+#define CALL_GenerateMipmapOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_GenerateMipmapOES, parameters)
+#define GET_GenerateMipmapOES(disp) GET_by_offset(disp, _gloffset_GenerateMipmapOES)
+#define SET_GenerateMipmapOES(disp, fn) SET_by_offset(disp, _gloffset_GenerateMipmapOES, fn)
+#define CALL_GetFramebufferAttachmentParameterivOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), _gloffset_GetFramebufferAttachmentParameterivOES, parameters)
+#define GET_GetFramebufferAttachmentParameterivOES(disp) GET_by_offset(disp, _gloffset_GetFramebufferAttachmentParameterivOES)
+#define SET_GetFramebufferAttachmentParameterivOES(disp, fn) SET_by_offset(disp, _gloffset_GetFramebufferAttachmentParameterivOES, fn)
+#define CALL_GetRenderbufferParameterivOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetRenderbufferParameterivOES, parameters)
+#define GET_GetRenderbufferParameterivOES(disp) GET_by_offset(disp, _gloffset_GetRenderbufferParameterivOES)
+#define SET_GetRenderbufferParameterivOES(disp, fn) SET_by_offset(disp, _gloffset_GetRenderbufferParameterivOES, fn)
+#define CALL_IsFramebufferOES(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsFramebufferOES, parameters)
+#define GET_IsFramebufferOES(disp) GET_by_offset(disp, _gloffset_IsFramebufferOES)
+#define SET_IsFramebufferOES(disp, fn) SET_by_offset(disp, _gloffset_IsFramebufferOES, fn)
+#define CALL_IsRenderbufferOES(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsRenderbufferOES, parameters)
+#define GET_IsRenderbufferOES(disp) GET_by_offset(disp, _gloffset_IsRenderbufferOES)
+#define SET_IsRenderbufferOES(disp, fn) SET_by_offset(disp, _gloffset_IsRenderbufferOES, fn)
+#define CALL_RenderbufferStorageOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei)), _gloffset_RenderbufferStorageOES, parameters)
+#define GET_RenderbufferStorageOES(disp) GET_by_offset(disp, _gloffset_RenderbufferStorageOES)
+#define SET_RenderbufferStorageOES(disp, fn) SET_by_offset(disp, _gloffset_RenderbufferStorageOES, fn)
+#define CALL_PointSizePointerOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_PointSizePointerOES, parameters)
+#define GET_PointSizePointerOES(disp) GET_by_offset(disp, _gloffset_PointSizePointerOES)
+#define SET_PointSizePointerOES(disp, fn) SET_by_offset(disp, _gloffset_PointSizePointerOES, fn)
+#define CALL_QueryMatrixxOES(disp, parameters) CALL_by_offset(disp, (GLbitfield (GLAPIENTRYP)(GLfixed *, GLint *)), _gloffset_QueryMatrixxOES, parameters)
+#define GET_QueryMatrixxOES(disp) GET_by_offset(disp, _gloffset_QueryMatrixxOES)
+#define SET_QueryMatrixxOES(disp, fn) SET_by_offset(disp, _gloffset_QueryMatrixxOES, fn)
+#define CALL_GetTexGenxvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed *)), _gloffset_GetTexGenxvOES, parameters)
+#define GET_GetTexGenxvOES(disp) GET_by_offset(disp, _gloffset_GetTexGenxvOES)
+#define SET_GetTexGenxvOES(disp, fn) SET_by_offset(disp, _gloffset_GetTexGenxvOES, fn)
+#define CALL_TexGenxOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexGenxOES, parameters)
+#define GET_TexGenxOES(disp) GET_by_offset(disp, _gloffset_TexGenxOES)
+#define SET_TexGenxOES(disp, fn) SET_by_offset(disp, _gloffset_TexGenxOES, fn)
+#define CALL_TexGenxvOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfixed *)), _gloffset_TexGenxvOES, parameters)
+#define GET_TexGenxvOES(disp) GET_by_offset(disp, _gloffset_TexGenxvOES)
+#define SET_TexGenxvOES(disp, fn) SET_by_offset(disp, _gloffset_TexGenxvOES, fn)
+#define CALL_GetBufferPointervOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), _gloffset_GetBufferPointervOES, parameters)
+#define GET_GetBufferPointervOES(disp) GET_by_offset(disp, _gloffset_GetBufferPointervOES)
+#define SET_GetBufferPointervOES(disp, fn) SET_by_offset(disp, _gloffset_GetBufferPointervOES, fn)
+#define CALL_MapBufferOES(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_MapBufferOES, parameters)
+#define GET_MapBufferOES(disp) GET_by_offset(disp, _gloffset_MapBufferOES)
+#define SET_MapBufferOES(disp, fn) SET_by_offset(disp, _gloffset_MapBufferOES, fn)
+#define CALL_UnmapBufferOES(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), _gloffset_UnmapBufferOES, parameters)
+#define GET_UnmapBufferOES(disp) GET_by_offset(disp, _gloffset_UnmapBufferOES)
+#define SET_UnmapBufferOES(disp, fn) SET_by_offset(disp, _gloffset_UnmapBufferOES, fn)
+#define CALL_MultiDrawArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *, const GLsizei *, GLsizei)), _gloffset_MultiDrawArraysEXT, parameters)
+#define GET_MultiDrawArraysEXT(disp) GET_by_offset(disp, _gloffset_MultiDrawArraysEXT)
+#define SET_MultiDrawArraysEXT(disp, fn) SET_by_offset(disp, _gloffset_MultiDrawArraysEXT, fn)
+#define CALL_MultiDrawElementsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei)), _gloffset_MultiDrawElementsEXT, parameters)
+#define GET_MultiDrawElementsEXT(disp) GET_by_offset(disp, _gloffset_MultiDrawElementsEXT)
+#define SET_MultiDrawElementsEXT(disp, fn) SET_by_offset(disp, _gloffset_MultiDrawElementsEXT, fn)
+#define CALL_BindVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_BindVertexArrayAPPLE, parameters)
+#define GET_BindVertexArrayAPPLE(disp) GET_by_offset(disp, _gloffset_BindVertexArrayAPPLE)
+#define SET_BindVertexArrayAPPLE(disp, fn) SET_by_offset(disp, _gloffset_BindVertexArrayAPPLE, fn)
+#define CALL_DeleteVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteVertexArraysAPPLE, parameters)
+#define GET_DeleteVertexArraysAPPLE(disp) GET_by_offset(disp, _gloffset_DeleteVertexArraysAPPLE)
+#define SET_DeleteVertexArraysAPPLE(disp, fn) SET_by_offset(disp, _gloffset_DeleteVertexArraysAPPLE, fn)
+#define CALL_GenVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenVertexArraysAPPLE, parameters)
+#define GET_GenVertexArraysAPPLE(disp) GET_by_offset(disp, _gloffset_GenVertexArraysAPPLE)
+#define SET_GenVertexArraysAPPLE(disp, fn) SET_by_offset(disp, _gloffset_GenVertexArraysAPPLE, fn)
+#define CALL_IsVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsVertexArrayAPPLE, parameters)
+#define GET_IsVertexArrayAPPLE(disp) GET_by_offset(disp, _gloffset_IsVertexArrayAPPLE)
+#define SET_IsVertexArrayAPPLE(disp, fn) SET_by_offset(disp, _gloffset_IsVertexArrayAPPLE, fn)
+#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), _gloffset_EGLImageTargetRenderbufferStorageOES, parameters)
+#define GET_EGLImageTargetRenderbufferStorageOES(disp) GET_by_offset(disp, _gloffset_EGLImageTargetRenderbufferStorageOES)
+#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) SET_by_offset(disp, _gloffset_EGLImageTargetRenderbufferStorageOES, fn)
+#define CALL_EGLImageTargetTexture2DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), _gloffset_EGLImageTargetTexture2DOES, parameters)
+#define GET_EGLImageTargetTexture2DOES(disp) GET_by_offset(disp, _gloffset_EGLImageTargetTexture2DOES)
+#define SET_EGLImageTargetTexture2DOES(disp, fn) SET_by_offset(disp, _gloffset_EGLImageTargetTexture2DOES, fn)
+#define CALL_CompressedTexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), _gloffset_CompressedTexImage2D, parameters)
+#define GET_CompressedTexImage2D(disp) GET_by_offset(disp, _gloffset_CompressedTexImage2D)
+#define SET_CompressedTexImage2D(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexImage2D, fn)
+#define CALL_CompressedTexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), _gloffset_CompressedTexSubImage2D, parameters)
+#define GET_CompressedTexSubImage2D(disp) GET_by_offset(disp, _gloffset_CompressedTexSubImage2D)
+#define SET_CompressedTexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexSubImage2D, fn)
+#define CALL_SampleCoverage(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), _gloffset_SampleCoverage, parameters)
+#define GET_SampleCoverage(disp) GET_by_offset(disp, _gloffset_SampleCoverage)
+#define SET_SampleCoverage(disp, fn) SET_by_offset(disp, _gloffset_SampleCoverage, fn)
+#define CALL_BindBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindBuffer, parameters)
+#define GET_BindBuffer(disp) GET_by_offset(disp, _gloffset_BindBuffer)
+#define SET_BindBuffer(disp, fn) SET_by_offset(disp, _gloffset_BindBuffer, fn)
+#define CALL_BufferData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizeiptr, const GLvoid *, GLenum)), _gloffset_BufferData, parameters)
+#define GET_BufferData(disp) GET_by_offset(disp, _gloffset_BufferData)
+#define SET_BufferData(disp, fn) SET_by_offset(disp, _gloffset_BufferData, fn)
+#define CALL_BufferSubData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr, const GLvoid *)), _gloffset_BufferSubData, parameters)
+#define GET_BufferSubData(disp) GET_by_offset(disp, _gloffset_BufferSubData)
+#define SET_BufferSubData(disp, fn) SET_by_offset(disp, _gloffset_BufferSubData, fn)
+#define CALL_DeleteBuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteBuffers, parameters)
+#define GET_DeleteBuffers(disp) GET_by_offset(disp, _gloffset_DeleteBuffers)
+#define SET_DeleteBuffers(disp, fn) SET_by_offset(disp, _gloffset_DeleteBuffers, fn)
+#define CALL_GenBuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenBuffers, parameters)
+#define GET_GenBuffers(disp) GET_by_offset(disp, _gloffset_GenBuffers)
+#define SET_GenBuffers(disp, fn) SET_by_offset(disp, _gloffset_GenBuffers, fn)
+#define CALL_GetBufferParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetBufferParameteriv, parameters)
+#define GET_GetBufferParameteriv(disp) GET_by_offset(disp, _gloffset_GetBufferParameteriv)
+#define SET_GetBufferParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetBufferParameteriv, fn)
+#define CALL_IsBuffer(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsBuffer, parameters)
+#define GET_IsBuffer(disp) GET_by_offset(disp, _gloffset_IsBuffer)
+#define SET_IsBuffer(disp, fn) SET_by_offset(disp, _gloffset_IsBuffer, fn)
+#define CALL_PointParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_PointParameterf, parameters)
+#define GET_PointParameterf(disp) GET_by_offset(disp, _gloffset_PointParameterf)
+#define SET_PointParameterf(disp, fn) SET_by_offset(disp, _gloffset_PointParameterf, fn)
+#define CALL_PointParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_PointParameterfv, parameters)
+#define GET_PointParameterfv(disp) GET_by_offset(disp, _gloffset_PointParameterfv)
+#define SET_PointParameterfv(disp, fn) SET_by_offset(disp, _gloffset_PointParameterfv, fn)
+#define CALL_AlphaFuncx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLclampx)), _gloffset_AlphaFuncx, parameters)
+#define GET_AlphaFuncx(disp) GET_by_offset(disp, _gloffset_AlphaFuncx)
+#define SET_AlphaFuncx(disp, fn) SET_by_offset(disp, _gloffset_AlphaFuncx, fn)
+#define CALL_ClearColorx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampx, GLclampx, GLclampx, GLclampx)), _gloffset_ClearColorx, parameters)
+#define GET_ClearColorx(disp) GET_by_offset(disp, _gloffset_ClearColorx)
+#define SET_ClearColorx(disp, fn) SET_by_offset(disp, _gloffset_ClearColorx, fn)
+#define CALL_ClearDepthf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf)), _gloffset_ClearDepthf, parameters)
+#define GET_ClearDepthf(disp) GET_by_offset(disp, _gloffset_ClearDepthf)
+#define SET_ClearDepthf(disp, fn) SET_by_offset(disp, _gloffset_ClearDepthf, fn)
+#define CALL_ClearDepthx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampx)), _gloffset_ClearDepthx, parameters)
+#define GET_ClearDepthx(disp) GET_by_offset(disp, _gloffset_ClearDepthx)
+#define SET_ClearDepthx(disp, fn) SET_by_offset(disp, _gloffset_ClearDepthx, fn)
+#define CALL_Color4x(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_Color4x, parameters)
+#define GET_Color4x(disp) GET_by_offset(disp, _gloffset_Color4x)
+#define SET_Color4x(disp, fn) SET_by_offset(disp, _gloffset_Color4x, fn)
+#define CALL_DepthRangef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf)), _gloffset_DepthRangef, parameters)
+#define GET_DepthRangef(disp) GET_by_offset(disp, _gloffset_DepthRangef)
+#define SET_DepthRangef(disp, fn) SET_by_offset(disp, _gloffset_DepthRangef, fn)
+#define CALL_DepthRangex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampx, GLclampx)), _gloffset_DepthRangex, parameters)
+#define GET_DepthRangex(disp) GET_by_offset(disp, _gloffset_DepthRangex)
+#define SET_DepthRangex(disp, fn) SET_by_offset(disp, _gloffset_DepthRangex, fn)
+#define CALL_Fogx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed)), _gloffset_Fogx, parameters)
+#define GET_Fogx(disp) GET_by_offset(disp, _gloffset_Fogx)
+#define SET_Fogx(disp, fn) SET_by_offset(disp, _gloffset_Fogx, fn)
+#define CALL_Fogxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfixed *)), _gloffset_Fogxv, parameters)
+#define GET_Fogxv(disp) GET_by_offset(disp, _gloffset_Fogxv)
+#define SET_Fogxv(disp, fn) SET_by_offset(disp, _gloffset_Fogxv, fn)
+#define CALL_Frustumf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Frustumf, parameters)
+#define GET_Frustumf(disp) GET_by_offset(disp, _gloffset_Frustumf)
+#define SET_Frustumf(disp, fn) SET_by_offset(disp, _gloffset_Frustumf, fn)
+#define CALL_Frustumx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_Frustumx, parameters)
+#define GET_Frustumx(disp) GET_by_offset(disp, _gloffset_Frustumx)
+#define SET_Frustumx(disp, fn) SET_by_offset(disp, _gloffset_Frustumx, fn)
+#define CALL_LightModelx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed)), _gloffset_LightModelx, parameters)
+#define GET_LightModelx(disp) GET_by_offset(disp, _gloffset_LightModelx)
+#define SET_LightModelx(disp, fn) SET_by_offset(disp, _gloffset_LightModelx, fn)
+#define CALL_LightModelxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfixed *)), _gloffset_LightModelxv, parameters)
+#define GET_LightModelxv(disp) GET_by_offset(disp, _gloffset_LightModelxv)
+#define SET_LightModelxv(disp, fn) SET_by_offset(disp, _gloffset_LightModelxv, fn)
+#define CALL_Lightx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed)), _gloffset_Lightx, parameters)
+#define GET_Lightx(disp) GET_by_offset(disp, _gloffset_Lightx)
+#define SET_Lightx(disp, fn) SET_by_offset(disp, _gloffset_Lightx, fn)
+#define CALL_Lightxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfixed *)), _gloffset_Lightxv, parameters)
+#define GET_Lightxv(disp) GET_by_offset(disp, _gloffset_Lightxv)
+#define SET_Lightxv(disp, fn) SET_by_offset(disp, _gloffset_Lightxv, fn)
+#define CALL_LineWidthx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed)), _gloffset_LineWidthx, parameters)
+#define GET_LineWidthx(disp) GET_by_offset(disp, _gloffset_LineWidthx)
+#define SET_LineWidthx(disp, fn) SET_by_offset(disp, _gloffset_LineWidthx, fn)
+#define CALL_LoadMatrixx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfixed *)), _gloffset_LoadMatrixx, parameters)
+#define GET_LoadMatrixx(disp) GET_by_offset(disp, _gloffset_LoadMatrixx)
+#define SET_LoadMatrixx(disp, fn) SET_by_offset(disp, _gloffset_LoadMatrixx, fn)
+#define CALL_Materialx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed)), _gloffset_Materialx, parameters)
+#define GET_Materialx(disp) GET_by_offset(disp, _gloffset_Materialx)
+#define SET_Materialx(disp, fn) SET_by_offset(disp, _gloffset_Materialx, fn)
+#define CALL_Materialxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfixed *)), _gloffset_Materialxv, parameters)
+#define GET_Materialxv(disp) GET_by_offset(disp, _gloffset_Materialxv)
+#define SET_Materialxv(disp, fn) SET_by_offset(disp, _gloffset_Materialxv, fn)
+#define CALL_MultMatrixx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfixed *)), _gloffset_MultMatrixx, parameters)
+#define GET_MultMatrixx(disp) GET_by_offset(disp, _gloffset_MultMatrixx)
+#define SET_MultMatrixx(disp, fn) SET_by_offset(disp, _gloffset_MultMatrixx, fn)
+#define CALL_MultiTexCoord4x(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_MultiTexCoord4x, parameters)
+#define GET_MultiTexCoord4x(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4x)
+#define SET_MultiTexCoord4x(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4x, fn)
+#define CALL_Normal3x(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed)), _gloffset_Normal3x, parameters)
+#define GET_Normal3x(disp) GET_by_offset(disp, _gloffset_Normal3x)
+#define SET_Normal3x(disp, fn) SET_by_offset(disp, _gloffset_Normal3x, fn)
+#define CALL_Orthof(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Orthof, parameters)
+#define GET_Orthof(disp) GET_by_offset(disp, _gloffset_Orthof)
+#define SET_Orthof(disp, fn) SET_by_offset(disp, _gloffset_Orthof, fn)
+#define CALL_Orthox(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_Orthox, parameters)
+#define GET_Orthox(disp) GET_by_offset(disp, _gloffset_Orthox)
+#define SET_Orthox(disp, fn) SET_by_offset(disp, _gloffset_Orthox, fn)
+#define CALL_PointSizex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed)), _gloffset_PointSizex, parameters)
+#define GET_PointSizex(disp) GET_by_offset(disp, _gloffset_PointSizex)
+#define SET_PointSizex(disp, fn) SET_by_offset(disp, _gloffset_PointSizex, fn)
+#define CALL_PolygonOffsetx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed)), _gloffset_PolygonOffsetx, parameters)
+#define GET_PolygonOffsetx(disp) GET_by_offset(disp, _gloffset_PolygonOffsetx)
+#define SET_PolygonOffsetx(disp, fn) SET_by_offset(disp, _gloffset_PolygonOffsetx, fn)
+#define CALL_Rotatex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed, GLfixed)), _gloffset_Rotatex, parameters)
+#define GET_Rotatex(disp) GET_by_offset(disp, _gloffset_Rotatex)
+#define SET_Rotatex(disp, fn) SET_by_offset(disp, _gloffset_Rotatex, fn)
+#define CALL_SampleCoveragex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampx, GLboolean)), _gloffset_SampleCoveragex, parameters)
+#define GET_SampleCoveragex(disp) GET_by_offset(disp, _gloffset_SampleCoveragex)
+#define SET_SampleCoveragex(disp, fn) SET_by_offset(disp, _gloffset_SampleCoveragex, fn)
+#define CALL_Scalex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed)), _gloffset_Scalex, parameters)
+#define GET_Scalex(disp) GET_by_offset(disp, _gloffset_Scalex)
+#define SET_Scalex(disp, fn) SET_by_offset(disp, _gloffset_Scalex, fn)
+#define CALL_TexEnvx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed)), _gloffset_TexEnvx, parameters)
+#define GET_TexEnvx(disp) GET_by_offset(disp, _gloffset_TexEnvx)
+#define SET_TexEnvx(disp, fn) SET_by_offset(disp, _gloffset_TexEnvx, fn)
+#define CALL_TexEnvxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfixed *)), _gloffset_TexEnvxv, parameters)
+#define GET_TexEnvxv(disp) GET_by_offset(disp, _gloffset_TexEnvxv)
+#define SET_TexEnvxv(disp, fn) SET_by_offset(disp, _gloffset_TexEnvxv, fn)
+#define CALL_TexParameterx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed)), _gloffset_TexParameterx, parameters)
+#define GET_TexParameterx(disp) GET_by_offset(disp, _gloffset_TexParameterx)
+#define SET_TexParameterx(disp, fn) SET_by_offset(disp, _gloffset_TexParameterx, fn)
+#define CALL_Translatex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfixed, GLfixed, GLfixed)), _gloffset_Translatex, parameters)
+#define GET_Translatex(disp) GET_by_offset(disp, _gloffset_Translatex)
+#define SET_Translatex(disp, fn) SET_by_offset(disp, _gloffset_Translatex, fn)
+#define CALL_ClipPlanef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_ClipPlanef, parameters)
+#define GET_ClipPlanef(disp) GET_by_offset(disp, _gloffset_ClipPlanef)
+#define SET_ClipPlanef(disp, fn) SET_by_offset(disp, _gloffset_ClipPlanef, fn)
+#define CALL_ClipPlanex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfixed *)), _gloffset_ClipPlanex, parameters)
+#define GET_ClipPlanex(disp) GET_by_offset(disp, _gloffset_ClipPlanex)
+#define SET_ClipPlanex(disp, fn) SET_by_offset(disp, _gloffset_ClipPlanex, fn)
+#define CALL_GetClipPlanef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), _gloffset_GetClipPlanef, parameters)
+#define GET_GetClipPlanef(disp) GET_by_offset(disp, _gloffset_GetClipPlanef)
+#define SET_GetClipPlanef(disp, fn) SET_by_offset(disp, _gloffset_GetClipPlanef, fn)
+#define CALL_GetClipPlanex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed *)), _gloffset_GetClipPlanex, parameters)
+#define GET_GetClipPlanex(disp) GET_by_offset(disp, _gloffset_GetClipPlanex)
+#define SET_GetClipPlanex(disp, fn) SET_by_offset(disp, _gloffset_GetClipPlanex, fn)
+#define CALL_GetFixedv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed *)), _gloffset_GetFixedv, parameters)
+#define GET_GetFixedv(disp) GET_by_offset(disp, _gloffset_GetFixedv)
+#define SET_GetFixedv(disp, fn) SET_by_offset(disp, _gloffset_GetFixedv, fn)
+#define CALL_GetLightxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed *)), _gloffset_GetLightxv, parameters)
+#define GET_GetLightxv(disp) GET_by_offset(disp, _gloffset_GetLightxv)
+#define SET_GetLightxv(disp, fn) SET_by_offset(disp, _gloffset_GetLightxv, fn)
+#define CALL_GetMaterialxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed *)), _gloffset_GetMaterialxv, parameters)
+#define GET_GetMaterialxv(disp) GET_by_offset(disp, _gloffset_GetMaterialxv)
+#define SET_GetMaterialxv(disp, fn) SET_by_offset(disp, _gloffset_GetMaterialxv, fn)
+#define CALL_GetTexEnvxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed *)), _gloffset_GetTexEnvxv, parameters)
+#define GET_GetTexEnvxv(disp) GET_by_offset(disp, _gloffset_GetTexEnvxv)
+#define SET_GetTexEnvxv(disp, fn) SET_by_offset(disp, _gloffset_GetTexEnvxv, fn)
+#define CALL_GetTexParameterxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfixed *)), _gloffset_GetTexParameterxv, parameters)
+#define GET_GetTexParameterxv(disp) GET_by_offset(disp, _gloffset_GetTexParameterxv)
+#define SET_GetTexParameterxv(disp, fn) SET_by_offset(disp, _gloffset_GetTexParameterxv, fn)
+#define CALL_PointParameterx(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfixed)), _gloffset_PointParameterx, parameters)
+#define GET_PointParameterx(disp) GET_by_offset(disp, _gloffset_PointParameterx)
+#define SET_PointParameterx(disp, fn) SET_by_offset(disp, _gloffset_PointParameterx, fn)
+#define CALL_PointParameterxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfixed *)), _gloffset_PointParameterxv, parameters)
+#define GET_PointParameterxv(disp) GET_by_offset(disp, _gloffset_PointParameterxv)
+#define SET_PointParameterxv(disp, fn) SET_by_offset(disp, _gloffset_PointParameterxv, fn)
+#define CALL_TexParameterxv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfixed *)), _gloffset_TexParameterxv, parameters)
+#define GET_TexParameterxv(disp) GET_by_offset(disp, _gloffset_TexParameterxv)
+#define SET_TexParameterxv(disp, fn) SET_by_offset(disp, _gloffset_TexParameterxv, fn)
+
+/* define aliases for compatibility */
+#define CALL_TexGenf(disp, parameters) CALL_TexGenfOES(disp, parameters)
+#define GET_TexGenf(disp) GET_TexGenfOES(disp)
+#define SET_TexGenf(disp, fn) SET_TexGenfOES(disp, fn)
+#define CALL_TexGenfv(disp, parameters) CALL_TexGenfvOES(disp, parameters)
+#define GET_TexGenfv(disp) GET_TexGenfvOES(disp)
+#define SET_TexGenfv(disp, fn) SET_TexGenfvOES(disp, fn)
+#define CALL_TexGeni(disp, parameters) CALL_TexGeniOES(disp, parameters)
+#define GET_TexGeni(disp) GET_TexGeniOES(disp)
+#define SET_TexGeni(disp, fn) SET_TexGeniOES(disp, fn)
+#define CALL_TexGeniv(disp, parameters) CALL_TexGenivOES(disp, parameters)
+#define GET_TexGeniv(disp) GET_TexGenivOES(disp)
+#define SET_TexGeniv(disp, fn) SET_TexGenivOES(disp, fn)
+#define CALL_GetTexGenfv(disp, parameters) CALL_GetTexGenfvOES(disp, parameters)
+#define GET_GetTexGenfv(disp) GET_GetTexGenfvOES(disp)
+#define SET_GetTexGenfv(disp, fn) SET_GetTexGenfvOES(disp, fn)
+#define CALL_GetTexGeniv(disp, parameters) CALL_GetTexGenivOES(disp, parameters)
+#define GET_GetTexGeniv(disp) GET_GetTexGenivOES(disp)
+#define SET_GetTexGeniv(disp, fn) SET_GetTexGenivOES(disp, fn)
+#define CALL_BlendEquation(disp, parameters) CALL_BlendEquationOES(disp, parameters)
+#define GET_BlendEquation(disp) GET_BlendEquationOES(disp)
+#define SET_BlendEquation(disp, fn) SET_BlendEquationOES(disp, fn)
+#define CALL_ActiveTextureARB(disp, parameters) CALL_ActiveTexture(disp, parameters)
+#define GET_ActiveTextureARB(disp) GET_ActiveTexture(disp)
+#define SET_ActiveTextureARB(disp, fn) SET_ActiveTexture(disp, fn)
+#define CALL_ClientActiveTextureARB(disp, parameters) CALL_ClientActiveTexture(disp, parameters)
+#define GET_ClientActiveTextureARB(disp) GET_ClientActiveTexture(disp)
+#define SET_ClientActiveTextureARB(disp, fn) SET_ClientActiveTexture(disp, fn)
+#define CALL_MultiTexCoord4fARB(disp, parameters) CALL_MultiTexCoord4f(disp, parameters)
+#define GET_MultiTexCoord4fARB(disp) GET_MultiTexCoord4f(disp)
+#define SET_MultiTexCoord4fARB(disp, fn) SET_MultiTexCoord4f(disp, fn)
+#define CALL_AlphaFuncxOES(disp, parameters) CALL_AlphaFuncx(disp, parameters)
+#define GET_AlphaFuncxOES(disp) GET_AlphaFuncx(disp)
+#define SET_AlphaFuncxOES(disp, fn) SET_AlphaFuncx(disp, fn)
+#define CALL_ClearColorxOES(disp, parameters) CALL_ClearColorx(disp, parameters)
+#define GET_ClearColorxOES(disp) GET_ClearColorx(disp)
+#define SET_ClearColorxOES(disp, fn) SET_ClearColorx(disp, fn)
+#define CALL_ClearDepthfOES(disp, parameters) CALL_ClearDepthf(disp, parameters)
+#define GET_ClearDepthfOES(disp) GET_ClearDepthf(disp)
+#define SET_ClearDepthfOES(disp, fn) SET_ClearDepthf(disp, fn)
+#define CALL_ClearDepthxOES(disp, parameters) CALL_ClearDepthx(disp, parameters)
+#define GET_ClearDepthxOES(disp) GET_ClearDepthx(disp)
+#define SET_ClearDepthxOES(disp, fn) SET_ClearDepthx(disp, fn)
+#define CALL_Color4xOES(disp, parameters) CALL_Color4x(disp, parameters)
+#define GET_Color4xOES(disp) GET_Color4x(disp)
+#define SET_Color4xOES(disp, fn) SET_Color4x(disp, fn)
+#define CALL_DepthRangefOES(disp, parameters) CALL_DepthRangef(disp, parameters)
+#define GET_DepthRangefOES(disp) GET_DepthRangef(disp)
+#define SET_DepthRangefOES(disp, fn) SET_DepthRangef(disp, fn)
+#define CALL_DepthRangexOES(disp, parameters) CALL_DepthRangex(disp, parameters)
+#define GET_DepthRangexOES(disp) GET_DepthRangex(disp)
+#define SET_DepthRangexOES(disp, fn) SET_DepthRangex(disp, fn)
+#define CALL_FogxOES(disp, parameters) CALL_Fogx(disp, parameters)
+#define GET_FogxOES(disp) GET_Fogx(disp)
+#define SET_FogxOES(disp, fn) SET_Fogx(disp, fn)
+#define CALL_FogxvOES(disp, parameters) CALL_Fogxv(disp, parameters)
+#define GET_FogxvOES(disp) GET_Fogxv(disp)
+#define SET_FogxvOES(disp, fn) SET_Fogxv(disp, fn)
+#define CALL_FrustumfOES(disp, parameters) CALL_Frustumf(disp, parameters)
+#define GET_FrustumfOES(disp) GET_Frustumf(disp)
+#define SET_FrustumfOES(disp, fn) SET_Frustumf(disp, fn)
+#define CALL_FrustumxOES(disp, parameters) CALL_Frustumx(disp, parameters)
+#define GET_FrustumxOES(disp) GET_Frustumx(disp)
+#define SET_FrustumxOES(disp, fn) SET_Frustumx(disp, fn)
+#define CALL_LightModelxOES(disp, parameters) CALL_LightModelx(disp, parameters)
+#define GET_LightModelxOES(disp) GET_LightModelx(disp)
+#define SET_LightModelxOES(disp, fn) SET_LightModelx(disp, fn)
+#define CALL_LightModelxvOES(disp, parameters) CALL_LightModelxv(disp, parameters)
+#define GET_LightModelxvOES(disp) GET_LightModelxv(disp)
+#define SET_LightModelxvOES(disp, fn) SET_LightModelxv(disp, fn)
+#define CALL_LightxOES(disp, parameters) CALL_Lightx(disp, parameters)
+#define GET_LightxOES(disp) GET_Lightx(disp)
+#define SET_LightxOES(disp, fn) SET_Lightx(disp, fn)
+#define CALL_LightxvOES(disp, parameters) CALL_Lightxv(disp, parameters)
+#define GET_LightxvOES(disp) GET_Lightxv(disp)
+#define SET_LightxvOES(disp, fn) SET_Lightxv(disp, fn)
+#define CALL_LineWidthxOES(disp, parameters) CALL_LineWidthx(disp, parameters)
+#define GET_LineWidthxOES(disp) GET_LineWidthx(disp)
+#define SET_LineWidthxOES(disp, fn) SET_LineWidthx(disp, fn)
+#define CALL_LoadMatrixxOES(disp, parameters) CALL_LoadMatrixx(disp, parameters)
+#define GET_LoadMatrixxOES(disp) GET_LoadMatrixx(disp)
+#define SET_LoadMatrixxOES(disp, fn) SET_LoadMatrixx(disp, fn)
+#define CALL_MaterialxOES(disp, parameters) CALL_Materialx(disp, parameters)
+#define GET_MaterialxOES(disp) GET_Materialx(disp)
+#define SET_MaterialxOES(disp, fn) SET_Materialx(disp, fn)
+#define CALL_MaterialxvOES(disp, parameters) CALL_Materialxv(disp, parameters)
+#define GET_MaterialxvOES(disp) GET_Materialxv(disp)
+#define SET_MaterialxvOES(disp, fn) SET_Materialxv(disp, fn)
+#define CALL_MultMatrixxOES(disp, parameters) CALL_MultMatrixx(disp, parameters)
+#define GET_MultMatrixxOES(disp) GET_MultMatrixx(disp)
+#define SET_MultMatrixxOES(disp, fn) SET_MultMatrixx(disp, fn)
+#define CALL_MultiTexCoord4xOES(disp, parameters) CALL_MultiTexCoord4x(disp, parameters)
+#define GET_MultiTexCoord4xOES(disp) GET_MultiTexCoord4x(disp)
+#define SET_MultiTexCoord4xOES(disp, fn) SET_MultiTexCoord4x(disp, fn)
+#define CALL_Normal3xOES(disp, parameters) CALL_Normal3x(disp, parameters)
+#define GET_Normal3xOES(disp) GET_Normal3x(disp)
+#define SET_Normal3xOES(disp, fn) SET_Normal3x(disp, fn)
+#define CALL_OrthofOES(disp, parameters) CALL_Orthof(disp, parameters)
+#define GET_OrthofOES(disp) GET_Orthof(disp)
+#define SET_OrthofOES(disp, fn) SET_Orthof(disp, fn)
+#define CALL_OrthoxOES(disp, parameters) CALL_Orthox(disp, parameters)
+#define GET_OrthoxOES(disp) GET_Orthox(disp)
+#define SET_OrthoxOES(disp, fn) SET_Orthox(disp, fn)
+#define CALL_PointSizexOES(disp, parameters) CALL_PointSizex(disp, parameters)
+#define GET_PointSizexOES(disp) GET_PointSizex(disp)
+#define SET_PointSizexOES(disp, fn) SET_PointSizex(disp, fn)
+#define CALL_PolygonOffsetxOES(disp, parameters) CALL_PolygonOffsetx(disp, parameters)
+#define GET_PolygonOffsetxOES(disp) GET_PolygonOffsetx(disp)
+#define SET_PolygonOffsetxOES(disp, fn) SET_PolygonOffsetx(disp, fn)
+#define CALL_RotatexOES(disp, parameters) CALL_Rotatex(disp, parameters)
+#define GET_RotatexOES(disp) GET_Rotatex(disp)
+#define SET_RotatexOES(disp, fn) SET_Rotatex(disp, fn)
+#define CALL_SampleCoveragexOES(disp, parameters) CALL_SampleCoveragex(disp, parameters)
+#define GET_SampleCoveragexOES(disp) GET_SampleCoveragex(disp)
+#define SET_SampleCoveragexOES(disp, fn) SET_SampleCoveragex(disp, fn)
+#define CALL_ScalexOES(disp, parameters) CALL_Scalex(disp, parameters)
+#define GET_ScalexOES(disp) GET_Scalex(disp)
+#define SET_ScalexOES(disp, fn) SET_Scalex(disp, fn)
+#define CALL_TexEnvxOES(disp, parameters) CALL_TexEnvx(disp, parameters)
+#define GET_TexEnvxOES(disp) GET_TexEnvx(disp)
+#define SET_TexEnvxOES(disp, fn) SET_TexEnvx(disp, fn)
+#define CALL_TexEnvxvOES(disp, parameters) CALL_TexEnvxv(disp, parameters)
+#define GET_TexEnvxvOES(disp) GET_TexEnvxv(disp)
+#define SET_TexEnvxvOES(disp, fn) SET_TexEnvxv(disp, fn)
+#define CALL_TexParameterxOES(disp, parameters) CALL_TexParameterx(disp, parameters)
+#define GET_TexParameterxOES(disp) GET_TexParameterx(disp)
+#define SET_TexParameterxOES(disp, fn) SET_TexParameterx(disp, fn)
+#define CALL_TranslatexOES(disp, parameters) CALL_Translatex(disp, parameters)
+#define GET_TranslatexOES(disp) GET_Translatex(disp)
+#define SET_TranslatexOES(disp, fn) SET_Translatex(disp, fn)
+#define CALL_ClipPlanefOES(disp, parameters) CALL_ClipPlanef(disp, parameters)
+#define GET_ClipPlanefOES(disp) GET_ClipPlanef(disp)
+#define SET_ClipPlanefOES(disp, fn) SET_ClipPlanef(disp, fn)
+#define CALL_ClipPlanexOES(disp, parameters) CALL_ClipPlanex(disp, parameters)
+#define GET_ClipPlanexOES(disp) GET_ClipPlanex(disp)
+#define SET_ClipPlanexOES(disp, fn) SET_ClipPlanex(disp, fn)
+#define CALL_GetClipPlanefOES(disp, parameters) CALL_GetClipPlanef(disp, parameters)
+#define GET_GetClipPlanefOES(disp) GET_GetClipPlanef(disp)
+#define SET_GetClipPlanefOES(disp, fn) SET_GetClipPlanef(disp, fn)
+#define CALL_GetClipPlanexOES(disp, parameters) CALL_GetClipPlanex(disp, parameters)
+#define GET_GetClipPlanexOES(disp) GET_GetClipPlanex(disp)
+#define SET_GetClipPlanexOES(disp, fn) SET_GetClipPlanex(disp, fn)
+#define CALL_GetFixedvOES(disp, parameters) CALL_GetFixedv(disp, parameters)
+#define GET_GetFixedvOES(disp) GET_GetFixedv(disp)
+#define SET_GetFixedvOES(disp, fn) SET_GetFixedv(disp, fn)
+#define CALL_GetLightxvOES(disp, parameters) CALL_GetLightxv(disp, parameters)
+#define GET_GetLightxvOES(disp) GET_GetLightxv(disp)
+#define SET_GetLightxvOES(disp, fn) SET_GetLightxv(disp, fn)
+#define CALL_GetMaterialxvOES(disp, parameters) CALL_GetMaterialxv(disp, parameters)
+#define GET_GetMaterialxvOES(disp) GET_GetMaterialxv(disp)
+#define SET_GetMaterialxvOES(disp, fn) SET_GetMaterialxv(disp, fn)
+#define CALL_GetTexEnvxvOES(disp, parameters) CALL_GetTexEnvxv(disp, parameters)
+#define GET_GetTexEnvxvOES(disp) GET_GetTexEnvxv(disp)
+#define SET_GetTexEnvxvOES(disp, fn) SET_GetTexEnvxv(disp, fn)
+#define CALL_GetTexParameterxvOES(disp, parameters) CALL_GetTexParameterxv(disp, parameters)
+#define GET_GetTexParameterxvOES(disp) GET_GetTexParameterxv(disp)
+#define SET_GetTexParameterxvOES(disp, fn) SET_GetTexParameterxv(disp, fn)
+#define CALL_PointParameterxOES(disp, parameters) CALL_PointParameterx(disp, parameters)
+#define GET_PointParameterxOES(disp) GET_PointParameterx(disp)
+#define SET_PointParameterxOES(disp, fn) SET_PointParameterx(disp, fn)
+#define CALL_PointParameterxvOES(disp, parameters) CALL_PointParameterxv(disp, parameters)
+#define GET_PointParameterxvOES(disp) GET_PointParameterxv(disp)
+#define SET_PointParameterxvOES(disp, fn) SET_PointParameterxv(disp, fn)
+#define CALL_TexParameterxvOES(disp, parameters) CALL_TexParameterxv(disp, parameters)
+#define GET_TexParameterxvOES(disp) GET_TexParameterxv(disp)
+#define SET_TexParameterxvOES(disp, fn) SET_TexParameterxv(disp, fn)
+
+#if defined(_GLAPI_USE_REMAP_TABLE)
+#define TexGenf_remap_index TexGenfOES_remap_index
+#define TexGenfv_remap_index TexGenfvOES_remap_index
+#define TexGeni_remap_index TexGeniOES_remap_index
+#define TexGeniv_remap_index TexGenivOES_remap_index
+#define GetTexGenfv_remap_index GetTexGenfvOES_remap_index
+#define GetTexGeniv_remap_index GetTexGenivOES_remap_index
+#define BlendEquation_remap_index BlendEquationOES_remap_index
+#define ActiveTextureARB_remap_index ActiveTexture_remap_index
+#define ClientActiveTextureARB_remap_index ClientActiveTexture_remap_index
+#define MultiTexCoord4fARB_remap_index MultiTexCoord4f_remap_index
+#define AlphaFuncxOES_remap_index AlphaFuncx_remap_index
+#define ClearColorxOES_remap_index ClearColorx_remap_index
+#define ClearDepthfOES_remap_index ClearDepthf_remap_index
+#define ClearDepthxOES_remap_index ClearDepthx_remap_index
+#define Color4xOES_remap_index Color4x_remap_index
+#define DepthRangefOES_remap_index DepthRangef_remap_index
+#define DepthRangexOES_remap_index DepthRangex_remap_index
+#define FogxOES_remap_index Fogx_remap_index
+#define FogxvOES_remap_index Fogxv_remap_index
+#define FrustumfOES_remap_index Frustumf_remap_index
+#define FrustumxOES_remap_index Frustumx_remap_index
+#define LightModelxOES_remap_index LightModelx_remap_index
+#define LightModelxvOES_remap_index LightModelxv_remap_index
+#define LightxOES_remap_index Lightx_remap_index
+#define LightxvOES_remap_index Lightxv_remap_index
+#define LineWidthxOES_remap_index LineWidthx_remap_index
+#define LoadMatrixxOES_remap_index LoadMatrixx_remap_index
+#define MaterialxOES_remap_index Materialx_remap_index
+#define MaterialxvOES_remap_index Materialxv_remap_index
+#define MultMatrixxOES_remap_index MultMatrixx_remap_index
+#define MultiTexCoord4xOES_remap_index MultiTexCoord4x_remap_index
+#define Normal3xOES_remap_index Normal3x_remap_index
+#define OrthofOES_remap_index Orthof_remap_index
+#define OrthoxOES_remap_index Orthox_remap_index
+#define PointSizexOES_remap_index PointSizex_remap_index
+#define PolygonOffsetxOES_remap_index PolygonOffsetx_remap_index
+#define RotatexOES_remap_index Rotatex_remap_index
+#define SampleCoveragexOES_remap_index SampleCoveragex_remap_index
+#define ScalexOES_remap_index Scalex_remap_index
+#define TexEnvxOES_remap_index TexEnvx_remap_index
+#define TexEnvxvOES_remap_index TexEnvxv_remap_index
+#define TexParameterxOES_remap_index TexParameterx_remap_index
+#define TranslatexOES_remap_index Translatex_remap_index
+#define ClipPlanefOES_remap_index ClipPlanef_remap_index
+#define ClipPlanexOES_remap_index ClipPlanex_remap_index
+#define GetClipPlanefOES_remap_index GetClipPlanef_remap_index
+#define GetClipPlanexOES_remap_index GetClipPlanex_remap_index
+#define GetFixedvOES_remap_index GetFixedv_remap_index
+#define GetLightxvOES_remap_index GetLightxv_remap_index
+#define GetMaterialxvOES_remap_index GetMaterialxv_remap_index
+#define GetTexEnvxvOES_remap_index GetTexEnvxv_remap_index
+#define GetTexParameterxvOES_remap_index GetTexParameterxv_remap_index
+#define PointParameterxOES_remap_index PointParameterx_remap_index
+#define PointParameterxvOES_remap_index PointParameterxv_remap_index
+#define TexParameterxvOES_remap_index TexParameterxv_remap_index
+#endif /* defined(_GLAPI_USE_REMAP_TABLE) */
+
+
+#endif /* !defined( _GLAPI_DISPATCH_H_ ) */
diff --git a/src/mapi/es1api/main/remap_helper.h b/src/mapi/es1api/main/remap_helper.h
new file mode 100644
index 0000000000..0f47c520f3
--- /dev/null
+++ b/src/mapi/es1api/main/remap_helper.h
@@ -0,0 +1,2335 @@
+/* DO NOT EDIT - This file generated automatically by remap_helper.py (from Mesa) script */
+
+/*
+ * Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
+ * Chia-I Wu,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "main/dispatch.h"
+#include "main/remap.h"
+
+/* this is internal to remap.c */
+#ifdef need_MESA_remap_table
+
+static const char _mesa_function_pool[] =
+ /* _mesa_function_pool[0]: MapGrid1d (offset 224) */
+ "idd\0"
+ "glMapGrid1d\0"
+ "\0"
+ /* _mesa_function_pool[17]: MapGrid1f (offset 225) */
+ "iff\0"
+ "glMapGrid1f\0"
+ "\0"
+ /* _mesa_function_pool[34]: RasterPos4i (offset 82) */
+ "iiii\0"
+ "glRasterPos4i\0"
+ "\0"
+ /* _mesa_function_pool[54]: RasterPos4d (offset 78) */
+ "dddd\0"
+ "glRasterPos4d\0"
+ "\0"
+ /* _mesa_function_pool[74]: NewList (dynamic) */
+ "ii\0"
+ "glNewList\0"
+ "\0"
+ /* _mesa_function_pool[88]: RasterPos4f (offset 80) */
+ "ffff\0"
+ "glRasterPos4f\0"
+ "\0"
+ /* _mesa_function_pool[108]: LoadIdentity (offset 290) */
+ "\0"
+ "glLoadIdentity\0"
+ "\0"
+ /* _mesa_function_pool[125]: ConvolutionFilter1D (offset 348) */
+ "iiiiip\0"
+ "glConvolutionFilter1D\0"
+ "\0"
+ /* _mesa_function_pool[155]: RasterPos3dv (offset 71) */
+ "p\0"
+ "glRasterPos3dv\0"
+ "\0"
+ /* _mesa_function_pool[173]: TexCoord1iv (offset 99) */
+ "p\0"
+ "glTexCoord1iv\0"
+ "\0"
+ /* _mesa_function_pool[190]: TexCoord4sv (offset 125) */
+ "p\0"
+ "glTexCoord4sv\0"
+ "\0"
+ /* _mesa_function_pool[207]: RasterPos4s (offset 84) */
+ "iiii\0"
+ "glRasterPos4s\0"
+ "\0"
+ /* _mesa_function_pool[227]: TexCoord1f (offset 96) */
+ "f\0"
+ "glTexCoord1f\0"
+ "\0"
+ /* _mesa_function_pool[243]: PolygonOffsetx (will be remapped) */
+ "ii\0"
+ "glPolygonOffsetx\0"
+ "glPolygonOffsetxOES\0"
+ "\0"
+ /* _mesa_function_pool[284]: TexCoord1i (offset 98) */
+ "i\0"
+ "glTexCoord1i\0"
+ "\0"
+ /* _mesa_function_pool[300]: Histogram (offset 367) */
+ "iiii\0"
+ "glHistogram\0"
+ "\0"
+ /* _mesa_function_pool[318]: TexCoord1s (offset 100) */
+ "i\0"
+ "glTexCoord1s\0"
+ "\0"
+ /* _mesa_function_pool[334]: GetMapfv (offset 267) */
+ "iip\0"
+ "glGetMapfv\0"
+ "\0"
+ /* _mesa_function_pool[350]: EvalCoord1f (offset 230) */
+ "f\0"
+ "glEvalCoord1f\0"
+ "\0"
+ /* _mesa_function_pool[367]: ConvolutionFilter2D (offset 349) */
+ "iiiiiip\0"
+ "glConvolutionFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[398]: PolygonStipple (offset 175) */
+ "p\0"
+ "glPolygonStipple\0"
+ "\0"
+ /* _mesa_function_pool[418]: GetPixelMapfv (offset 271) */
+ "ip\0"
+ "glGetPixelMapfv\0"
+ "\0"
+ /* _mesa_function_pool[438]: Color3uiv (offset 22) */
+ "p\0"
+ "glColor3uiv\0"
+ "\0"
+ /* _mesa_function_pool[453]: IsEnabled (offset 286) */
+ "i\0"
+ "glIsEnabled\0"
+ "\0"
+ /* _mesa_function_pool[468]: EvalCoord2fv (offset 235) */
+ "p\0"
+ "glEvalCoord2fv\0"
+ "\0"
+ /* _mesa_function_pool[486]: GenerateMipmapOES (will be remapped) */
+ "i\0"
+ "glGenerateMipmapOES\0"
+ "\0"
+ /* _mesa_function_pool[509]: GetMapiv (offset 268) */
+ "iip\0"
+ "glGetMapiv\0"
+ "\0"
+ /* _mesa_function_pool[525]: Indexubv (offset 316) */
+ "p\0"
+ "glIndexubv\0"
+ "\0"
+ /* _mesa_function_pool[539]: TexImage3D (offset 371) */
+ "iiiiiiiiip\0"
+ "glTexImage3D\0"
+ "\0"
+ /* _mesa_function_pool[564]: EdgeFlagPointer (offset 312) */
+ "ip\0"
+ "glEdgeFlagPointer\0"
+ "\0"
+ /* _mesa_function_pool[586]: Color3ubv (offset 20) */
+ "p\0"
+ "glColor3ubv\0"
+ "\0"
+ /* _mesa_function_pool[601]: Vertex3dv (offset 135) */
+ "p\0"
+ "glVertex3dv\0"
+ "\0"
+ /* _mesa_function_pool[616]: Disable (offset 214) */
+ "i\0"
+ "glDisable\0"
+ "\0"
+ /* _mesa_function_pool[629]: LightModeliv (offset 166) */
+ "ip\0"
+ "glLightModeliv\0"
+ "\0"
+ /* _mesa_function_pool[648]: GetClipPlanex (will be remapped) */
+ "ip\0"
+ "glGetClipPlanex\0"
+ "glGetClipPlanexOES\0"
+ "\0"
+ /* _mesa_function_pool[687]: Vertex3iv (offset 139) */
+ "p\0"
+ "glVertex3iv\0"
+ "\0"
+ /* _mesa_function_pool[702]: GetClipPlanef (will be remapped) */
+ "ip\0"
+ "glGetClipPlanef\0"
+ "glGetClipPlanefOES\0"
+ "\0"
+ /* _mesa_function_pool[741]: BlendColor (offset 336) */
+ "ffff\0"
+ "glBlendColor\0"
+ "\0"
+ /* _mesa_function_pool[760]: MultiTexCoord3fARB (offset 394) */
+ "ifff\0"
+ "glMultiTexCoord3fARB\0"
+ "\0"
+ /* _mesa_function_pool[787]: DeleteVertexArraysAPPLE (will be remapped) */
+ "ip\0"
+ "glDeleteVertexArraysAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[817]: Scalef (offset 302) */
+ "fff\0"
+ "glScalef\0"
+ "\0"
+ /* _mesa_function_pool[831]: Normal3iv (offset 59) */
+ "p\0"
+ "glNormal3iv\0"
+ "\0"
+ /* _mesa_function_pool[846]: PointSizex (will be remapped) */
+ "i\0"
+ "glPointSizex\0"
+ "glPointSizexOES\0"
+ "\0"
+ /* _mesa_function_pool[878]: DrawTexiOES (will be remapped) */
+ "iiiii\0"
+ "glDrawTexiOES\0"
+ "\0"
+ /* _mesa_function_pool[899]: PassThrough (offset 199) */
+ "f\0"
+ "glPassThrough\0"
+ "\0"
+ /* _mesa_function_pool[916]: Viewport (offset 305) */
+ "iiii\0"
+ "glViewport\0"
+ "\0"
+ /* _mesa_function_pool[933]: DepthRange (offset 288) */
+ "dd\0"
+ "glDepthRange\0"
+ "\0"
+ /* _mesa_function_pool[950]: ResetHistogram (offset 369) */
+ "i\0"
+ "glResetHistogram\0"
+ "\0"
+ /* _mesa_function_pool[970]: CompressedTexSubImage2D (will be remapped) */
+ "iiiiiiiip\0"
+ "glCompressedTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[1007]: MultiTexCoord2dvARB (offset 385) */
+ "ip\0"
+ "glMultiTexCoord2dvARB\0"
+ "\0"
+ /* _mesa_function_pool[1033]: GetMaterialxv (will be remapped) */
+ "iip\0"
+ "glGetMaterialxv\0"
+ "glGetMaterialxvOES\0"
+ "\0"
+ /* _mesa_function_pool[1073]: TexCoord2sv (offset 109) */
+ "p\0"
+ "glTexCoord2sv\0"
+ "\0"
+ /* _mesa_function_pool[1090]: TexCoord2dv (offset 103) */
+ "p\0"
+ "glTexCoord2dv\0"
+ "\0"
+ /* _mesa_function_pool[1107]: TexCoord1d (offset 94) */
+ "d\0"
+ "glTexCoord1d\0"
+ "\0"
+ /* _mesa_function_pool[1123]: Color3sv (offset 18) */
+ "p\0"
+ "glColor3sv\0"
+ "\0"
+ /* _mesa_function_pool[1137]: GetLightxv (will be remapped) */
+ "iip\0"
+ "glGetLightxv\0"
+ "glGetLightxvOES\0"
+ "\0"
+ /* _mesa_function_pool[1171]: GetConvolutionParameteriv (offset 358) */
+ "iip\0"
+ "glGetConvolutionParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[1204]: AlphaFunc (offset 240) */
+ "if\0"
+ "glAlphaFunc\0"
+ "\0"
+ /* _mesa_function_pool[1220]: DrawTexsOES (will be remapped) */
+ "iiiii\0"
+ "glDrawTexsOES\0"
+ "\0"
+ /* _mesa_function_pool[1241]: MultiTexCoord1fvARB (offset 379) */
+ "ip\0"
+ "glMultiTexCoord1fvARB\0"
+ "\0"
+ /* _mesa_function_pool[1267]: TexCoord3iv (offset 115) */
+ "p\0"
+ "glTexCoord3iv\0"
+ "\0"
+ /* _mesa_function_pool[1284]: Color3fv (offset 14) */
+ "p\0"
+ "glColor3fv\0"
+ "\0"
+ /* _mesa_function_pool[1298]: Translated (offset 303) */
+ "ddd\0"
+ "glTranslated\0"
+ "\0"
+ /* _mesa_function_pool[1316]: PointSize (offset 173) */
+ "f\0"
+ "glPointSize\0"
+ "\0"
+ /* _mesa_function_pool[1331]: PopName (offset 200) */
+ "\0"
+ "glPopName\0"
+ "\0"
+ /* _mesa_function_pool[1343]: Vertex4sv (offset 149) */
+ "p\0"
+ "glVertex4sv\0"
+ "\0"
+ /* _mesa_function_pool[1358]: GetTexEnvfv (offset 276) */
+ "iip\0"
+ "glGetTexEnvfv\0"
+ "\0"
+ /* _mesa_function_pool[1377]: ColorTableParameteriv (offset 341) */
+ "iip\0"
+ "glColorTableParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[1406]: LineStipple (offset 167) */
+ "ii\0"
+ "glLineStipple\0"
+ "\0"
+ /* _mesa_function_pool[1424]: TexEnvi (offset 186) */
+ "iii\0"
+ "glTexEnvi\0"
+ "\0"
+ /* _mesa_function_pool[1439]: GetClipPlane (offset 259) */
+ "ip\0"
+ "glGetClipPlane\0"
+ "\0"
+ /* _mesa_function_pool[1458]: Scalex (will be remapped) */
+ "iii\0"
+ "glScalex\0"
+ "glScalexOES\0"
+ "\0"
+ /* _mesa_function_pool[1484]: Scaled (offset 301) */
+ "ddd\0"
+ "glScaled\0"
+ "\0"
+ /* _mesa_function_pool[1498]: CallLists (offset 3) */
+ "iip\0"
+ "glCallLists\0"
+ "\0"
+ /* _mesa_function_pool[1515]: Vertex2dv (offset 127) */
+ "p\0"
+ "glVertex2dv\0"
+ "\0"
+ /* _mesa_function_pool[1530]: EdgeFlag (offset 41) */
+ "i\0"
+ "glEdgeFlag\0"
+ "\0"
+ /* _mesa_function_pool[1544]: TexCoord2iv (offset 107) */
+ "p\0"
+ "glTexCoord2iv\0"
+ "\0"
+ /* _mesa_function_pool[1561]: BlendEquationSeparateOES (will be remapped) */
+ "ii\0"
+ "glBlendEquationSeparateOES\0"
+ "\0"
+ /* _mesa_function_pool[1592]: TexParameterx (will be remapped) */
+ "iii\0"
+ "glTexParameterx\0"
+ "glTexParameterxOES\0"
+ "\0"
+ /* _mesa_function_pool[1632]: ReadPixels (offset 256) */
+ "iiiiiip\0"
+ "glReadPixels\0"
+ "\0"
+ /* _mesa_function_pool[1654]: TexParameteri (offset 180) */
+ "iii\0"
+ "glTexParameteri\0"
+ "\0"
+ /* _mesa_function_pool[1675]: Color4iv (offset 32) */
+ "p\0"
+ "glColor4iv\0"
+ "\0"
+ /* _mesa_function_pool[1689]: TexParameterf (offset 178) */
+ "iif\0"
+ "glTexParameterf\0"
+ "\0"
+ /* _mesa_function_pool[1710]: EdgeFlagv (offset 42) */
+ "p\0"
+ "glEdgeFlagv\0"
+ "\0"
+ /* _mesa_function_pool[1725]: MultiTexCoord3dARB (offset 392) */
+ "iddd\0"
+ "glMultiTexCoord3dARB\0"
+ "\0"
+ /* _mesa_function_pool[1752]: MultiTexCoord2iARB (offset 388) */
+ "iii\0"
+ "glMultiTexCoord2iARB\0"
+ "\0"
+ /* _mesa_function_pool[1778]: DrawPixels (offset 257) */
+ "iiiip\0"
+ "glDrawPixels\0"
+ "\0"
+ /* _mesa_function_pool[1798]: DepthRangex (will be remapped) */
+ "ii\0"
+ "glDepthRangex\0"
+ "glDepthRangexOES\0"
+ "\0"
+ /* _mesa_function_pool[1833]: GenLists (offset 5) */
+ "i\0"
+ "glGenLists\0"
+ "\0"
+ /* _mesa_function_pool[1847]: DepthRangef (will be remapped) */
+ "ff\0"
+ "glDepthRangef\0"
+ "glDepthRangefOES\0"
+ "\0"
+ /* _mesa_function_pool[1882]: MapGrid2d (offset 226) */
+ "iddidd\0"
+ "glMapGrid2d\0"
+ "\0"
+ /* _mesa_function_pool[1902]: MapGrid2f (offset 227) */
+ "iffiff\0"
+ "glMapGrid2f\0"
+ "\0"
+ /* _mesa_function_pool[1922]: Fogx (will be remapped) */
+ "ii\0"
+ "glFogx\0"
+ "glFogxOES\0"
+ "\0"
+ /* _mesa_function_pool[1943]: GetTexGenivOES (offset 280) */
+ "iip\0"
+ "glGetTexGenivOES\0"
+ "glGetTexGeniv\0"
+ "\0"
+ /* _mesa_function_pool[1979]: Scissor (offset 176) */
+ "iiii\0"
+ "glScissor\0"
+ "\0"
+ /* _mesa_function_pool[1995]: Fogf (offset 153) */
+ "if\0"
+ "glFogf\0"
+ "\0"
+ /* _mesa_function_pool[2006]: TexSubImage1D (offset 332) */
+ "iiiiiip\0"
+ "glTexSubImage1D\0"
+ "\0"
+ /* _mesa_function_pool[2031]: Color4usv (offset 40) */
+ "p\0"
+ "glColor4usv\0"
+ "\0"
+ /* _mesa_function_pool[2046]: Fogi (offset 155) */
+ "ii\0"
+ "glFogi\0"
+ "\0"
+ /* _mesa_function_pool[2057]: MultiTexCoord3sARB (offset 398) */
+ "iiii\0"
+ "glMultiTexCoord3sARB\0"
+ "\0"
+ /* _mesa_function_pool[2084]: RasterPos3iv (offset 75) */
+ "p\0"
+ "glRasterPos3iv\0"
+ "\0"
+ /* _mesa_function_pool[2102]: FramebufferRenderbufferOES (will be remapped) */
+ "iiii\0"
+ "glFramebufferRenderbufferOES\0"
+ "\0"
+ /* _mesa_function_pool[2137]: TexCoord2i (offset 106) */
+ "ii\0"
+ "glTexCoord2i\0"
+ "\0"
+ /* _mesa_function_pool[2154]: DepthFunc (offset 245) */
+ "i\0"
+ "glDepthFunc\0"
+ "\0"
+ /* _mesa_function_pool[2169]: Color4ui (offset 37) */
+ "iiii\0"
+ "glColor4ui\0"
+ "\0"
+ /* _mesa_function_pool[2186]: RasterPos3s (offset 76) */
+ "iii\0"
+ "glRasterPos3s\0"
+ "\0"
+ /* _mesa_function_pool[2205]: Color3usv (offset 24) */
+ "p\0"
+ "glColor3usv\0"
+ "\0"
+ /* _mesa_function_pool[2220]: TexCoord2f (offset 104) */
+ "ff\0"
+ "glTexCoord2f\0"
+ "\0"
+ /* _mesa_function_pool[2237]: TexCoord2d (offset 102) */
+ "dd\0"
+ "glTexCoord2d\0"
+ "\0"
+ /* _mesa_function_pool[2254]: RasterPos3d (offset 70) */
+ "ddd\0"
+ "glRasterPos3d\0"
+ "\0"
+ /* _mesa_function_pool[2273]: RasterPos3f (offset 72) */
+ "fff\0"
+ "glRasterPos3f\0"
+ "\0"
+ /* _mesa_function_pool[2292]: AreTexturesResident (offset 322) */
+ "ipp\0"
+ "glAreTexturesResident\0"
+ "\0"
+ /* _mesa_function_pool[2319]: TexCoord2s (offset 108) */
+ "ii\0"
+ "glTexCoord2s\0"
+ "\0"
+ /* _mesa_function_pool[2336]: RasterPos3i (offset 74) */
+ "iii\0"
+ "glRasterPos3i\0"
+ "\0"
+ /* _mesa_function_pool[2355]: Color4us (offset 39) */
+ "iiii\0"
+ "glColor4us\0"
+ "\0"
+ /* _mesa_function_pool[2372]: GetTexParameteriv (offset 283) */
+ "iip\0"
+ "glGetTexParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[2397]: MapBufferOES (will be remapped) */
+ "ii\0"
+ "glMapBufferOES\0"
+ "\0"
+ /* _mesa_function_pool[2416]: DrawTexfOES (will be remapped) */
+ "fffff\0"
+ "glDrawTexfOES\0"
+ "\0"
+ /* _mesa_function_pool[2437]: MultiTexCoord2fARB (offset 386) */
+ "iff\0"
+ "glMultiTexCoord2fARB\0"
+ "\0"
+ /* _mesa_function_pool[2463]: ColorTable (offset 339) */
+ "iiiiip\0"
+ "glColorTable\0"
+ "\0"
+ /* _mesa_function_pool[2484]: IndexPointer (offset 314) */
+ "iip\0"
+ "glIndexPointer\0"
+ "\0"
+ /* _mesa_function_pool[2504]: Accum (offset 213) */
+ "if\0"
+ "glAccum\0"
+ "\0"
+ /* _mesa_function_pool[2516]: GetTexImage (offset 281) */
+ "iiiip\0"
+ "glGetTexImage\0"
+ "\0"
+ /* _mesa_function_pool[2537]: LoadName (offset 198) */
+ "i\0"
+ "glLoadName\0"
+ "\0"
+ /* _mesa_function_pool[2551]: Finish (offset 216) */
+ "\0"
+ "glFinish\0"
+ "\0"
+ /* _mesa_function_pool[2562]: ClearStencil (offset 207) */
+ "i\0"
+ "glClearStencil\0"
+ "\0"
+ /* _mesa_function_pool[2580]: Color4x (will be remapped) */
+ "iiii\0"
+ "glColor4x\0"
+ "glColor4xOES\0"
+ "\0"
+ /* _mesa_function_pool[2609]: ConvolutionParameteriv (offset 353) */
+ "iip\0"
+ "glConvolutionParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[2639]: GenBuffers (will be remapped) */
+ "ip\0"
+ "glGenBuffers\0"
+ "\0"
+ /* _mesa_function_pool[2656]: InterleavedArrays (offset 317) */
+ "iip\0"
+ "glInterleavedArrays\0"
+ "\0"
+ /* _mesa_function_pool[2681]: RasterPos2fv (offset 65) */
+ "p\0"
+ "glRasterPos2fv\0"
+ "\0"
+ /* _mesa_function_pool[2699]: TexCoord1fv (offset 97) */
+ "p\0"
+ "glTexCoord1fv\0"
+ "\0"
+ /* _mesa_function_pool[2716]: Vertex2d (offset 126) */
+ "dd\0"
+ "glVertex2d\0"
+ "\0"
+ /* _mesa_function_pool[2731]: PixelTransferf (offset 247) */
+ "if\0"
+ "glPixelTransferf\0"
+ "\0"
+ /* _mesa_function_pool[2752]: Color4i (offset 31) */
+ "iiii\0"
+ "glColor4i\0"
+ "\0"
+ /* _mesa_function_pool[2768]: Color4f (offset 29) */
+ "ffff\0"
+ "glColor4f\0"
+ "\0"
+ /* _mesa_function_pool[2784]: RasterPos4fv (offset 81) */
+ "p\0"
+ "glRasterPos4fv\0"
+ "\0"
+ /* _mesa_function_pool[2802]: Color4d (offset 27) */
+ "dddd\0"
+ "glColor4d\0"
+ "\0"
+ /* _mesa_function_pool[2818]: ClearIndex (offset 205) */
+ "f\0"
+ "glClearIndex\0"
+ "\0"
+ /* _mesa_function_pool[2834]: Color4b (offset 25) */
+ "iiii\0"
+ "glColor4b\0"
+ "\0"
+ /* _mesa_function_pool[2850]: LoadMatrixd (offset 292) */
+ "p\0"
+ "glLoadMatrixd\0"
+ "\0"
+ /* _mesa_function_pool[2867]: PushMatrix (offset 298) */
+ "\0"
+ "glPushMatrix\0"
+ "\0"
+ /* _mesa_function_pool[2882]: ConvolutionParameterfv (offset 351) */
+ "iip\0"
+ "glConvolutionParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[2912]: BlendFuncSeparateOES (will be remapped) */
+ "iiii\0"
+ "glBlendFuncSeparateOES\0"
+ "\0"
+ /* _mesa_function_pool[2941]: GetTexGendv (offset 278) */
+ "iip\0"
+ "glGetTexGendv\0"
+ "\0"
+ /* _mesa_function_pool[2960]: EndList (offset 1) */
+ "\0"
+ "glEndList\0"
+ "\0"
+ /* _mesa_function_pool[2972]: Fogiv (offset 156) */
+ "ip\0"
+ "glFogiv\0"
+ "\0"
+ /* _mesa_function_pool[2984]: EvalCoord1fv (offset 231) */
+ "p\0"
+ "glEvalCoord1fv\0"
+ "\0"
+ /* _mesa_function_pool[3002]: DrawRangeElements (offset 338) */
+ "iiiiip\0"
+ "glDrawRangeElements\0"
+ "\0"
+ /* _mesa_function_pool[3030]: EvalMesh2 (offset 238) */
+ "iiiii\0"
+ "glEvalMesh2\0"
+ "\0"
+ /* _mesa_function_pool[3049]: GetTexGenxvOES (will be remapped) */
+ "iip\0"
+ "glGetTexGenxvOES\0"
+ "\0"
+ /* _mesa_function_pool[3071]: Vertex4fv (offset 145) */
+ "p\0"
+ "glVertex4fv\0"
+ "\0"
+ /* _mesa_function_pool[3086]: VertexPointer (offset 321) */
+ "iiip\0"
+ "glVertexPointer\0"
+ "\0"
+ /* _mesa_function_pool[3108]: GetMinmax (offset 364) */
+ "iiiip\0"
+ "glGetMinmax\0"
+ "\0"
+ /* _mesa_function_pool[3127]: Normal3fv (offset 57) */
+ "p\0"
+ "glNormal3fv\0"
+ "\0"
+ /* _mesa_function_pool[3142]: Color3us (offset 23) */
+ "iii\0"
+ "glColor3us\0"
+ "\0"
+ /* _mesa_function_pool[3158]: End (offset 43) */
+ "\0"
+ "glEnd\0"
+ "\0"
+ /* _mesa_function_pool[3166]: MultiTexCoord3fvARB (offset 395) */
+ "ip\0"
+ "glMultiTexCoord3fvARB\0"
+ "\0"
+ /* _mesa_function_pool[3192]: Color3ub (offset 19) */
+ "iii\0"
+ "glColor3ub\0"
+ "\0"
+ /* _mesa_function_pool[3208]: BufferData (will be remapped) */
+ "iipi\0"
+ "glBufferData\0"
+ "\0"
+ /* _mesa_function_pool[3227]: BlendEquationOES (offset 337) */
+ "i\0"
+ "glBlendEquationOES\0"
+ "glBlendEquation\0"
+ "\0"
+ /* _mesa_function_pool[3265]: Color3ui (offset 21) */
+ "iii\0"
+ "glColor3ui\0"
+ "\0"
+ /* _mesa_function_pool[3281]: TexSubImage2D (offset 333) */
+ "iiiiiiiip\0"
+ "glTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[3308]: Enable (offset 215) */
+ "i\0"
+ "glEnable\0"
+ "\0"
+ /* _mesa_function_pool[3320]: MultiTexCoord4sARB (offset 406) */
+ "iiiii\0"
+ "glMultiTexCoord4sARB\0"
+ "\0"
+ /* _mesa_function_pool[3348]: Normal3x (will be remapped) */
+ "iii\0"
+ "glNormal3x\0"
+ "glNormal3xOES\0"
+ "\0"
+ /* _mesa_function_pool[3378]: LineWidthx (will be remapped) */
+ "i\0"
+ "glLineWidthx\0"
+ "glLineWidthxOES\0"
+ "\0"
+ /* _mesa_function_pool[3410]: GetError (offset 261) */
+ "\0"
+ "glGetError\0"
+ "\0"
+ /* _mesa_function_pool[3423]: TexCoord3dv (offset 111) */
+ "p\0"
+ "glTexCoord3dv\0"
+ "\0"
+ /* _mesa_function_pool[3440]: Indexdv (offset 45) */
+ "p\0"
+ "glIndexdv\0"
+ "\0"
+ /* _mesa_function_pool[3453]: Normal3s (offset 60) */
+ "iii\0"
+ "glNormal3s\0"
+ "\0"
+ /* _mesa_function_pool[3469]: PushName (offset 201) */
+ "i\0"
+ "glPushName\0"
+ "\0"
+ /* _mesa_function_pool[3483]: Materialxv (will be remapped) */
+ "iip\0"
+ "glMaterialxv\0"
+ "glMaterialxvOES\0"
+ "\0"
+ /* _mesa_function_pool[3517]: Normal3i (offset 58) */
+ "iii\0"
+ "glNormal3i\0"
+ "\0"
+ /* _mesa_function_pool[3533]: Normal3b (offset 52) */
+ "iii\0"
+ "glNormal3b\0"
+ "\0"
+ /* _mesa_function_pool[3549]: Normal3d (offset 54) */
+ "ddd\0"
+ "glNormal3d\0"
+ "\0"
+ /* _mesa_function_pool[3565]: Normal3f (offset 56) */
+ "fff\0"
+ "glNormal3f\0"
+ "\0"
+ /* _mesa_function_pool[3581]: MultiTexCoord1svARB (offset 383) */
+ "ip\0"
+ "glMultiTexCoord1svARB\0"
+ "\0"
+ /* _mesa_function_pool[3607]: Indexi (offset 48) */
+ "i\0"
+ "glIndexi\0"
+ "\0"
+ /* _mesa_function_pool[3619]: EGLImageTargetTexture2DOES (will be remapped) */
+ "ip\0"
+ "glEGLImageTargetTexture2DOES\0"
+ "\0"
+ /* _mesa_function_pool[3652]: DepthMask (offset 211) */
+ "i\0"
+ "glDepthMask\0"
+ "\0"
+ /* _mesa_function_pool[3667]: Indexf (offset 46) */
+ "f\0"
+ "glIndexf\0"
+ "\0"
+ /* _mesa_function_pool[3679]: Indexd (offset 44) */
+ "d\0"
+ "glIndexd\0"
+ "\0"
+ /* _mesa_function_pool[3691]: GetMaterialiv (offset 270) */
+ "iip\0"
+ "glGetMaterialiv\0"
+ "\0"
+ /* _mesa_function_pool[3712]: StencilOp (offset 244) */
+ "iii\0"
+ "glStencilOp\0"
+ "\0"
+ /* _mesa_function_pool[3729]: MultiTexCoord3svARB (offset 399) */
+ "ip\0"
+ "glMultiTexCoord3svARB\0"
+ "\0"
+ /* _mesa_function_pool[3755]: TexEnvfv (offset 185) */
+ "iip\0"
+ "glTexEnvfv\0"
+ "\0"
+ /* _mesa_function_pool[3771]: MultiTexCoord4iARB (offset 404) */
+ "iiiii\0"
+ "glMultiTexCoord4iARB\0"
+ "\0"
+ /* _mesa_function_pool[3799]: Indexs (offset 50) */
+ "i\0"
+ "glIndexs\0"
+ "\0"
+ /* _mesa_function_pool[3811]: BindFramebufferOES (will be remapped) */
+ "ii\0"
+ "glBindFramebufferOES\0"
+ "\0"
+ /* _mesa_function_pool[3836]: Fogxv (will be remapped) */
+ "ip\0"
+ "glFogxv\0"
+ "glFogxvOES\0"
+ "\0"
+ /* _mesa_function_pool[3859]: EGLImageTargetRenderbufferStorageOES (will be remapped) */
+ "ip\0"
+ "glEGLImageTargetRenderbufferStorageOES\0"
+ "\0"
+ /* _mesa_function_pool[3902]: Vertex2i (offset 130) */
+ "ii\0"
+ "glVertex2i\0"
+ "\0"
+ /* _mesa_function_pool[3917]: LoadMatrixf (offset 291) */
+ "p\0"
+ "glLoadMatrixf\0"
+ "\0"
+ /* _mesa_function_pool[3934]: Vertex2f (offset 128) */
+ "ff\0"
+ "glVertex2f\0"
+ "\0"
+ /* _mesa_function_pool[3949]: Color4bv (offset 26) */
+ "p\0"
+ "glColor4bv\0"
+ "\0"
+ /* _mesa_function_pool[3963]: DrawTexfvOES (will be remapped) */
+ "p\0"
+ "glDrawTexfvOES\0"
+ "\0"
+ /* _mesa_function_pool[3981]: LoadMatrixx (will be remapped) */
+ "p\0"
+ "glLoadMatrixx\0"
+ "glLoadMatrixxOES\0"
+ "\0"
+ /* _mesa_function_pool[4015]: DeleteLists (offset 4) */
+ "ii\0"
+ "glDeleteLists\0"
+ "\0"
+ /* _mesa_function_pool[4033]: LogicOp (offset 242) */
+ "i\0"
+ "glLogicOp\0"
+ "\0"
+ /* _mesa_function_pool[4046]: Vertex2s (offset 132) */
+ "ii\0"
+ "glVertex2s\0"
+ "\0"
+ /* _mesa_function_pool[4061]: TexCoord4fv (offset 121) */
+ "p\0"
+ "glTexCoord4fv\0"
+ "\0"
+ /* _mesa_function_pool[4078]: ActiveTexture (offset 374) */
+ "i\0"
+ "glActiveTexture\0"
+ "glActiveTextureARB\0"
+ "\0"
+ /* _mesa_function_pool[4116]: MultiTexCoord3iARB (offset 396) */
+ "iiii\0"
+ "glMultiTexCoord3iARB\0"
+ "\0"
+ /* _mesa_function_pool[4143]: GenRenderbuffersOES (will be remapped) */
+ "ip\0"
+ "glGenRenderbuffersOES\0"
+ "\0"
+ /* _mesa_function_pool[4169]: DrawTexxOES (will be remapped) */
+ "iiiii\0"
+ "glDrawTexxOES\0"
+ "\0"
+ /* _mesa_function_pool[4190]: GenTextures (offset 328) */
+ "ip\0"
+ "glGenTextures\0"
+ "\0"
+ /* _mesa_function_pool[4208]: Normal3bv (offset 53) */
+ "p\0"
+ "glNormal3bv\0"
+ "\0"
+ /* _mesa_function_pool[4223]: DrawTexxvOES (will be remapped) */
+ "p\0"
+ "glDrawTexxvOES\0"
+ "\0"
+ /* _mesa_function_pool[4241]: TexCoord4iv (offset 123) */
+ "p\0"
+ "glTexCoord4iv\0"
+ "\0"
+ /* _mesa_function_pool[4258]: Color4ubv (offset 36) */
+ "p\0"
+ "glColor4ubv\0"
+ "\0"
+ /* _mesa_function_pool[4273]: DrawBuffer (offset 202) */
+ "i\0"
+ "glDrawBuffer\0"
+ "\0"
+ /* _mesa_function_pool[4289]: TexCoord2fv (offset 105) */
+ "p\0"
+ "glTexCoord2fv\0"
+ "\0"
+ /* _mesa_function_pool[4306]: TexCoord1sv (offset 101) */
+ "p\0"
+ "glTexCoord1sv\0"
+ "\0"
+ /* _mesa_function_pool[4323]: PixelMapfv (offset 251) */
+ "iip\0"
+ "glPixelMapfv\0"
+ "\0"
+ /* _mesa_function_pool[4341]: GenFramebuffersOES (will be remapped) */
+ "ip\0"
+ "glGenFramebuffersOES\0"
+ "\0"
+ /* _mesa_function_pool[4366]: MultiTexCoord1dARB (offset 376) */
+ "id\0"
+ "glMultiTexCoord1dARB\0"
+ "\0"
+ /* _mesa_function_pool[4391]: Orthof (will be remapped) */
+ "ffffff\0"
+ "glOrthof\0"
+ "glOrthofOES\0"
+ "\0"
+ /* _mesa_function_pool[4420]: CompressedTexImage2D (will be remapped) */
+ "iiiiiiip\0"
+ "glCompressedTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[4453]: MultiTexCoord3dvARB (offset 393) */
+ "ip\0"
+ "glMultiTexCoord3dvARB\0"
+ "\0"
+ /* _mesa_function_pool[4479]: Flush (offset 217) */
+ "\0"
+ "glFlush\0"
+ "\0"
+ /* _mesa_function_pool[4489]: Color4uiv (offset 38) */
+ "p\0"
+ "glColor4uiv\0"
+ "\0"
+ /* _mesa_function_pool[4504]: Orthox (will be remapped) */
+ "iiiiii\0"
+ "glOrthox\0"
+ "glOrthoxOES\0"
+ "\0"
+ /* _mesa_function_pool[4533]: RasterPos3sv (offset 77) */
+ "p\0"
+ "glRasterPos3sv\0"
+ "\0"
+ /* _mesa_function_pool[4551]: PushAttrib (offset 219) */
+ "i\0"
+ "glPushAttrib\0"
+ "\0"
+ /* _mesa_function_pool[4567]: RasterPos2i (offset 66) */
+ "ii\0"
+ "glRasterPos2i\0"
+ "\0"
+ /* _mesa_function_pool[4585]: TexParameteriv (offset 181) */
+ "iip\0"
+ "glTexParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[4607]: RasterPos2f (offset 64) */
+ "ff\0"
+ "glRasterPos2f\0"
+ "\0"
+ /* _mesa_function_pool[4625]: RasterPos2d (offset 62) */
+ "dd\0"
+ "glRasterPos2d\0"
+ "\0"
+ /* _mesa_function_pool[4643]: RasterPos3fv (offset 73) */
+ "p\0"
+ "glRasterPos3fv\0"
+ "\0"
+ /* _mesa_function_pool[4661]: CopyTexSubImage3D (offset 373) */
+ "iiiiiiiii\0"
+ "glCopyTexSubImage3D\0"
+ "\0"
+ /* _mesa_function_pool[4692]: Color4ub (offset 35) */
+ "iiii\0"
+ "glColor4ub\0"
+ "\0"
+ /* _mesa_function_pool[4709]: RasterPos2s (offset 68) */
+ "ii\0"
+ "glRasterPos2s\0"
+ "\0"
+ /* _mesa_function_pool[4727]: GetColorTable (offset 343) */
+ "iiip\0"
+ "glGetColorTable\0"
+ "\0"
+ /* _mesa_function_pool[4749]: SelectBuffer (offset 195) */
+ "ip\0"
+ "glSelectBuffer\0"
+ "\0"
+ /* _mesa_function_pool[4768]: Indexiv (offset 49) */
+ "p\0"
+ "glIndexiv\0"
+ "\0"
+ /* _mesa_function_pool[4781]: TexCoord3i (offset 114) */
+ "iii\0"
+ "glTexCoord3i\0"
+ "\0"
+ /* _mesa_function_pool[4799]: CopyColorTable (offset 342) */
+ "iiiii\0"
+ "glCopyColorTable\0"
+ "\0"
+ /* _mesa_function_pool[4823]: PointParameterfv (will be remapped) */
+ "ip\0"
+ "glPointParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[4846]: GetHistogramParameterfv (offset 362) */
+ "iip\0"
+ "glGetHistogramParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[4877]: Frustum (offset 289) */
+ "dddddd\0"
+ "glFrustum\0"
+ "\0"
+ /* _mesa_function_pool[4895]: GetString (offset 275) */
+ "i\0"
+ "glGetString\0"
+ "\0"
+ /* _mesa_function_pool[4910]: TexEnvf (offset 184) */
+ "iif\0"
+ "glTexEnvf\0"
+ "\0"
+ /* _mesa_function_pool[4925]: TexCoord3d (offset 110) */
+ "ddd\0"
+ "glTexCoord3d\0"
+ "\0"
+ /* _mesa_function_pool[4943]: TexCoord3f (offset 112) */
+ "fff\0"
+ "glTexCoord3f\0"
+ "\0"
+ /* _mesa_function_pool[4961]: MultiTexCoord3ivARB (offset 397) */
+ "ip\0"
+ "glMultiTexCoord3ivARB\0"
+ "\0"
+ /* _mesa_function_pool[4987]: MultiTexCoord2sARB (offset 390) */
+ "iii\0"
+ "glMultiTexCoord2sARB\0"
+ "\0"
+ /* _mesa_function_pool[5013]: TexEnvx (will be remapped) */
+ "iii\0"
+ "glTexEnvx\0"
+ "glTexEnvxOES\0"
+ "\0"
+ /* _mesa_function_pool[5041]: TexCoord3s (offset 116) */
+ "iii\0"
+ "glTexCoord3s\0"
+ "\0"
+ /* _mesa_function_pool[5059]: GetTexLevelParameteriv (offset 285) */
+ "iiip\0"
+ "glGetTexLevelParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5090]: ClearAccum (offset 204) */
+ "ffff\0"
+ "glClearAccum\0"
+ "\0"
+ /* _mesa_function_pool[5109]: RasterPos2sv (offset 69) */
+ "p\0"
+ "glRasterPos2sv\0"
+ "\0"
+ /* _mesa_function_pool[5127]: PolygonOffset (offset 319) */
+ "ff\0"
+ "glPolygonOffset\0"
+ "\0"
+ /* _mesa_function_pool[5147]: GetBufferParameteriv (will be remapped) */
+ "iip\0"
+ "glGetBufferParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5175]: Rectd (offset 86) */
+ "dddd\0"
+ "glRectd\0"
+ "\0"
+ /* _mesa_function_pool[5189]: PointSizePointerOES (will be remapped) */
+ "iip\0"
+ "glPointSizePointerOES\0"
+ "\0"
+ /* _mesa_function_pool[5216]: CopyTexImage2D (offset 324) */
+ "iiiiiiii\0"
+ "glCopyTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[5243]: GenVertexArraysAPPLE (will be remapped) */
+ "ip\0"
+ "glGenVertexArraysAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[5270]: Lightfv (offset 160) */
+ "iip\0"
+ "glLightfv\0"
+ "\0"
+ /* _mesa_function_pool[5285]: Vertex3fv (offset 137) */
+ "p\0"
+ "glVertex3fv\0"
+ "\0"
+ /* _mesa_function_pool[5300]: ColorSubTable (offset 346) */
+ "iiiiip\0"
+ "glColorSubTable\0"
+ "\0"
+ /* _mesa_function_pool[5324]: Color4fv (offset 30) */
+ "p\0"
+ "glColor4fv\0"
+ "\0"
+ /* _mesa_function_pool[5338]: MultiTexCoord4ivARB (offset 405) */
+ "ip\0"
+ "glMultiTexCoord4ivARB\0"
+ "\0"
+ /* _mesa_function_pool[5364]: LoadPaletteFromModelViewMatrixOES (dynamic) */
+ "\0"
+ "glLoadPaletteFromModelViewMatrixOES\0"
+ "\0"
+ /* _mesa_function_pool[5402]: ColorPointer (offset 308) */
+ "iiip\0"
+ "glColorPointer\0"
+ "\0"
+ /* _mesa_function_pool[5423]: Rects (offset 92) */
+ "iiii\0"
+ "glRects\0"
+ "\0"
+ /* _mesa_function_pool[5437]: Lightiv (offset 162) */
+ "iip\0"
+ "glLightiv\0"
+ "\0"
+ /* _mesa_function_pool[5452]: IsFramebufferOES (will be remapped) */
+ "i\0"
+ "glIsFramebufferOES\0"
+ "\0"
+ /* _mesa_function_pool[5474]: Color3bv (offset 10) */
+ "p\0"
+ "glColor3bv\0"
+ "\0"
+ /* _mesa_function_pool[5488]: GetBufferPointervOES (will be remapped) */
+ "iip\0"
+ "glGetBufferPointervOES\0"
+ "\0"
+ /* _mesa_function_pool[5516]: PixelMapusv (offset 253) */
+ "iip\0"
+ "glPixelMapusv\0"
+ "\0"
+ /* _mesa_function_pool[5535]: GetTexGenfvOES (offset 279) */
+ "iip\0"
+ "glGetTexGenfvOES\0"
+ "glGetTexGenfv\0"
+ "\0"
+ /* _mesa_function_pool[5571]: Rectdv (offset 87) */
+ "pp\0"
+ "glRectdv\0"
+ "\0"
+ /* _mesa_function_pool[5584]: GetTexParameterxv (will be remapped) */
+ "iip\0"
+ "glGetTexParameterxv\0"
+ "glGetTexParameterxvOES\0"
+ "\0"
+ /* _mesa_function_pool[5632]: Materialiv (offset 172) */
+ "iip\0"
+ "glMaterialiv\0"
+ "\0"
+ /* _mesa_function_pool[5650]: PushClientAttrib (offset 335) */
+ "i\0"
+ "glPushClientAttrib\0"
+ "\0"
+ /* _mesa_function_pool[5672]: TexGenfOES (offset 190) */
+ "iif\0"
+ "glTexGenfOES\0"
+ "glTexGenf\0"
+ "\0"
+ /* _mesa_function_pool[5700]: MatrixIndexPointerOES (dynamic) */
+ "iiip\0"
+ "glMatrixIndexPointerOES\0"
+ "\0"
+ /* _mesa_function_pool[5730]: PolygonMode (offset 174) */
+ "ii\0"
+ "glPolygonMode\0"
+ "\0"
+ /* _mesa_function_pool[5748]: BlendFunc (offset 241) */
+ "ii\0"
+ "glBlendFunc\0"
+ "\0"
+ /* _mesa_function_pool[5764]: DisableClientState (offset 309) */
+ "i\0"
+ "glDisableClientState\0"
+ "\0"
+ /* _mesa_function_pool[5788]: TexGend (offset 188) */
+ "iid\0"
+ "glTexGend\0"
+ "\0"
+ /* _mesa_function_pool[5803]: GetPolygonStipple (offset 274) */
+ "p\0"
+ "glGetPolygonStipple\0"
+ "\0"
+ /* _mesa_function_pool[5826]: TexGenxOES (will be remapped) */
+ "iii\0"
+ "glTexGenxOES\0"
+ "\0"
+ /* _mesa_function_pool[5844]: PointParameterxv (will be remapped) */
+ "ip\0"
+ "glPointParameterxv\0"
+ "glPointParameterxvOES\0"
+ "\0"
+ /* _mesa_function_pool[5889]: Color4sv (offset 34) */
+ "p\0"
+ "glColor4sv\0"
+ "\0"
+ /* _mesa_function_pool[5903]: PixelZoom (offset 246) */
+ "ff\0"
+ "glPixelZoom\0"
+ "\0"
+ /* _mesa_function_pool[5919]: ColorTableParameterfv (offset 340) */
+ "iip\0"
+ "glColorTableParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[5948]: PixelMapuiv (offset 252) */
+ "iip\0"
+ "glPixelMapuiv\0"
+ "\0"
+ /* _mesa_function_pool[5967]: Color3dv (offset 12) */
+ "p\0"
+ "glColor3dv\0"
+ "\0"
+ /* _mesa_function_pool[5981]: IsTexture (offset 330) */
+ "i\0"
+ "glIsTexture\0"
+ "\0"
+ /* _mesa_function_pool[5996]: DeleteFramebuffersOES (will be remapped) */
+ "ip\0"
+ "glDeleteFramebuffersOES\0"
+ "\0"
+ /* _mesa_function_pool[6024]: WeightPointerOES (dynamic) */
+ "iiip\0"
+ "glWeightPointerOES\0"
+ "\0"
+ /* _mesa_function_pool[6049]: CurrentPaletteMatrixOES (dynamic) */
+ "i\0"
+ "glCurrentPaletteMatrixOES\0"
+ "\0"
+ /* _mesa_function_pool[6078]: TexCoord4i (offset 122) */
+ "iiii\0"
+ "glTexCoord4i\0"
+ "\0"
+ /* _mesa_function_pool[6097]: GetMapdv (offset 266) */
+ "iip\0"
+ "glGetMapdv\0"
+ "\0"
+ /* _mesa_function_pool[6113]: PixelStoref (offset 249) */
+ "if\0"
+ "glPixelStoref\0"
+ "\0"
+ /* _mesa_function_pool[6131]: PrioritizeTextures (offset 331) */
+ "ipp\0"
+ "glPrioritizeTextures\0"
+ "\0"
+ /* _mesa_function_pool[6157]: PixelStorei (offset 250) */
+ "ii\0"
+ "glPixelStorei\0"
+ "\0"
+ /* _mesa_function_pool[6175]: IsBuffer (will be remapped) */
+ "i\0"
+ "glIsBuffer\0"
+ "\0"
+ /* _mesa_function_pool[6189]: EvalCoord2dv (offset 233) */
+ "p\0"
+ "glEvalCoord2dv\0"
+ "\0"
+ /* _mesa_function_pool[6207]: GetFixedv (will be remapped) */
+ "ip\0"
+ "glGetFixedv\0"
+ "glGetFixedvOES\0"
+ "\0"
+ /* _mesa_function_pool[6238]: RenderbufferStorageOES (will be remapped) */
+ "iiii\0"
+ "glRenderbufferStorageOES\0"
+ "\0"
+ /* _mesa_function_pool[6269]: ColorMaterial (offset 151) */
+ "ii\0"
+ "glColorMaterial\0"
+ "\0"
+ /* _mesa_function_pool[6289]: Minmax (offset 368) */
+ "iii\0"
+ "glMinmax\0"
+ "\0"
+ /* _mesa_function_pool[6303]: GetSeparableFilter (offset 359) */
+ "iiippp\0"
+ "glGetSeparableFilter\0"
+ "\0"
+ /* _mesa_function_pool[6332]: FeedbackBuffer (offset 194) */
+ "iip\0"
+ "glFeedbackBuffer\0"
+ "\0"
+ /* _mesa_function_pool[6354]: RasterPos2iv (offset 67) */
+ "p\0"
+ "glRasterPos2iv\0"
+ "\0"
+ /* _mesa_function_pool[6372]: TexImage1D (offset 182) */
+ "iiiiiiip\0"
+ "glTexImage1D\0"
+ "\0"
+ /* _mesa_function_pool[6395]: MultiDrawElementsEXT (will be remapped) */
+ "ipipi\0"
+ "glMultiDrawElementsEXT\0"
+ "\0"
+ /* _mesa_function_pool[6425]: Color3s (offset 17) */
+ "iii\0"
+ "glColor3s\0"
+ "\0"
+ /* _mesa_function_pool[6440]: TexCoordPointer (offset 320) */
+ "iiip\0"
+ "glTexCoordPointer\0"
+ "\0"
+ /* _mesa_function_pool[6464]: GetRenderbufferParameterivOES (will be remapped) */
+ "iip\0"
+ "glGetRenderbufferParameterivOES\0"
+ "\0"
+ /* _mesa_function_pool[6501]: Color3i (offset 15) */
+ "iii\0"
+ "glColor3i\0"
+ "\0"
+ /* _mesa_function_pool[6516]: FrontFace (offset 157) */
+ "i\0"
+ "glFrontFace\0"
+ "\0"
+ /* _mesa_function_pool[6531]: EvalCoord2d (offset 232) */
+ "dd\0"
+ "glEvalCoord2d\0"
+ "\0"
+ /* _mesa_function_pool[6549]: EvalCoord2f (offset 234) */
+ "ff\0"
+ "glEvalCoord2f\0"
+ "\0"
+ /* _mesa_function_pool[6567]: Color3b (offset 9) */
+ "iii\0"
+ "glColor3b\0"
+ "\0"
+ /* _mesa_function_pool[6582]: MultiTexCoord2dARB (offset 384) */
+ "idd\0"
+ "glMultiTexCoord2dARB\0"
+ "\0"
+ /* _mesa_function_pool[6608]: Color3f (offset 13) */
+ "fff\0"
+ "glColor3f\0"
+ "\0"
+ /* _mesa_function_pool[6623]: Color3d (offset 11) */
+ "ddd\0"
+ "glColor3d\0"
+ "\0"
+ /* _mesa_function_pool[6638]: Normal3dv (offset 55) */
+ "p\0"
+ "glNormal3dv\0"
+ "\0"
+ /* _mesa_function_pool[6653]: Lightf (offset 159) */
+ "iif\0"
+ "glLightf\0"
+ "\0"
+ /* _mesa_function_pool[6667]: MatrixMode (offset 293) */
+ "i\0"
+ "glMatrixMode\0"
+ "\0"
+ /* _mesa_function_pool[6683]: GetPixelMapusv (offset 273) */
+ "ip\0"
+ "glGetPixelMapusv\0"
+ "\0"
+ /* _mesa_function_pool[6704]: Lighti (offset 161) */
+ "iii\0"
+ "glLighti\0"
+ "\0"
+ /* _mesa_function_pool[6718]: Color4s (offset 33) */
+ "iiii\0"
+ "glColor4s\0"
+ "\0"
+ /* _mesa_function_pool[6734]: ClearDepthx (will be remapped) */
+ "i\0"
+ "glClearDepthx\0"
+ "glClearDepthxOES\0"
+ "\0"
+ /* _mesa_function_pool[6768]: MultiTexCoord4dvARB (offset 401) */
+ "ip\0"
+ "glMultiTexCoord4dvARB\0"
+ "\0"
+ /* _mesa_function_pool[6794]: Lightx (will be remapped) */
+ "iii\0"
+ "glLightx\0"
+ "glLightxOES\0"
+ "\0"
+ /* _mesa_function_pool[6820]: GetDoublev (offset 260) */
+ "ip\0"
+ "glGetDoublev\0"
+ "\0"
+ /* _mesa_function_pool[6837]: MultMatrixd (offset 295) */
+ "p\0"
+ "glMultMatrixd\0"
+ "\0"
+ /* _mesa_function_pool[6854]: MultMatrixf (offset 294) */
+ "p\0"
+ "glMultMatrixf\0"
+ "\0"
+ /* _mesa_function_pool[6871]: GetFramebufferAttachmentParameterivOES (will be remapped) */
+ "iiip\0"
+ "glGetFramebufferAttachmentParameterivOES\0"
+ "\0"
+ /* _mesa_function_pool[6918]: MultiTexCoord4fvARB (offset 403) */
+ "ip\0"
+ "glMultiTexCoord4fvARB\0"
+ "\0"
+ /* _mesa_function_pool[6944]: MultMatrixx (will be remapped) */
+ "p\0"
+ "glMultMatrixx\0"
+ "glMultMatrixxOES\0"
+ "\0"
+ /* _mesa_function_pool[6978]: PointParameterx (will be remapped) */
+ "ii\0"
+ "glPointParameterx\0"
+ "glPointParameterxOES\0"
+ "\0"
+ /* _mesa_function_pool[7021]: DrawArrays (offset 310) */
+ "iii\0"
+ "glDrawArrays\0"
+ "\0"
+ /* _mesa_function_pool[7039]: PointParameterf (will be remapped) */
+ "if\0"
+ "glPointParameterf\0"
+ "\0"
+ /* _mesa_function_pool[7061]: TexEnviv (offset 187) */
+ "iip\0"
+ "glTexEnviv\0"
+ "\0"
+ /* _mesa_function_pool[7077]: TexSubImage3D (offset 372) */
+ "iiiiiiiiiip\0"
+ "glTexSubImage3D\0"
+ "\0"
+ /* _mesa_function_pool[7106]: GetColorTableParameterfv (offset 344) */
+ "iip\0"
+ "glGetColorTableParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[7138]: Bitmap (offset 8) */
+ "iiffffp\0"
+ "glBitmap\0"
+ "\0"
+ /* _mesa_function_pool[7156]: TexGeniOES (offset 192) */
+ "iii\0"
+ "glTexGeniOES\0"
+ "glTexGeni\0"
+ "\0"
+ /* _mesa_function_pool[7184]: GetTexLevelParameterfv (offset 284) */
+ "iiip\0"
+ "glGetTexLevelParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[7215]: QueryMatrixxOES (will be remapped) */
+ "pp\0"
+ "glQueryMatrixxOES\0"
+ "\0"
+ /* _mesa_function_pool[7237]: Vertex2sv (offset 133) */
+ "p\0"
+ "glVertex2sv\0"
+ "\0"
+ /* _mesa_function_pool[7252]: GetIntegerv (offset 263) */
+ "ip\0"
+ "glGetIntegerv\0"
+ "\0"
+ /* _mesa_function_pool[7270]: Rotated (offset 299) */
+ "dddd\0"
+ "glRotated\0"
+ "\0"
+ /* _mesa_function_pool[7286]: DeleteBuffers (will be remapped) */
+ "ip\0"
+ "glDeleteBuffers\0"
+ "\0"
+ /* _mesa_function_pool[7306]: AlphaFuncx (will be remapped) */
+ "ii\0"
+ "glAlphaFuncx\0"
+ "glAlphaFuncxOES\0"
+ "\0"
+ /* _mesa_function_pool[7339]: GetTexEnviv (offset 277) */
+ "iip\0"
+ "glGetTexEnviv\0"
+ "\0"
+ /* _mesa_function_pool[7358]: PopClientAttrib (offset 334) */
+ "\0"
+ "glPopClientAttrib\0"
+ "\0"
+ /* _mesa_function_pool[7378]: SeparableFilter2D (offset 360) */
+ "iiiiiipp\0"
+ "glSeparableFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[7408]: Map1d (offset 220) */
+ "iddiip\0"
+ "glMap1d\0"
+ "\0"
+ /* _mesa_function_pool[7424]: Map1f (offset 221) */
+ "iffiip\0"
+ "glMap1f\0"
+ "\0"
+ /* _mesa_function_pool[7440]: ArrayElement (offset 306) */
+ "i\0"
+ "glArrayElement\0"
+ "\0"
+ /* _mesa_function_pool[7458]: TexImage2D (offset 183) */
+ "iiiiiiiip\0"
+ "glTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[7482]: GetMinmaxParameteriv (offset 366) */
+ "iip\0"
+ "glGetMinmaxParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[7510]: DrawTexivOES (will be remapped) */
+ "p\0"
+ "glDrawTexivOES\0"
+ "\0"
+ /* _mesa_function_pool[7528]: CopyTexImage1D (offset 323) */
+ "iiiiiii\0"
+ "glCopyTexImage1D\0"
+ "\0"
+ /* _mesa_function_pool[7554]: RasterPos2dv (offset 63) */
+ "p\0"
+ "glRasterPos2dv\0"
+ "\0"
+ /* _mesa_function_pool[7572]: SampleCoveragex (will be remapped) */
+ "ii\0"
+ "glSampleCoveragex\0"
+ "glSampleCoveragexOES\0"
+ "\0"
+ /* _mesa_function_pool[7615]: TexCoord1dv (offset 95) */
+ "p\0"
+ "glTexCoord1dv\0"
+ "\0"
+ /* _mesa_function_pool[7632]: PixelTransferi (offset 248) */
+ "ii\0"
+ "glPixelTransferi\0"
+ "\0"
+ /* _mesa_function_pool[7653]: Rotatef (offset 300) */
+ "ffff\0"
+ "glRotatef\0"
+ "\0"
+ /* _mesa_function_pool[7669]: Vertex3i (offset 138) */
+ "iii\0"
+ "glVertex3i\0"
+ "\0"
+ /* _mesa_function_pool[7685]: Vertex3f (offset 136) */
+ "fff\0"
+ "glVertex3f\0"
+ "\0"
+ /* _mesa_function_pool[7701]: Clear (offset 203) */
+ "i\0"
+ "glClear\0"
+ "\0"
+ /* _mesa_function_pool[7712]: Vertex3d (offset 134) */
+ "ddd\0"
+ "glVertex3d\0"
+ "\0"
+ /* _mesa_function_pool[7728]: ReadBuffer (offset 254) */
+ "i\0"
+ "glReadBuffer\0"
+ "\0"
+ /* _mesa_function_pool[7744]: ConvolutionParameteri (offset 352) */
+ "iii\0"
+ "glConvolutionParameteri\0"
+ "\0"
+ /* _mesa_function_pool[7773]: Ortho (offset 296) */
+ "dddddd\0"
+ "glOrtho\0"
+ "\0"
+ /* _mesa_function_pool[7789]: ListBase (offset 6) */
+ "i\0"
+ "glListBase\0"
+ "\0"
+ /* _mesa_function_pool[7803]: Vertex3s (offset 140) */
+ "iii\0"
+ "glVertex3s\0"
+ "\0"
+ /* _mesa_function_pool[7819]: ConvolutionParameterf (offset 350) */
+ "iif\0"
+ "glConvolutionParameterf\0"
+ "\0"
+ /* _mesa_function_pool[7848]: GetColorTableParameteriv (offset 345) */
+ "iip\0"
+ "glGetColorTableParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[7880]: CallList (offset 2) */
+ "i\0"
+ "glCallList\0"
+ "\0"
+ /* _mesa_function_pool[7894]: Rectiv (offset 91) */
+ "pp\0"
+ "glRectiv\0"
+ "\0"
+ /* _mesa_function_pool[7907]: TexGenivOES (offset 193) */
+ "iip\0"
+ "glTexGenivOES\0"
+ "glTexGeniv\0"
+ "\0"
+ /* _mesa_function_pool[7937]: TexParameterxv (will be remapped) */
+ "iip\0"
+ "glTexParameterxv\0"
+ "glTexParameterxvOES\0"
+ "\0"
+ /* _mesa_function_pool[7979]: Vertex2fv (offset 129) */
+ "p\0"
+ "glVertex2fv\0"
+ "\0"
+ /* _mesa_function_pool[7994]: MultiDrawArraysEXT (will be remapped) */
+ "ippi\0"
+ "glMultiDrawArraysEXT\0"
+ "\0"
+ /* _mesa_function_pool[8021]: MultiTexCoord4dARB (offset 400) */
+ "idddd\0"
+ "glMultiTexCoord4dARB\0"
+ "\0"
+ /* _mesa_function_pool[8049]: Rotatex (will be remapped) */
+ "iiii\0"
+ "glRotatex\0"
+ "glRotatexOES\0"
+ "\0"
+ /* _mesa_function_pool[8078]: Vertex3sv (offset 141) */
+ "p\0"
+ "glVertex3sv\0"
+ "\0"
+ /* _mesa_function_pool[8093]: EvalMesh1 (offset 236) */
+ "iii\0"
+ "glEvalMesh1\0"
+ "\0"
+ /* _mesa_function_pool[8110]: BindRenderbufferOES (will be remapped) */
+ "ii\0"
+ "glBindRenderbufferOES\0"
+ "\0"
+ /* _mesa_function_pool[8136]: MultiTexCoord1sARB (offset 382) */
+ "ii\0"
+ "glMultiTexCoord1sARB\0"
+ "\0"
+ /* _mesa_function_pool[8161]: GetTexParameterfv (offset 282) */
+ "iip\0"
+ "glGetTexParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[8186]: MultiTexCoord1dvARB (offset 377) */
+ "ip\0"
+ "glMultiTexCoord1dvARB\0"
+ "\0"
+ /* _mesa_function_pool[8212]: Vertex2iv (offset 131) */
+ "p\0"
+ "glVertex2iv\0"
+ "\0"
+ /* _mesa_function_pool[8227]: LineWidth (offset 168) */
+ "f\0"
+ "glLineWidth\0"
+ "\0"
+ /* _mesa_function_pool[8242]: FramebufferTexture2DOES (will be remapped) */
+ "iiiii\0"
+ "glFramebufferTexture2DOES\0"
+ "\0"
+ /* _mesa_function_pool[8275]: Lightxv (will be remapped) */
+ "iip\0"
+ "glLightxv\0"
+ "glLightxvOES\0"
+ "\0"
+ /* _mesa_function_pool[8303]: TexGendv (offset 189) */
+ "iip\0"
+ "glTexGendv\0"
+ "\0"
+ /* _mesa_function_pool[8319]: CheckFramebufferStatusOES (will be remapped) */
+ "i\0"
+ "glCheckFramebufferStatusOES\0"
+ "\0"
+ /* _mesa_function_pool[8350]: ResetMinmax (offset 370) */
+ "i\0"
+ "glResetMinmax\0"
+ "\0"
+ /* _mesa_function_pool[8367]: EnableClientState (offset 313) */
+ "i\0"
+ "glEnableClientState\0"
+ "\0"
+ /* _mesa_function_pool[8390]: GetConvolutionParameterfv (offset 357) */
+ "iip\0"
+ "glGetConvolutionParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[8423]: GetMaterialfv (offset 269) */
+ "iip\0"
+ "glGetMaterialfv\0"
+ "\0"
+ /* _mesa_function_pool[8444]: DeleteTextures (offset 327) */
+ "ip\0"
+ "glDeleteTextures\0"
+ "\0"
+ /* _mesa_function_pool[8465]: ShadeModel (offset 177) */
+ "i\0"
+ "glShadeModel\0"
+ "\0"
+ /* _mesa_function_pool[8481]: Materialfv (offset 170) */
+ "iip\0"
+ "glMaterialfv\0"
+ "\0"
+ /* _mesa_function_pool[8499]: TexCoord3fv (offset 113) */
+ "p\0"
+ "glTexCoord3fv\0"
+ "\0"
+ /* _mesa_function_pool[8516]: CopyConvolutionFilter1D (offset 354) */
+ "iiiii\0"
+ "glCopyConvolutionFilter1D\0"
+ "\0"
+ /* _mesa_function_pool[8549]: TexGenfvOES (offset 191) */
+ "iip\0"
+ "glTexGenfvOES\0"
+ "glTexGenfv\0"
+ "\0"
+ /* _mesa_function_pool[8579]: MultiTexCoord1ivARB (offset 381) */
+ "ip\0"
+ "glMultiTexCoord1ivARB\0"
+ "\0"
+ /* _mesa_function_pool[8605]: MultiTexCoord2ivARB (offset 389) */
+ "ip\0"
+ "glMultiTexCoord2ivARB\0"
+ "\0"
+ /* _mesa_function_pool[8631]: ClearDepthf (will be remapped) */
+ "f\0"
+ "glClearDepthf\0"
+ "glClearDepthfOES\0"
+ "\0"
+ /* _mesa_function_pool[8665]: CopyTexSubImage2D (offset 326) */
+ "iiiiiiii\0"
+ "glCopyTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[8695]: SampleCoverage (will be remapped) */
+ "fi\0"
+ "glSampleCoverage\0"
+ "\0"
+ /* _mesa_function_pool[8716]: Color3iv (offset 16) */
+ "p\0"
+ "glColor3iv\0"
+ "\0"
+ /* _mesa_function_pool[8730]: DrawElements (offset 311) */
+ "iiip\0"
+ "glDrawElements\0"
+ "\0"
+ /* _mesa_function_pool[8751]: BindVertexArrayAPPLE (will be remapped) */
+ "i\0"
+ "glBindVertexArrayAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[8777]: GetHistogramParameteriv (offset 363) */
+ "iip\0"
+ "glGetHistogramParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[8808]: MultiTexCoord1iARB (offset 380) */
+ "ii\0"
+ "glMultiTexCoord1iARB\0"
+ "\0"
+ /* _mesa_function_pool[8833]: GetConvolutionFilter (offset 356) */
+ "iiip\0"
+ "glGetConvolutionFilter\0"
+ "\0"
+ /* _mesa_function_pool[8862]: EvalPoint2 (offset 239) */
+ "ii\0"
+ "glEvalPoint2\0"
+ "\0"
+ /* _mesa_function_pool[8879]: EvalPoint1 (offset 237) */
+ "i\0"
+ "glEvalPoint1\0"
+ "\0"
+ /* _mesa_function_pool[8895]: TexGenxvOES (will be remapped) */
+ "iip\0"
+ "glTexGenxvOES\0"
+ "\0"
+ /* _mesa_function_pool[8914]: Map2d (offset 222) */
+ "iddiiddiip\0"
+ "glMap2d\0"
+ "\0"
+ /* _mesa_function_pool[8934]: Map2f (offset 223) */
+ "iffiiffiip\0"
+ "glMap2f\0"
+ "\0"
+ /* _mesa_function_pool[8954]: MultiTexCoord4x (will be remapped) */
+ "iiiii\0"
+ "glMultiTexCoord4x\0"
+ "glMultiTexCoord4xOES\0"
+ "\0"
+ /* _mesa_function_pool[9000]: Vertex4s (offset 148) */
+ "iiii\0"
+ "glVertex4s\0"
+ "\0"
+ /* _mesa_function_pool[9017]: Vertex4f (offset 144) */
+ "ffff\0"
+ "glVertex4f\0"
+ "\0"
+ /* _mesa_function_pool[9034]: EvalCoord1d (offset 228) */
+ "d\0"
+ "glEvalCoord1d\0"
+ "\0"
+ /* _mesa_function_pool[9051]: Vertex4d (offset 142) */
+ "dddd\0"
+ "glVertex4d\0"
+ "\0"
+ /* _mesa_function_pool[9068]: RasterPos4dv (offset 79) */
+ "p\0"
+ "glRasterPos4dv\0"
+ "\0"
+ /* _mesa_function_pool[9086]: MultiTexCoord4f (offset 402) */
+ "iffff\0"
+ "glMultiTexCoord4f\0"
+ "glMultiTexCoord4fARB\0"
+ "\0"
+ /* _mesa_function_pool[9132]: Vertex4i (offset 146) */
+ "iiii\0"
+ "glVertex4i\0"
+ "\0"
+ /* _mesa_function_pool[9149]: GetHistogram (offset 361) */
+ "iiiip\0"
+ "glGetHistogram\0"
+ "\0"
+ /* _mesa_function_pool[9171]: Translatex (will be remapped) */
+ "iii\0"
+ "glTranslatex\0"
+ "glTranslatexOES\0"
+ "\0"
+ /* _mesa_function_pool[9205]: Materialf (offset 169) */
+ "iif\0"
+ "glMaterialf\0"
+ "\0"
+ /* _mesa_function_pool[9222]: Materiali (offset 171) */
+ "iii\0"
+ "glMateriali\0"
+ "\0"
+ /* _mesa_function_pool[9239]: Indexsv (offset 51) */
+ "p\0"
+ "glIndexsv\0"
+ "\0"
+ /* _mesa_function_pool[9252]: MultiTexCoord4svARB (offset 407) */
+ "ip\0"
+ "glMultiTexCoord4svARB\0"
+ "\0"
+ /* _mesa_function_pool[9278]: LightModelfv (offset 164) */
+ "ip\0"
+ "glLightModelfv\0"
+ "\0"
+ /* _mesa_function_pool[9297]: Vertex4dv (offset 143) */
+ "p\0"
+ "glVertex4dv\0"
+ "\0"
+ /* _mesa_function_pool[9312]: EvalCoord1dv (offset 229) */
+ "p\0"
+ "glEvalCoord1dv\0"
+ "\0"
+ /* _mesa_function_pool[9330]: Materialx (will be remapped) */
+ "iii\0"
+ "glMaterialx\0"
+ "glMaterialxOES\0"
+ "\0"
+ /* _mesa_function_pool[9362]: Translatef (offset 304) */
+ "fff\0"
+ "glTranslatef\0"
+ "\0"
+ /* _mesa_function_pool[9380]: StencilMask (offset 209) */
+ "i\0"
+ "glStencilMask\0"
+ "\0"
+ /* _mesa_function_pool[9397]: GetLightiv (offset 265) */
+ "iip\0"
+ "glGetLightiv\0"
+ "\0"
+ /* _mesa_function_pool[9415]: IsList (offset 287) */
+ "i\0"
+ "glIsList\0"
+ "\0"
+ /* _mesa_function_pool[9427]: RenderMode (offset 196) */
+ "i\0"
+ "glRenderMode\0"
+ "\0"
+ /* _mesa_function_pool[9443]: MultiTexCoord1fARB (offset 378) */
+ "if\0"
+ "glMultiTexCoord1fARB\0"
+ "\0"
+ /* _mesa_function_pool[9468]: BindBuffer (will be remapped) */
+ "ii\0"
+ "glBindBuffer\0"
+ "\0"
+ /* _mesa_function_pool[9485]: Frustumf (will be remapped) */
+ "ffffff\0"
+ "glFrustumf\0"
+ "glFrustumfOES\0"
+ "\0"
+ /* _mesa_function_pool[9518]: LightModelxv (will be remapped) */
+ "ip\0"
+ "glLightModelxv\0"
+ "glLightModelxvOES\0"
+ "\0"
+ /* _mesa_function_pool[9555]: IsRenderbufferOES (will be remapped) */
+ "i\0"
+ "glIsRenderbufferOES\0"
+ "\0"
+ /* _mesa_function_pool[9578]: CopyTexSubImage1D (offset 325) */
+ "iiiiii\0"
+ "glCopyTexSubImage1D\0"
+ "\0"
+ /* _mesa_function_pool[9606]: Frustumx (will be remapped) */
+ "iiiiii\0"
+ "glFrustumx\0"
+ "glFrustumxOES\0"
+ "\0"
+ /* _mesa_function_pool[9639]: CullFace (offset 152) */
+ "i\0"
+ "glCullFace\0"
+ "\0"
+ /* _mesa_function_pool[9653]: BindTexture (offset 307) */
+ "ii\0"
+ "glBindTexture\0"
+ "\0"
+ /* _mesa_function_pool[9671]: StencilFunc (offset 243) */
+ "iii\0"
+ "glStencilFunc\0"
+ "\0"
+ /* _mesa_function_pool[9690]: CopyPixels (offset 255) */
+ "iiiii\0"
+ "glCopyPixels\0"
+ "\0"
+ /* _mesa_function_pool[9710]: Rectsv (offset 93) */
+ "pp\0"
+ "glRectsv\0"
+ "\0"
+ /* _mesa_function_pool[9723]: PopMatrix (offset 297) */
+ "\0"
+ "glPopMatrix\0"
+ "\0"
+ /* _mesa_function_pool[9737]: CopyConvolutionFilter2D (offset 355) */
+ "iiiiii\0"
+ "glCopyConvolutionFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[9771]: DeleteRenderbuffersOES (will be remapped) */
+ "ip\0"
+ "glDeleteRenderbuffersOES\0"
+ "\0"
+ /* _mesa_function_pool[9800]: NormalPointer (offset 318) */
+ "iip\0"
+ "glNormalPointer\0"
+ "\0"
+ /* _mesa_function_pool[9821]: TexParameterfv (offset 179) */
+ "iip\0"
+ "glTexParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[9843]: ClipPlane (offset 150) */
+ "ip\0"
+ "glClipPlane\0"
+ "\0"
+ /* _mesa_function_pool[9859]: Recti (offset 90) */
+ "iiii\0"
+ "glRecti\0"
+ "\0"
+ /* _mesa_function_pool[9873]: GetPixelMapuiv (offset 272) */
+ "ip\0"
+ "glGetPixelMapuiv\0"
+ "\0"
+ /* _mesa_function_pool[9894]: Rectf (offset 88) */
+ "ffff\0"
+ "glRectf\0"
+ "\0"
+ /* _mesa_function_pool[9908]: Indexfv (offset 47) */
+ "p\0"
+ "glIndexfv\0"
+ "\0"
+ /* _mesa_function_pool[9921]: GetPointerv (offset 329) */
+ "ip\0"
+ "glGetPointerv\0"
+ "\0"
+ /* _mesa_function_pool[9939]: IndexMask (offset 212) */
+ "i\0"
+ "glIndexMask\0"
+ "\0"
+ /* _mesa_function_pool[9954]: GetFloatv (offset 262) */
+ "ip\0"
+ "glGetFloatv\0"
+ "\0"
+ /* _mesa_function_pool[9970]: TexCoord4s (offset 124) */
+ "iiii\0"
+ "glTexCoord4s\0"
+ "\0"
+ /* _mesa_function_pool[9989]: TexCoord3sv (offset 117) */
+ "p\0"
+ "glTexCoord3sv\0"
+ "\0"
+ /* _mesa_function_pool[10006]: TexEnvxv (will be remapped) */
+ "iip\0"
+ "glTexEnvxv\0"
+ "glTexEnvxvOES\0"
+ "\0"
+ /* _mesa_function_pool[10036]: PopAttrib (offset 218) */
+ "\0"
+ "glPopAttrib\0"
+ "\0"
+ /* _mesa_function_pool[10050]: Fogfv (offset 154) */
+ "ip\0"
+ "glFogfv\0"
+ "\0"
+ /* _mesa_function_pool[10062]: InitNames (offset 197) */
+ "\0"
+ "glInitNames\0"
+ "\0"
+ /* _mesa_function_pool[10076]: Normal3sv (offset 61) */
+ "p\0"
+ "glNormal3sv\0"
+ "\0"
+ /* _mesa_function_pool[10091]: UnmapBufferOES (will be remapped) */
+ "i\0"
+ "glUnmapBufferOES\0"
+ "\0"
+ /* _mesa_function_pool[10111]: TexCoord4d (offset 118) */
+ "dddd\0"
+ "glTexCoord4d\0"
+ "\0"
+ /* _mesa_function_pool[10130]: TexCoord4f (offset 120) */
+ "ffff\0"
+ "glTexCoord4f\0"
+ "\0"
+ /* _mesa_function_pool[10149]: GetBooleanv (offset 258) */
+ "ip\0"
+ "glGetBooleanv\0"
+ "\0"
+ /* _mesa_function_pool[10167]: Hint (offset 158) */
+ "ii\0"
+ "glHint\0"
+ "\0"
+ /* _mesa_function_pool[10178]: Color4dv (offset 28) */
+ "p\0"
+ "glColor4dv\0"
+ "\0"
+ /* _mesa_function_pool[10192]: CopyColorSubTable (offset 347) */
+ "iiiii\0"
+ "glCopyColorSubTable\0"
+ "\0"
+ /* _mesa_function_pool[10219]: IsVertexArrayAPPLE (will be remapped) */
+ "i\0"
+ "glIsVertexArrayAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[10243]: Vertex4iv (offset 147) */
+ "p\0"
+ "glVertex4iv\0"
+ "\0"
+ /* _mesa_function_pool[10258]: BufferSubData (will be remapped) */
+ "iiip\0"
+ "glBufferSubData\0"
+ "\0"
+ /* _mesa_function_pool[10280]: TexCoord4dv (offset 119) */
+ "p\0"
+ "glTexCoord4dv\0"
+ "\0"
+ /* _mesa_function_pool[10297]: GetTexEnvxv (will be remapped) */
+ "iip\0"
+ "glGetTexEnvxv\0"
+ "glGetTexEnvxvOES\0"
+ "\0"
+ /* _mesa_function_pool[10333]: Begin (offset 7) */
+ "i\0"
+ "glBegin\0"
+ "\0"
+ /* _mesa_function_pool[10344]: LightModeli (offset 165) */
+ "ii\0"
+ "glLightModeli\0"
+ "\0"
+ /* _mesa_function_pool[10362]: RasterPos4sv (offset 85) */
+ "p\0"
+ "glRasterPos4sv\0"
+ "\0"
+ /* _mesa_function_pool[10380]: Rectfv (offset 89) */
+ "pp\0"
+ "glRectfv\0"
+ "\0"
+ /* _mesa_function_pool[10393]: ClipPlanex (will be remapped) */
+ "ip\0"
+ "glClipPlanex\0"
+ "glClipPlanexOES\0"
+ "\0"
+ /* _mesa_function_pool[10426]: LightModelf (offset 163) */
+ "if\0"
+ "glLightModelf\0"
+ "\0"
+ /* _mesa_function_pool[10444]: DrawTexsvOES (will be remapped) */
+ "p\0"
+ "glDrawTexsvOES\0"
+ "\0"
+ /* _mesa_function_pool[10462]: GetLightfv (offset 264) */
+ "iip\0"
+ "glGetLightfv\0"
+ "\0"
+ /* _mesa_function_pool[10480]: LightModelx (will be remapped) */
+ "ii\0"
+ "glLightModelx\0"
+ "glLightModelxOES\0"
+ "\0"
+ /* _mesa_function_pool[10515]: ClearColorx (will be remapped) */
+ "iiii\0"
+ "glClearColorx\0"
+ "glClearColorxOES\0"
+ "\0"
+ /* _mesa_function_pool[10552]: ClipPlanef (will be remapped) */
+ "ip\0"
+ "glClipPlanef\0"
+ "glClipPlanefOES\0"
+ "\0"
+ /* _mesa_function_pool[10585]: MultiTexCoord2fvARB (offset 387) */
+ "ip\0"
+ "glMultiTexCoord2fvARB\0"
+ "\0"
+ /* _mesa_function_pool[10611]: ClearColor (offset 206) */
+ "ffff\0"
+ "glClearColor\0"
+ "\0"
+ /* _mesa_function_pool[10630]: ColorMask (offset 210) */
+ "iiii\0"
+ "glColorMask\0"
+ "\0"
+ /* _mesa_function_pool[10648]: RasterPos4iv (offset 83) */
+ "p\0"
+ "glRasterPos4iv\0"
+ "\0"
+ /* _mesa_function_pool[10666]: Indexub (offset 315) */
+ "i\0"
+ "glIndexub\0"
+ "\0"
+ /* _mesa_function_pool[10679]: GetMinmaxParameterfv (offset 365) */
+ "iip\0"
+ "glGetMinmaxParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[10707]: ClientActiveTexture (offset 375) */
+ "i\0"
+ "glClientActiveTexture\0"
+ "glClientActiveTextureARB\0"
+ "\0"
+ /* _mesa_function_pool[10757]: ClearDepth (offset 208) */
+ "d\0"
+ "glClearDepth\0"
+ "\0"
+ /* _mesa_function_pool[10773]: MultiTexCoord2svARB (offset 391) */
+ "ip\0"
+ "glMultiTexCoord2svARB\0"
+ "\0"
+ ;
+
+/* these functions need to be remapped */
+static const struct gl_function_pool_remap MESA_remap_table_functions[] = {
+ { 1561, BlendEquationSeparateOES_remap_index },
+ { 2912, BlendFuncSeparateOES_remap_index },
+ { 2416, DrawTexfOES_remap_index },
+ { 3963, DrawTexfvOES_remap_index },
+ { 878, DrawTexiOES_remap_index },
+ { 7510, DrawTexivOES_remap_index },
+ { 1220, DrawTexsOES_remap_index },
+ { 10444, DrawTexsvOES_remap_index },
+ { 4169, DrawTexxOES_remap_index },
+ { 4223, DrawTexxvOES_remap_index },
+ { 3811, BindFramebufferOES_remap_index },
+ { 8110, BindRenderbufferOES_remap_index },
+ { 8319, CheckFramebufferStatusOES_remap_index },
+ { 5996, DeleteFramebuffersOES_remap_index },
+ { 9771, DeleteRenderbuffersOES_remap_index },
+ { 2102, FramebufferRenderbufferOES_remap_index },
+ { 8242, FramebufferTexture2DOES_remap_index },
+ { 4341, GenFramebuffersOES_remap_index },
+ { 4143, GenRenderbuffersOES_remap_index },
+ { 486, GenerateMipmapOES_remap_index },
+ { 6871, GetFramebufferAttachmentParameterivOES_remap_index },
+ { 6464, GetRenderbufferParameterivOES_remap_index },
+ { 5452, IsFramebufferOES_remap_index },
+ { 9555, IsRenderbufferOES_remap_index },
+ { 6238, RenderbufferStorageOES_remap_index },
+ { 5189, PointSizePointerOES_remap_index },
+ { 7215, QueryMatrixxOES_remap_index },
+ { 3049, GetTexGenxvOES_remap_index },
+ { 5826, TexGenxOES_remap_index },
+ { 8895, TexGenxvOES_remap_index },
+ { 5488, GetBufferPointervOES_remap_index },
+ { 2397, MapBufferOES_remap_index },
+ { 10091, UnmapBufferOES_remap_index },
+ { 7994, MultiDrawArraysEXT_remap_index },
+ { 6395, MultiDrawElementsEXT_remap_index },
+ { 8751, BindVertexArrayAPPLE_remap_index },
+ { 787, DeleteVertexArraysAPPLE_remap_index },
+ { 5243, GenVertexArraysAPPLE_remap_index },
+ { 10219, IsVertexArrayAPPLE_remap_index },
+ { 3859, EGLImageTargetRenderbufferStorageOES_remap_index },
+ { 3619, EGLImageTargetTexture2DOES_remap_index },
+ { 4420, CompressedTexImage2D_remap_index },
+ { 970, CompressedTexSubImage2D_remap_index },
+ { 8695, SampleCoverage_remap_index },
+ { 9468, BindBuffer_remap_index },
+ { 3208, BufferData_remap_index },
+ { 10258, BufferSubData_remap_index },
+ { 7286, DeleteBuffers_remap_index },
+ { 2639, GenBuffers_remap_index },
+ { 5147, GetBufferParameteriv_remap_index },
+ { 6175, IsBuffer_remap_index },
+ { 7039, PointParameterf_remap_index },
+ { 4823, PointParameterfv_remap_index },
+ { 7306, AlphaFuncx_remap_index },
+ { 10515, ClearColorx_remap_index },
+ { 8631, ClearDepthf_remap_index },
+ { 6734, ClearDepthx_remap_index },
+ { 2580, Color4x_remap_index },
+ { 1847, DepthRangef_remap_index },
+ { 1798, DepthRangex_remap_index },
+ { 1922, Fogx_remap_index },
+ { 3836, Fogxv_remap_index },
+ { 9485, Frustumf_remap_index },
+ { 9606, Frustumx_remap_index },
+ { 10480, LightModelx_remap_index },
+ { 9518, LightModelxv_remap_index },
+ { 6794, Lightx_remap_index },
+ { 8275, Lightxv_remap_index },
+ { 3378, LineWidthx_remap_index },
+ { 3981, LoadMatrixx_remap_index },
+ { 9330, Materialx_remap_index },
+ { 3483, Materialxv_remap_index },
+ { 6944, MultMatrixx_remap_index },
+ { 8954, MultiTexCoord4x_remap_index },
+ { 3348, Normal3x_remap_index },
+ { 4391, Orthof_remap_index },
+ { 4504, Orthox_remap_index },
+ { 846, PointSizex_remap_index },
+ { 243, PolygonOffsetx_remap_index },
+ { 8049, Rotatex_remap_index },
+ { 7572, SampleCoveragex_remap_index },
+ { 1458, Scalex_remap_index },
+ { 5013, TexEnvx_remap_index },
+ { 10006, TexEnvxv_remap_index },
+ { 1592, TexParameterx_remap_index },
+ { 9171, Translatex_remap_index },
+ { 10552, ClipPlanef_remap_index },
+ { 10393, ClipPlanex_remap_index },
+ { 702, GetClipPlanef_remap_index },
+ { 648, GetClipPlanex_remap_index },
+ { 6207, GetFixedv_remap_index },
+ { 1137, GetLightxv_remap_index },
+ { 1033, GetMaterialxv_remap_index },
+ { 10297, GetTexEnvxv_remap_index },
+ { 5584, GetTexParameterxv_remap_index },
+ { 6978, PointParameterx_remap_index },
+ { 5844, PointParameterxv_remap_index },
+ { 7937, TexParameterxv_remap_index },
+ { -1, -1 }
+};
+
+/* these functions are in the ABI, but have alternative names */
+static const struct gl_function_remap MESA_alt_functions[] = {
+ { -1, -1 }
+};
+
+#endif /* need_MESA_remap_table */
+
+#if defined(need_GL_APPLE_vertex_array_object)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_APPLE_vertex_array_object_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_EXT_multi_draw_arrays)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_EXT_multi_draw_arrays_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_EGL_image)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_EGL_image_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_blend_equation_separate)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_blend_equation_separate_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_blend_func_separate)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_blend_func_separate_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_draw_texture)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_draw_texture_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_fixed_point)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_fixed_point_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_framebuffer_object)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_framebuffer_object_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_mapbuffer)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_mapbuffer_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_matrix_palette)
+static const struct gl_function_remap GL_OES_matrix_palette_functions[] = {
+ { 5364, -1 }, /* LoadPaletteFromModelViewMatrixOES */
+ { 5700, -1 }, /* MatrixIndexPointerOES */
+ { 6024, -1 }, /* WeightPointerOES */
+ { 6049, -1 }, /* CurrentPaletteMatrixOES */
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_point_size_array)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_point_size_array_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_query_matrix)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_query_matrix_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_single_precision)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_single_precision_functions[] = {
+ { -1, -1 }
+};
+#endif
+
diff --git a/src/mapi/es2api/glapi_mapi_tmp.h b/src/mapi/es2api/glapi_mapi_tmp.h
new file mode 100644
index 0000000000..6941ca915c
--- /dev/null
+++ b/src/mapi/es2api/glapi_mapi_tmp.h
@@ -0,0 +1,2632 @@
+/* This file is automatically generated by mapi_abi.py. Do not modify. */
+
+#ifndef _GLAPI_TMP_H_
+#define _GLAPI_TMP_H_
+typedef int GLfixed;
+typedef int GLclampx;
+#endif /* _GLAPI_TMP_H_ */
+
+#ifdef MAPI_TMP_DEFINES
+#define GL_GLEXT_PROTOTYPES
+#include "GL/gl.h"
+#include "GL/glext.h"
+
+void APIENTRY gl_dispatch_stub_0(GLuint list, GLenum mode);
+void APIENTRY gl_dispatch_stub_1(void);
+void APIENTRY gl_dispatch_stub_2(GLuint list);
+void APIENTRY gl_dispatch_stub_3(GLsizei n, GLenum type, const GLvoid *lists);
+void APIENTRY gl_dispatch_stub_4(GLuint list, GLsizei range);
+GLuint APIENTRY gl_dispatch_stub_5(GLsizei range);
+void APIENTRY gl_dispatch_stub_6(GLuint base);
+void APIENTRY gl_dispatch_stub_7(GLenum mode);
+void APIENTRY gl_dispatch_stub_8(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+void APIENTRY gl_dispatch_stub_9(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY gl_dispatch_stub_10(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_11(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY gl_dispatch_stub_12(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_13(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY gl_dispatch_stub_14(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_15(GLint red, GLint green, GLint blue);
+void APIENTRY gl_dispatch_stub_16(const GLint *v);
+void APIENTRY gl_dispatch_stub_17(GLshort red, GLshort green, GLshort blue);
+void APIENTRY gl_dispatch_stub_18(const GLshort *v);
+void APIENTRY gl_dispatch_stub_19(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY gl_dispatch_stub_20(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_21(GLuint red, GLuint green, GLuint blue);
+void APIENTRY gl_dispatch_stub_22(const GLuint *v);
+void APIENTRY gl_dispatch_stub_23(GLushort red, GLushort green, GLushort blue);
+void APIENTRY gl_dispatch_stub_24(const GLushort *v);
+void APIENTRY gl_dispatch_stub_25(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+void APIENTRY gl_dispatch_stub_26(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_27(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+void APIENTRY gl_dispatch_stub_28(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_29(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY gl_dispatch_stub_30(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_31(GLint red, GLint green, GLint blue, GLint alpha);
+void APIENTRY gl_dispatch_stub_32(const GLint *v);
+void APIENTRY gl_dispatch_stub_33(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+void APIENTRY gl_dispatch_stub_34(const GLshort *v);
+void APIENTRY gl_dispatch_stub_35(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+void APIENTRY gl_dispatch_stub_36(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_37(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+void APIENTRY gl_dispatch_stub_38(const GLuint *v);
+void APIENTRY gl_dispatch_stub_39(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+void APIENTRY gl_dispatch_stub_40(const GLushort *v);
+void APIENTRY gl_dispatch_stub_41(GLboolean flag);
+void APIENTRY gl_dispatch_stub_42(const GLboolean *flag);
+void APIENTRY gl_dispatch_stub_43(void);
+void APIENTRY gl_dispatch_stub_44(GLdouble c);
+void APIENTRY gl_dispatch_stub_45(const GLdouble *c);
+void APIENTRY gl_dispatch_stub_46(GLfloat c);
+void APIENTRY gl_dispatch_stub_47(const GLfloat *c);
+void APIENTRY gl_dispatch_stub_48(GLint c);
+void APIENTRY gl_dispatch_stub_49(const GLint *c);
+void APIENTRY gl_dispatch_stub_50(GLshort c);
+void APIENTRY gl_dispatch_stub_51(const GLshort *c);
+void APIENTRY gl_dispatch_stub_52(GLbyte nx, GLbyte ny, GLbyte nz);
+void APIENTRY gl_dispatch_stub_53(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_54(GLdouble nx, GLdouble ny, GLdouble nz);
+void APIENTRY gl_dispatch_stub_55(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_56(GLfloat nx, GLfloat ny, GLfloat nz);
+void APIENTRY gl_dispatch_stub_57(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_58(GLint nx, GLint ny, GLint nz);
+void APIENTRY gl_dispatch_stub_59(const GLint *v);
+void APIENTRY gl_dispatch_stub_60(GLshort nx, GLshort ny, GLshort nz);
+void APIENTRY gl_dispatch_stub_61(const GLshort *v);
+void APIENTRY gl_dispatch_stub_62(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_63(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_64(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_65(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_66(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_67(const GLint *v);
+void APIENTRY gl_dispatch_stub_68(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_69(const GLshort *v);
+void APIENTRY gl_dispatch_stub_70(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_71(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_72(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_73(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_74(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_75(const GLint *v);
+void APIENTRY gl_dispatch_stub_76(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_77(const GLshort *v);
+void APIENTRY gl_dispatch_stub_78(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_79(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_80(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_81(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_82(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_83(const GLint *v);
+void APIENTRY gl_dispatch_stub_84(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_85(const GLshort *v);
+void APIENTRY gl_dispatch_stub_86(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+void APIENTRY gl_dispatch_stub_87(const GLdouble *v1, const GLdouble *v2);
+void APIENTRY gl_dispatch_stub_88(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+void APIENTRY gl_dispatch_stub_89(const GLfloat *v1, const GLfloat *v2);
+void APIENTRY gl_dispatch_stub_90(GLint x1, GLint y1, GLint x2, GLint y2);
+void APIENTRY gl_dispatch_stub_91(const GLint *v1, const GLint *v2);
+void APIENTRY gl_dispatch_stub_92(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+void APIENTRY gl_dispatch_stub_93(const GLshort *v1, const GLshort *v2);
+void APIENTRY gl_dispatch_stub_94(GLdouble s);
+void APIENTRY gl_dispatch_stub_95(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_96(GLfloat s);
+void APIENTRY gl_dispatch_stub_97(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_98(GLint s);
+void APIENTRY gl_dispatch_stub_99(const GLint *v);
+void APIENTRY gl_dispatch_stub_100(GLshort s);
+void APIENTRY gl_dispatch_stub_101(const GLshort *v);
+void APIENTRY gl_dispatch_stub_102(GLdouble s, GLdouble t);
+void APIENTRY gl_dispatch_stub_103(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_104(GLfloat s, GLfloat t);
+void APIENTRY gl_dispatch_stub_105(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_106(GLint s, GLint t);
+void APIENTRY gl_dispatch_stub_107(const GLint *v);
+void APIENTRY gl_dispatch_stub_108(GLshort s, GLshort t);
+void APIENTRY gl_dispatch_stub_109(const GLshort *v);
+void APIENTRY gl_dispatch_stub_110(GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY gl_dispatch_stub_111(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_112(GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY gl_dispatch_stub_113(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_114(GLint s, GLint t, GLint r);
+void APIENTRY gl_dispatch_stub_115(const GLint *v);
+void APIENTRY gl_dispatch_stub_116(GLshort s, GLshort t, GLshort r);
+void APIENTRY gl_dispatch_stub_117(const GLshort *v);
+void APIENTRY gl_dispatch_stub_118(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY gl_dispatch_stub_119(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_120(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY gl_dispatch_stub_121(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_122(GLint s, GLint t, GLint r, GLint q);
+void APIENTRY gl_dispatch_stub_123(const GLint *v);
+void APIENTRY gl_dispatch_stub_124(GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY gl_dispatch_stub_125(const GLshort *v);
+void APIENTRY gl_dispatch_stub_126(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_127(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_128(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_129(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_130(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_131(const GLint *v);
+void APIENTRY gl_dispatch_stub_132(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_133(const GLshort *v);
+void APIENTRY gl_dispatch_stub_134(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_135(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_136(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_137(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_138(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_139(const GLint *v);
+void APIENTRY gl_dispatch_stub_140(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_141(const GLshort *v);
+void APIENTRY gl_dispatch_stub_142(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_143(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_144(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_145(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_146(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_147(const GLint *v);
+void APIENTRY gl_dispatch_stub_148(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_149(const GLshort *v);
+void APIENTRY gl_dispatch_stub_150(GLenum plane, const GLdouble *equation);
+void APIENTRY gl_dispatch_stub_151(GLenum face, GLenum mode);
+GLAPI void APIENTRY glCullFace(GLenum mode);
+void APIENTRY gl_dispatch_stub_153(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_154(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_155(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_156(GLenum pname, const GLint *params);
+GLAPI void APIENTRY glFrontFace(GLenum mode);
+GLAPI void APIENTRY glHint(GLenum target, GLenum mode);
+void APIENTRY gl_dispatch_stub_159(GLenum light, GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_160(GLenum light, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_161(GLenum light, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_162(GLenum light, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_163(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_164(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_165(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_166(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_167(GLint factor, GLushort pattern);
+GLAPI void APIENTRY glLineWidth(GLfloat width);
+void APIENTRY gl_dispatch_stub_169(GLenum face, GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_170(GLenum face, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_171(GLenum face, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_172(GLenum face, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_173(GLfloat size);
+void APIENTRY gl_dispatch_stub_174(GLenum face, GLenum mode);
+void APIENTRY gl_dispatch_stub_175(const GLubyte *mask);
+GLAPI void APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_177(GLenum mode);
+GLAPI void APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+GLAPI void APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param);
+GLAPI void APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_182(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_184(GLenum target, GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_185(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_186(GLenum target, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_187(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_188(GLenum coord, GLenum pname, GLdouble param);
+void APIENTRY gl_dispatch_stub_189(GLenum coord, GLenum pname, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_190(GLenum coord, GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_191(GLenum coord, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_192(GLenum coord, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_193(GLenum coord, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_194(GLsizei size, GLenum type, GLfloat *buffer);
+void APIENTRY gl_dispatch_stub_195(GLsizei size, GLuint *buffer);
+GLint APIENTRY gl_dispatch_stub_196(GLenum mode);
+void APIENTRY gl_dispatch_stub_197(void);
+void APIENTRY gl_dispatch_stub_198(GLuint name);
+void APIENTRY gl_dispatch_stub_199(GLfloat token);
+void APIENTRY gl_dispatch_stub_200(void);
+void APIENTRY gl_dispatch_stub_201(GLuint name);
+void APIENTRY gl_dispatch_stub_202(GLenum mode);
+GLAPI void APIENTRY glClear(GLbitfield mask);
+void APIENTRY gl_dispatch_stub_204(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY gl_dispatch_stub_205(GLfloat c);
+GLAPI void APIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GLAPI void APIENTRY glClearStencil(GLint s);
+void APIENTRY gl_dispatch_stub_208(GLclampd depth);
+GLAPI void APIENTRY glStencilMask(GLuint mask);
+GLAPI void APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GLAPI void APIENTRY glDepthMask(GLboolean flag);
+void APIENTRY gl_dispatch_stub_212(GLuint mask);
+void APIENTRY gl_dispatch_stub_213(GLenum op, GLfloat value);
+GLAPI void APIENTRY glDisable(GLenum cap);
+GLAPI void APIENTRY glEnable(GLenum cap);
+GLAPI void APIENTRY glFinish(void);
+GLAPI void APIENTRY glFlush(void);
+void APIENTRY gl_dispatch_stub_218(void);
+void APIENTRY gl_dispatch_stub_219(GLbitfield mask);
+void APIENTRY gl_dispatch_stub_220(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+void APIENTRY gl_dispatch_stub_221(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+void APIENTRY gl_dispatch_stub_222(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+void APIENTRY gl_dispatch_stub_223(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+void APIENTRY gl_dispatch_stub_224(GLint un, GLdouble u1, GLdouble u2);
+void APIENTRY gl_dispatch_stub_225(GLint un, GLfloat u1, GLfloat u2);
+void APIENTRY gl_dispatch_stub_226(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+void APIENTRY gl_dispatch_stub_227(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+void APIENTRY gl_dispatch_stub_228(GLdouble u);
+void APIENTRY gl_dispatch_stub_229(const GLdouble *u);
+void APIENTRY gl_dispatch_stub_230(GLfloat u);
+void APIENTRY gl_dispatch_stub_231(const GLfloat *u);
+void APIENTRY gl_dispatch_stub_232(GLdouble u, GLdouble v);
+void APIENTRY gl_dispatch_stub_233(const GLdouble *u);
+void APIENTRY gl_dispatch_stub_234(GLfloat u, GLfloat v);
+void APIENTRY gl_dispatch_stub_235(const GLfloat *u);
+void APIENTRY gl_dispatch_stub_236(GLenum mode, GLint i1, GLint i2);
+void APIENTRY gl_dispatch_stub_237(GLint i);
+void APIENTRY gl_dispatch_stub_238(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+void APIENTRY gl_dispatch_stub_239(GLint i, GLint j);
+void APIENTRY gl_dispatch_stub_240(GLenum func, GLclampf ref);
+GLAPI void APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor);
+void APIENTRY gl_dispatch_stub_242(GLenum opcode);
+GLAPI void APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask);
+GLAPI void APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+GLAPI void APIENTRY glDepthFunc(GLenum func);
+void APIENTRY gl_dispatch_stub_246(GLfloat xfactor, GLfloat yfactor);
+void APIENTRY gl_dispatch_stub_247(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_248(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_249(GLenum pname, GLfloat param);
+GLAPI void APIENTRY glPixelStorei(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_251(GLenum map, GLsizei mapsize, const GLfloat *values);
+void APIENTRY gl_dispatch_stub_252(GLenum map, GLsizei mapsize, const GLuint *values);
+void APIENTRY gl_dispatch_stub_253(GLenum map, GLsizei mapsize, const GLushort *values);
+void APIENTRY gl_dispatch_stub_254(GLenum mode);
+void APIENTRY gl_dispatch_stub_255(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+GLAPI void APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_257(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glGetBooleanv(GLenum pname, GLboolean *params);
+void APIENTRY gl_dispatch_stub_259(GLenum plane, GLdouble *equation);
+void APIENTRY gl_dispatch_stub_260(GLenum pname, GLdouble *params);
+GLAPI GLenum APIENTRY glGetError(void);
+GLAPI void APIENTRY glGetFloatv(GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetIntegerv(GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_264(GLenum light, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_265(GLenum light, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_266(GLenum target, GLenum query, GLdouble *v);
+void APIENTRY gl_dispatch_stub_267(GLenum target, GLenum query, GLfloat *v);
+void APIENTRY gl_dispatch_stub_268(GLenum target, GLenum query, GLint *v);
+void APIENTRY gl_dispatch_stub_269(GLenum face, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_270(GLenum face, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_271(GLenum map, GLfloat *values);
+void APIENTRY gl_dispatch_stub_272(GLenum map, GLuint *values);
+void APIENTRY gl_dispatch_stub_273(GLenum map, GLushort *values);
+void APIENTRY gl_dispatch_stub_274(GLubyte *mask);
+GLAPI const GLubyte * APIENTRY glGetString(GLenum name);
+void APIENTRY gl_dispatch_stub_276(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_277(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_278(GLenum coord, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_279(GLenum coord, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_280(GLenum coord, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_281(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+GLAPI void APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_284(GLenum target, GLint level, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_285(GLenum target, GLint level, GLenum pname, GLint *params);
+GLAPI GLboolean APIENTRY glIsEnabled(GLenum cap);
+GLboolean APIENTRY gl_dispatch_stub_287(GLuint list);
+void APIENTRY gl_dispatch_stub_288(GLclampd zNear, GLclampd zFar);
+void APIENTRY gl_dispatch_stub_289(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+void APIENTRY gl_dispatch_stub_290(void);
+void APIENTRY gl_dispatch_stub_291(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_292(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_293(GLenum mode);
+void APIENTRY gl_dispatch_stub_294(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_295(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_296(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+void APIENTRY gl_dispatch_stub_297(void);
+void APIENTRY gl_dispatch_stub_298(void);
+void APIENTRY gl_dispatch_stub_299(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_300(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_301(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_302(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_303(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_304(GLfloat x, GLfloat y, GLfloat z);
+GLAPI void APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_306(GLint i);
+GLAPI void APIENTRY glBindTexture(GLenum target, GLuint texture);
+void APIENTRY gl_dispatch_stub_308(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_309(GLenum array);
+GLAPI void APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count);
+GLAPI void APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY gl_dispatch_stub_312(GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_313(GLenum array);
+void APIENTRY gl_dispatch_stub_314(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_315(GLubyte c);
+void APIENTRY gl_dispatch_stub_316(const GLubyte *c);
+void APIENTRY gl_dispatch_stub_317(GLenum format, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_318(GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glPolygonOffset(GLfloat factor, GLfloat units);
+void APIENTRY gl_dispatch_stub_320(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_321(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLboolean APIENTRY gl_dispatch_stub_322(GLsizei n, const GLuint *textures, GLboolean *residences);
+void APIENTRY gl_dispatch_stub_323(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+GLAPI void APIENTRY glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+void APIENTRY gl_dispatch_stub_325(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+GLAPI void APIENTRY glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glDeleteTextures(GLsizei n, const GLuint *textures);
+GLAPI void APIENTRY glGenTextures(GLsizei n, GLuint *textures);
+void APIENTRY gl_dispatch_stub_329(GLenum pname, GLvoid **params);
+GLAPI GLboolean APIENTRY glIsTexture(GLuint texture);
+void APIENTRY gl_dispatch_stub_331(GLsizei n, const GLuint *textures, const GLclampf *priorities);
+void APIENTRY gl_dispatch_stub_332(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_334(void);
+void APIENTRY gl_dispatch_stub_335(GLbitfield mask);
+GLAPI void APIENTRY glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GLAPI void APIENTRY glBlendEquation(GLenum mode);
+void APIENTRY gl_dispatch_stub_338(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY gl_dispatch_stub_339(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+void APIENTRY gl_dispatch_stub_340(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_341(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_342(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid *table);
+void APIENTRY gl_dispatch_stub_344(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_345(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_346(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_347(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_348(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY gl_dispatch_stub_349(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY gl_dispatch_stub_350(GLenum target, GLenum pname, GLfloat params);
+void APIENTRY gl_dispatch_stub_351(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_352(GLenum target, GLenum pname, GLint params);
+void APIENTRY gl_dispatch_stub_353(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_354(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY gl_dispatch_stub_355(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid *image);
+void APIENTRY gl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_358(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+void APIENTRY gl_dispatch_stub_360(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+void APIENTRY gl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY gl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_367(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+void APIENTRY gl_dispatch_stub_368(GLenum target, GLenum internalformat, GLboolean sink);
+void APIENTRY gl_dispatch_stub_369(GLenum target);
+void APIENTRY gl_dispatch_stub_370(GLenum target);
+void APIENTRY gl_dispatch_stub_371(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_372(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+GLAPI void APIENTRY glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY gl_dispatch_stub_373(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_374(GLenum texture);
+GLAPI void APIENTRY glActiveTexture(GLenum texture);
+void APIENTRY gl_dispatch_stub_375(GLenum texture);
+void APIENTRY gl_dispatch_stub_376(GLenum target, GLdouble s);
+void APIENTRY gl_dispatch_stub_377(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_378(GLenum target, GLfloat s);
+void APIENTRY gl_dispatch_stub_379(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_380(GLenum target, GLint s);
+void APIENTRY gl_dispatch_stub_381(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_382(GLenum target, GLshort s);
+void APIENTRY gl_dispatch_stub_383(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_384(GLenum target, GLdouble s, GLdouble t);
+void APIENTRY gl_dispatch_stub_385(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_386(GLenum target, GLfloat s, GLfloat t);
+void APIENTRY gl_dispatch_stub_387(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_388(GLenum target, GLint s, GLint t);
+void APIENTRY gl_dispatch_stub_389(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_390(GLenum target, GLshort s, GLshort t);
+void APIENTRY gl_dispatch_stub_391(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_392(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY gl_dispatch_stub_393(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_394(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY gl_dispatch_stub_395(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_396(GLenum target, GLint s, GLint t, GLint r);
+void APIENTRY gl_dispatch_stub_397(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_398(GLenum target, GLshort s, GLshort t, GLshort r);
+void APIENTRY gl_dispatch_stub_399(GLenum target, const GLshort *v);
+void APIENTRY gl_dispatch_stub_400(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY gl_dispatch_stub_401(GLenum target, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_402(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY gl_dispatch_stub_403(GLenum target, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_404(GLenum target, GLint s, GLint t, GLint r, GLint q);
+void APIENTRY gl_dispatch_stub_405(GLenum target, const GLint *v);
+void APIENTRY gl_dispatch_stub_406(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY gl_dispatch_stub_407(GLenum target, const GLshort *v);
+GLAPI void APIENTRY glAttachShader(GLuint program, GLuint shader);
+GLAPI GLuint APIENTRY glCreateProgram(void);
+GLAPI GLuint APIENTRY glCreateShader(GLenum type);
+GLAPI void APIENTRY glDeleteProgram(GLuint program);
+GLAPI void APIENTRY glDeleteShader(GLuint program);
+GLAPI void APIENTRY glDetachShader(GLuint program, GLuint shader);
+GLAPI void APIENTRY glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+GLAPI void APIENTRY glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GLAPI void APIENTRY glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GLAPI void APIENTRY glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+GLAPI GLboolean APIENTRY glIsProgram(GLuint program);
+GLAPI GLboolean APIENTRY glIsShader(GLuint shader);
+GLAPI void APIENTRY glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+GLAPI void APIENTRY glStencilMaskSeparate(GLenum face, GLuint mask);
+GLAPI void APIENTRY glStencilOpSeparate(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
+void APIENTRY gl_dispatch_stub_424(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_425(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_426(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_427(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_428(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_429(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_430(GLenum target, GLenum clamp);
+void APIENTRY gl_dispatch_stub_431(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil);
+void APIENTRY gl_dispatch_stub_432(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_433(GLenum buffer, GLint drawbuffer, const GLint *value);
+void APIENTRY gl_dispatch_stub_434(GLenum buffer, GLint drawbuffer, const GLuint *value);
+const GLubyte * APIENTRY gl_dispatch_stub_435(GLenum name, GLuint index);
+void APIENTRY gl_dispatch_stub_436(GLenum target, GLenum internalFormat, GLuint buffer);
+void APIENTRY gl_dispatch_stub_437(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_438(GLenum target, GLenum pname, GLint64 *params);
+void APIENTRY gl_dispatch_stub_439(GLenum cap, GLuint index, GLint64 *data);
+void APIENTRY gl_dispatch_stub_440(GLuint index, GLuint divisor);
+void APIENTRY gl_dispatch_stub_441(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_442(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_443(const GLdouble *m);
+void APIENTRY gl_dispatch_stub_444(const GLfloat *m);
+void APIENTRY gl_dispatch_stub_445(GLclampf value, GLboolean invert);
+GLAPI void APIENTRY glSampleCoverage(GLclampf value, GLboolean invert);
+void APIENTRY gl_dispatch_stub_446(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_447(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_448(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_449(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_450(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_451(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+GLAPI void APIENTRY glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_452(GLenum target, GLint level, GLvoid *img);
+void APIENTRY gl_dispatch_stub_453(GLuint index);
+GLAPI void APIENTRY glDisableVertexAttribArray(GLuint index);
+void APIENTRY gl_dispatch_stub_454(GLuint index);
+GLAPI void APIENTRY glEnableVertexAttribArray(GLuint index);
+void APIENTRY gl_dispatch_stub_455(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY gl_dispatch_stub_456(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY gl_dispatch_stub_457(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY gl_dispatch_stub_458(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY gl_dispatch_stub_459(GLenum target, GLenum pname, GLvoid *string);
+void APIENTRY gl_dispatch_stub_460(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_461(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_462(GLuint index, GLenum pname, GLfloat *params);
+GLAPI void APIENTRY glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_463(GLuint index, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_464(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_465(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_466(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_467(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_468(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_469(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_470(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_471(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_472(GLenum target, GLenum format, GLsizei len, const GLvoid *string);
+void APIENTRY gl_dispatch_stub_473(GLuint index, GLdouble x);
+void APIENTRY gl_dispatch_stub_474(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_475(GLuint index, GLfloat x);
+GLAPI void APIENTRY glVertexAttrib1f(GLuint index, GLfloat x);
+void APIENTRY gl_dispatch_stub_476(GLuint index, const GLfloat *v);
+GLAPI void APIENTRY glVertexAttrib1fv(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_477(GLuint index, GLshort x);
+void APIENTRY gl_dispatch_stub_478(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_479(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_480(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_481(GLuint index, GLfloat x, GLfloat y);
+GLAPI void APIENTRY glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_482(GLuint index, const GLfloat *v);
+GLAPI void APIENTRY glVertexAttrib2fv(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_483(GLuint index, GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_484(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_485(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_486(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_487(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+GLAPI void APIENTRY glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_488(GLuint index, const GLfloat *v);
+GLAPI void APIENTRY glVertexAttrib3fv(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_489(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_490(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_491(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_492(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_493(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_494(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY gl_dispatch_stub_495(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_496(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_497(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_498(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_499(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_500(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_501(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GLAPI void APIENTRY glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_502(GLuint index, const GLfloat *v);
+GLAPI void APIENTRY glVertexAttrib4fv(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_503(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_504(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_505(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_506(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_507(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_508(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_509(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_510(GLenum target, GLuint buffer);
+GLAPI void APIENTRY glBindBuffer(GLenum target, GLuint buffer);
+void APIENTRY gl_dispatch_stub_511(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
+GLAPI void APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+void APIENTRY gl_dispatch_stub_512(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
+GLAPI void APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+void APIENTRY gl_dispatch_stub_513(GLsizei n, const GLuint *buffer);
+GLAPI void APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffer);
+void APIENTRY gl_dispatch_stub_514(GLsizei n, GLuint *buffer);
+GLAPI void APIENTRY glGenBuffers(GLsizei n, GLuint *buffer);
+void APIENTRY gl_dispatch_stub_515(GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_516(GLenum target, GLenum pname, GLvoid **params);
+GLAPI void APIENTRY glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY gl_dispatch_stub_517(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
+GLboolean APIENTRY gl_dispatch_stub_518(GLuint buffer);
+GLAPI GLboolean APIENTRY glIsBuffer(GLuint buffer);
+GLvoid * APIENTRY gl_dispatch_stub_519(GLenum target, GLenum access);
+GLAPI GLvoid * APIENTRY glMapBufferOES(GLenum target, GLenum access);
+GLboolean APIENTRY gl_dispatch_stub_520(GLenum target);
+GLAPI GLboolean APIENTRY glUnmapBufferOES(GLenum target);
+void APIENTRY gl_dispatch_stub_521(GLenum target, GLuint id);
+void APIENTRY gl_dispatch_stub_522(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_523(GLenum target);
+void APIENTRY gl_dispatch_stub_524(GLsizei n, GLuint *ids);
+void APIENTRY gl_dispatch_stub_525(GLuint id, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_526(GLuint id, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_527(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_528(GLuint id);
+void APIENTRY gl_dispatch_stub_529(GLhandleARB containerObj, GLhandleARB obj);
+void APIENTRY gl_dispatch_stub_530(GLhandleARB shader);
+GLAPI void APIENTRY glCompileShader(GLuint shader);
+GLhandleARB APIENTRY gl_dispatch_stub_531(void);
+GLhandleARB APIENTRY gl_dispatch_stub_532(GLenum shaderType);
+void APIENTRY gl_dispatch_stub_533(GLhandleARB obj);
+void APIENTRY gl_dispatch_stub_534(GLhandleARB containerObj, GLhandleARB attachedObj);
+void APIENTRY gl_dispatch_stub_535(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+GLAPI void APIENTRY glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+void APIENTRY gl_dispatch_stub_536(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog);
+GLhandleARB APIENTRY gl_dispatch_stub_537(GLenum pname);
+void APIENTRY gl_dispatch_stub_538(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
+void APIENTRY gl_dispatch_stub_539(GLhandleARB obj, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_540(GLhandleARB obj, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_541(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source);
+GLAPI void APIENTRY glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+GLint APIENTRY gl_dispatch_stub_542(GLhandleARB program, const GLcharARB *name);
+GLAPI GLint APIENTRY glGetUniformLocation(GLuint program, const GLchar *name);
+void APIENTRY gl_dispatch_stub_543(GLhandleARB program, GLint location, GLfloat *params);
+GLAPI void APIENTRY glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+void APIENTRY gl_dispatch_stub_544(GLhandleARB program, GLint location, GLint *params);
+GLAPI void APIENTRY glGetUniformiv(GLuint program, GLint location, GLint *params);
+void APIENTRY gl_dispatch_stub_545(GLhandleARB program);
+GLAPI void APIENTRY glLinkProgram(GLuint program);
+void APIENTRY gl_dispatch_stub_546(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length);
+GLAPI void APIENTRY glShaderSource(GLuint shader, GLsizei count, const GLchar **string, const GLint *length);
+void APIENTRY gl_dispatch_stub_547(GLint location, GLfloat v0);
+GLAPI void APIENTRY glUniform1f(GLint location, GLfloat v0);
+void APIENTRY gl_dispatch_stub_548(GLint location, GLsizei count, const GLfloat *value);
+GLAPI void APIENTRY glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_549(GLint location, GLint v0);
+GLAPI void APIENTRY glUniform1i(GLint location, GLint v0);
+void APIENTRY gl_dispatch_stub_550(GLint location, GLsizei count, const GLint *value);
+GLAPI void APIENTRY glUniform1iv(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_551(GLint location, GLfloat v0, GLfloat v1);
+GLAPI void APIENTRY glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+void APIENTRY gl_dispatch_stub_552(GLint location, GLsizei count, const GLfloat *value);
+GLAPI void APIENTRY glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_553(GLint location, GLint v0, GLint v1);
+GLAPI void APIENTRY glUniform2i(GLint location, GLint v0, GLint v1);
+void APIENTRY gl_dispatch_stub_554(GLint location, GLsizei count, const GLint *value);
+GLAPI void APIENTRY glUniform2iv(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_555(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+GLAPI void APIENTRY glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+void APIENTRY gl_dispatch_stub_556(GLint location, GLsizei count, const GLfloat *value);
+GLAPI void APIENTRY glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_557(GLint location, GLint v0, GLint v1, GLint v2);
+GLAPI void APIENTRY glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+void APIENTRY gl_dispatch_stub_558(GLint location, GLsizei count, const GLint *value);
+GLAPI void APIENTRY glUniform3iv(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_559(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+GLAPI void APIENTRY glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+void APIENTRY gl_dispatch_stub_560(GLint location, GLsizei count, const GLfloat *value);
+GLAPI void APIENTRY glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_561(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+GLAPI void APIENTRY glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+void APIENTRY gl_dispatch_stub_562(GLint location, GLsizei count, const GLint *value);
+GLAPI void APIENTRY glUniform4iv(GLint location, GLsizei count, const GLint *value);
+void APIENTRY gl_dispatch_stub_563(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GLAPI void APIENTRY glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_564(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GLAPI void APIENTRY glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_565(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GLAPI void APIENTRY glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_566(GLhandleARB program);
+GLAPI void APIENTRY glUseProgram(GLuint program);
+void APIENTRY gl_dispatch_stub_567(GLhandleARB program);
+GLAPI void APIENTRY glValidateProgram(GLuint program);
+void APIENTRY gl_dispatch_stub_568(GLhandleARB program, GLuint index, const GLcharARB *name);
+GLAPI void APIENTRY glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+void APIENTRY gl_dispatch_stub_569(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+GLAPI void APIENTRY glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+GLint APIENTRY gl_dispatch_stub_570(GLhandleARB program, const GLcharARB *name);
+GLAPI GLint APIENTRY glGetAttribLocation(GLuint program, const GLchar *name);
+void APIENTRY gl_dispatch_stub_571(GLsizei n, const GLenum *bufs);
+void APIENTRY gl_dispatch_stub_572(GLenum mode, GLint first, GLsizei count, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_573(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_574(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_575(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_576(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
+void APIENTRY gl_dispatch_stub_577(GLuint program, GLenum pname, GLint value);
+void APIENTRY gl_dispatch_stub_578(GLuint index, GLuint divisor);
+void APIENTRY gl_dispatch_stub_579(GLenum target, GLintptr offset, GLsizeiptr length);
+GLvoid * APIENTRY gl_dispatch_stub_580(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+void APIENTRY gl_dispatch_stub_581(GLuint array);
+void APIENTRY gl_dispatch_stub_582(GLsizei n, GLuint *arrays);
+void APIENTRY gl_dispatch_stub_583(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+GLenum APIENTRY gl_dispatch_stub_584(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY gl_dispatch_stub_585(GLsync sync);
+GLsync APIENTRY gl_dispatch_stub_586(GLenum condition, GLbitfield flags);
+void APIENTRY gl_dispatch_stub_587(GLenum pname, GLint64 *params);
+void APIENTRY gl_dispatch_stub_588(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+GLboolean APIENTRY gl_dispatch_stub_589(GLsync sync);
+void APIENTRY gl_dispatch_stub_590(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY gl_dispatch_stub_591(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY gl_dispatch_stub_592(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY gl_dispatch_stub_593(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex);
+void APIENTRY gl_dispatch_stub_594(GLuint buf, GLenum modeRGB, GLenum modeA);
+void APIENTRY gl_dispatch_stub_595(GLuint buf, GLenum mode);
+void APIENTRY gl_dispatch_stub_596(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA);
+void APIENTRY gl_dispatch_stub_597(GLuint buf, GLenum src, GLenum dst);
+void APIENTRY gl_dispatch_stub_598(GLenum target, GLuint id);
+void APIENTRY gl_dispatch_stub_599(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_600(GLenum mode, GLuint id);
+void APIENTRY gl_dispatch_stub_601(GLsizei n, GLuint *ids);
+GLboolean APIENTRY gl_dispatch_stub_602(GLuint id);
+void APIENTRY gl_dispatch_stub_603(void);
+void APIENTRY gl_dispatch_stub_604(void);
+GLAPI void APIENTRY glClearDepthf(GLclampf depth);
+GLAPI void APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar);
+GLAPI void APIENTRY glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+GLAPI void APIENTRY glReleaseShaderCompiler(void);
+GLAPI void APIENTRY glShaderBinary(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+void APIENTRY gl_dispatch_stub_610(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+GLAPI void APIENTRY glGetProgramBinaryOES(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+void APIENTRY gl_dispatch_stub_611(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+GLAPI void APIENTRY glProgramBinaryOES(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
+void APIENTRY gl_dispatch_stub_612(GLuint program, GLenum pname, GLint value);
+void APIENTRY gl_dispatch_stub_613(GLfloat factor, GLfloat bias);
+void APIENTRY gl_dispatch_stub_614(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
+void APIENTRY gl_dispatch_stub_615(const GLfloat *coords);
+void APIENTRY gl_dispatch_stub_616(GLint x, GLint y, GLint z, GLint width, GLint height);
+void APIENTRY gl_dispatch_stub_617(const GLint *coords);
+void APIENTRY gl_dispatch_stub_618(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
+void APIENTRY gl_dispatch_stub_619(const GLshort *coords);
+void APIENTRY gl_dispatch_stub_620(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
+void APIENTRY gl_dispatch_stub_621(const GLfixed *coords);
+void APIENTRY gl_dispatch_stub_622(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_623(GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_624(GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_625(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_626(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_627(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_628(GLenum pname, const GLint *params);
+GLbitfield APIENTRY gl_dispatch_stub_629(GLfixed *mantissa, GLint *exponent);
+void APIENTRY gl_dispatch_stub_630(GLclampf value, GLboolean invert);
+void APIENTRY gl_dispatch_stub_631(GLenum pattern);
+void APIENTRY gl_dispatch_stub_632(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_633(GLsizei stride, GLsizei count, const GLboolean *pointer);
+void APIENTRY gl_dispatch_stub_634(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_635(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_636(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_637(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_638(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_639(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_640(GLint first, GLsizei count);
+void APIENTRY gl_dispatch_stub_641(void);
+void APIENTRY gl_dispatch_stub_642(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY gl_dispatch_stub_643(const GLbyte *v);
+void APIENTRY gl_dispatch_stub_644(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY gl_dispatch_stub_645(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_646(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY gl_dispatch_stub_647(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_648(GLint red, GLint green, GLint blue);
+void APIENTRY gl_dispatch_stub_649(const GLint *v);
+void APIENTRY gl_dispatch_stub_650(GLshort red, GLshort green, GLshort blue);
+void APIENTRY gl_dispatch_stub_651(const GLshort *v);
+void APIENTRY gl_dispatch_stub_652(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY gl_dispatch_stub_653(const GLubyte *v);
+void APIENTRY gl_dispatch_stub_654(GLuint red, GLuint green, GLuint blue);
+void APIENTRY gl_dispatch_stub_655(const GLuint *v);
+void APIENTRY gl_dispatch_stub_656(GLushort red, GLushort green, GLushort blue);
+void APIENTRY gl_dispatch_stub_657(const GLushort *v);
+void APIENTRY gl_dispatch_stub_658(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
+GLAPI void APIENTRY glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
+void APIENTRY gl_dispatch_stub_661(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_662(GLdouble coord);
+void APIENTRY gl_dispatch_stub_663(const GLdouble *coord);
+void APIENTRY gl_dispatch_stub_664(GLfloat coord);
+void APIENTRY gl_dispatch_stub_665(const GLfloat *coord);
+void APIENTRY gl_dispatch_stub_666(GLenum mode);
+void APIENTRY gl_dispatch_stub_667(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+GLAPI void APIENTRY glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+void APIENTRY gl_dispatch_stub_668(void);
+void APIENTRY gl_dispatch_stub_669(GLsizei length, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_670(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY gl_dispatch_stub_671(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
+void APIENTRY gl_dispatch_stub_672(GLenum pname, GLfloat param);
+void APIENTRY gl_dispatch_stub_673(GLenum pname, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_674(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_675(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_676(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY gl_dispatch_stub_677(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_678(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_679(GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_680(GLenum stage, GLenum portion, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_681(GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_682(GLenum variable, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_683(void);
+void APIENTRY gl_dispatch_stub_684(GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_685(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_686(GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_687(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_688(GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_689(const GLint *v);
+void APIENTRY gl_dispatch_stub_690(GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_691(const GLshort *v);
+void APIENTRY gl_dispatch_stub_692(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_693(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_694(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_695(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_696(GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_697(const GLint *v);
+void APIENTRY gl_dispatch_stub_698(GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_699(const GLshort *v);
+void APIENTRY gl_dispatch_stub_700(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_701(const GLdouble *v);
+void APIENTRY gl_dispatch_stub_702(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_703(const GLfloat *v);
+void APIENTRY gl_dispatch_stub_704(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_705(const GLint *v);
+void APIENTRY gl_dispatch_stub_706(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_707(const GLshort *v);
+void APIENTRY gl_dispatch_stub_708(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
+void APIENTRY gl_dispatch_stub_709(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride);
+void APIENTRY gl_dispatch_stub_710(GLsizei n, const GLuint *fences);
+void APIENTRY gl_dispatch_stub_711(GLuint fence);
+void APIENTRY gl_dispatch_stub_712(GLsizei n, GLuint *fences);
+void APIENTRY gl_dispatch_stub_713(GLuint fence, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_714(GLuint fence);
+void APIENTRY gl_dispatch_stub_715(GLuint fence, GLenum condition);
+GLboolean APIENTRY gl_dispatch_stub_716(GLuint fence);
+GLboolean APIENTRY gl_dispatch_stub_717(GLsizei n, const GLuint *ids, GLboolean *residences);
+void APIENTRY gl_dispatch_stub_718(GLenum target, GLuint program);
+void APIENTRY gl_dispatch_stub_719(GLsizei n, const GLuint *programs);
+void APIENTRY gl_dispatch_stub_720(GLenum target, GLuint id, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_721(GLsizei n, GLuint *programs);
+void APIENTRY gl_dispatch_stub_722(GLenum target, GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_723(GLenum target, GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_724(GLuint id, GLenum pname, GLubyte *program);
+void APIENTRY gl_dispatch_stub_725(GLuint id, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_726(GLenum target, GLuint address, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_727(GLuint index, GLenum pname, GLvoid **pointer);
+GLAPI void APIENTRY glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid **pointer);
+void APIENTRY gl_dispatch_stub_728(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY gl_dispatch_stub_729(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY gl_dispatch_stub_730(GLuint index, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_731(GLuint program);
+void APIENTRY gl_dispatch_stub_732(GLenum target, GLuint id, GLsizei len, const GLubyte *program);
+void APIENTRY gl_dispatch_stub_733(GLenum target, GLuint index, GLsizei num, const GLdouble *params);
+void APIENTRY gl_dispatch_stub_734(GLenum target, GLuint index, GLsizei num, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_735(GLsizei n, const GLuint *ids);
+void APIENTRY gl_dispatch_stub_736(GLenum target, GLuint address, GLenum matrix, GLenum transform);
+void APIENTRY gl_dispatch_stub_737(GLuint index, GLdouble x);
+void APIENTRY gl_dispatch_stub_738(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_739(GLuint index, GLfloat x);
+void APIENTRY gl_dispatch_stub_740(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_741(GLuint index, GLshort x);
+void APIENTRY gl_dispatch_stub_742(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_743(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY gl_dispatch_stub_744(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_745(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY gl_dispatch_stub_746(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_747(GLuint index, GLshort x, GLshort y);
+void APIENTRY gl_dispatch_stub_748(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_749(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY gl_dispatch_stub_750(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_751(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY gl_dispatch_stub_752(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_753(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY gl_dispatch_stub_754(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_755(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_756(GLuint index, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_757(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_758(GLuint index, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_759(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY gl_dispatch_stub_760(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_761(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY gl_dispatch_stub_762(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_763(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_764(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_765(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_766(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_767(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_768(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_769(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_770(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_771(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_772(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_773(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_774(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_775(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY gl_dispatch_stub_776(GLuint index, GLsizei n, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_777(GLenum pname, GLfloat *param);
+void APIENTRY gl_dispatch_stub_778(GLenum pname, GLint *param);
+void APIENTRY gl_dispatch_stub_779(GLenum pname, const GLfloat *param);
+void APIENTRY gl_dispatch_stub_780(GLenum pname, const GLint *param);
+void APIENTRY gl_dispatch_stub_781(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY gl_dispatch_stub_782(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY gl_dispatch_stub_783(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY gl_dispatch_stub_784(void);
+void APIENTRY gl_dispatch_stub_785(GLuint id);
+void APIENTRY gl_dispatch_stub_786(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY gl_dispatch_stub_787(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY gl_dispatch_stub_788(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY gl_dispatch_stub_789(GLuint id);
+void APIENTRY gl_dispatch_stub_790(void);
+GLuint APIENTRY gl_dispatch_stub_791(GLuint range);
+void APIENTRY gl_dispatch_stub_792(GLuint dst, GLuint coord, GLenum swizzle);
+void APIENTRY gl_dispatch_stub_793(GLuint dst, GLuint interp, GLenum swizzle);
+void APIENTRY gl_dispatch_stub_794(GLuint dst, const GLfloat *value);
+void APIENTRY gl_dispatch_stub_795(GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_796(GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_797(GLenum face);
+void APIENTRY gl_dispatch_stub_798(GLuint array);
+void APIENTRY gl_dispatch_stub_799(GLsizei n, const GLuint *arrays);
+void APIENTRY gl_dispatch_stub_800(GLsizei n, GLuint *arrays);
+GLboolean APIENTRY gl_dispatch_stub_801(GLuint array);
+void APIENTRY gl_dispatch_stub_802(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
+void APIENTRY gl_dispatch_stub_803(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
+void APIENTRY gl_dispatch_stub_804(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY gl_dispatch_stub_805(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
+void APIENTRY gl_dispatch_stub_806(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY gl_dispatch_stub_807(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
+void APIENTRY gl_dispatch_stub_808(GLuint index);
+void APIENTRY gl_dispatch_stub_809(void);
+void APIENTRY gl_dispatch_stub_810(GLenum func, GLclampx ref);
+void APIENTRY gl_dispatch_stub_811(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
+void APIENTRY gl_dispatch_stub_812(GLclampx depth);
+void APIENTRY gl_dispatch_stub_813(GLenum plane, const GLfixed *equation);
+void APIENTRY gl_dispatch_stub_814(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+void APIENTRY gl_dispatch_stub_815(GLclampx zNear, GLclampx zFar);
+void APIENTRY gl_dispatch_stub_816(GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_817(GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_818(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+void APIENTRY gl_dispatch_stub_819(GLenum plane, GLfixed *equation);
+void APIENTRY gl_dispatch_stub_820(GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_821(GLenum light, GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_822(GLenum face, GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_823(GLenum target, GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_824(GLenum coord, GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_825(GLenum target, GLenum pname, GLfixed *params);
+void APIENTRY gl_dispatch_stub_826(GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_827(GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_828(GLenum light, GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_829(GLenum light, GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_830(GLfixed width);
+void APIENTRY gl_dispatch_stub_831(const GLfixed *m);
+void APIENTRY gl_dispatch_stub_832(GLenum face, GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_833(GLenum face, GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_834(const GLfixed *m);
+void APIENTRY gl_dispatch_stub_835(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+void APIENTRY gl_dispatch_stub_836(GLfixed nx, GLfixed ny, GLfixed nz);
+void APIENTRY gl_dispatch_stub_837(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+void APIENTRY gl_dispatch_stub_838(GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_839(GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_840(GLfixed size);
+void APIENTRY gl_dispatch_stub_841(GLfixed factor, GLfixed units);
+void APIENTRY gl_dispatch_stub_842(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY gl_dispatch_stub_843(GLclampx value, GLboolean invert);
+void APIENTRY gl_dispatch_stub_844(GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY gl_dispatch_stub_845(GLenum target, GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_846(GLenum target, GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_847(GLenum coord, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_848(GLenum coord, GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_849(GLenum target, GLenum pname, GLfixed param);
+void APIENTRY gl_dispatch_stub_850(GLenum target, GLenum pname, const GLfixed *params);
+void APIENTRY gl_dispatch_stub_851(GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY gl_dispatch_stub_852(GLenum plane, const GLfloat *equation);
+void APIENTRY gl_dispatch_stub_853(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+void APIENTRY gl_dispatch_stub_854(GLenum plane, GLfloat *equation);
+void APIENTRY gl_dispatch_stub_855(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+void APIENTRY gl_dispatch_stub_856(GLclampd zmin, GLclampd zmax);
+void APIENTRY gl_dispatch_stub_857(GLenum modeRGB, GLenum modeA);
+GLAPI void APIENTRY glBlendEquationSeparate(GLenum modeRGB, GLenum modeA);
+void APIENTRY gl_dispatch_stub_858(GLenum target, GLuint framebuffer);
+GLAPI void APIENTRY glBindFramebuffer(GLenum target, GLuint framebuffer);
+void APIENTRY gl_dispatch_stub_859(GLenum target, GLuint renderbuffer);
+GLAPI void APIENTRY glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+GLenum APIENTRY gl_dispatch_stub_860(GLenum target);
+GLAPI GLenum APIENTRY glCheckFramebufferStatus(GLenum target);
+void APIENTRY gl_dispatch_stub_861(GLsizei n, const GLuint *framebuffers);
+GLAPI void APIENTRY glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+void APIENTRY gl_dispatch_stub_862(GLsizei n, const GLuint *renderbuffers);
+GLAPI void APIENTRY glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+void APIENTRY gl_dispatch_stub_863(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GLAPI void APIENTRY glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+void APIENTRY gl_dispatch_stub_864(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_865(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GLAPI void APIENTRY glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY gl_dispatch_stub_866(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+GLAPI void APIENTRY glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+void APIENTRY gl_dispatch_stub_867(GLsizei n, GLuint *framebuffers);
+GLAPI void APIENTRY glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+void APIENTRY gl_dispatch_stub_868(GLsizei n, GLuint *renderbuffers);
+GLAPI void APIENTRY glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+void APIENTRY gl_dispatch_stub_869(GLenum target);
+GLAPI void APIENTRY glGenerateMipmap(GLenum target);
+void APIENTRY gl_dispatch_stub_870(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_871(GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY gl_dispatch_stub_872(GLuint framebuffer);
+GLAPI GLboolean APIENTRY glIsFramebuffer(GLuint framebuffer);
+GLboolean APIENTRY gl_dispatch_stub_873(GLuint renderbuffer);
+GLAPI GLboolean APIENTRY glIsRenderbuffer(GLuint renderbuffer);
+void APIENTRY gl_dispatch_stub_874(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GLAPI void APIENTRY glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY gl_dispatch_stub_875(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+void APIENTRY gl_dispatch_stub_876(GLenum target, GLenum pname, GLint param);
+void APIENTRY gl_dispatch_stub_877(GLenum target, GLintptr offset, GLsizeiptr size);
+void APIENTRY gl_dispatch_stub_878(GLuint program, GLuint colorNumber, const GLchar *name);
+GLint APIENTRY gl_dispatch_stub_879(GLuint program, const GLchar *name);
+void APIENTRY gl_dispatch_stub_880(GLuint program, GLint location, GLuint *params);
+void APIENTRY gl_dispatch_stub_881(GLuint index, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_882(GLuint index, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_883(GLint location, GLuint x);
+void APIENTRY gl_dispatch_stub_884(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_885(GLint location, GLuint x, GLuint y);
+void APIENTRY gl_dispatch_stub_886(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_887(GLint location, GLuint x, GLuint y, GLuint z);
+void APIENTRY gl_dispatch_stub_888(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_889(GLint location, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY gl_dispatch_stub_890(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY gl_dispatch_stub_891(GLuint index, GLint x);
+void APIENTRY gl_dispatch_stub_892(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_893(GLuint index, GLuint x);
+void APIENTRY gl_dispatch_stub_894(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_895(GLuint index, GLint x, GLint y);
+void APIENTRY gl_dispatch_stub_896(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_897(GLuint index, GLuint x, GLuint y);
+void APIENTRY gl_dispatch_stub_898(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_899(GLuint index, GLint x, GLint y, GLint z);
+void APIENTRY gl_dispatch_stub_900(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_901(GLuint index, GLuint x, GLuint y, GLuint z);
+void APIENTRY gl_dispatch_stub_902(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_903(GLuint index, const GLbyte *v);
+void APIENTRY gl_dispatch_stub_904(GLuint index, GLint x, GLint y, GLint z, GLint w);
+void APIENTRY gl_dispatch_stub_905(GLuint index, const GLint *v);
+void APIENTRY gl_dispatch_stub_906(GLuint index, const GLshort *v);
+void APIENTRY gl_dispatch_stub_907(GLuint index, const GLubyte *v);
+void APIENTRY gl_dispatch_stub_908(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY gl_dispatch_stub_909(GLuint index, const GLuint *v);
+void APIENTRY gl_dispatch_stub_910(GLuint index, const GLushort *v);
+void APIENTRY gl_dispatch_stub_911(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_912(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+void APIENTRY gl_dispatch_stub_913(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+void APIENTRY gl_dispatch_stub_914(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_915(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_916(GLenum value, GLuint index, GLboolean *data);
+void APIENTRY gl_dispatch_stub_917(GLenum value, GLuint index, GLint *data);
+GLboolean APIENTRY gl_dispatch_stub_918(GLenum target, GLuint index);
+void APIENTRY gl_dispatch_stub_919(GLint r, GLint g, GLint b, GLint a);
+void APIENTRY gl_dispatch_stub_920(GLuint r, GLuint g, GLuint b, GLuint a);
+void APIENTRY gl_dispatch_stub_921(GLenum target, GLenum pname, GLint *params);
+void APIENTRY gl_dispatch_stub_922(GLenum target, GLenum pname, GLuint *params);
+void APIENTRY gl_dispatch_stub_923(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY gl_dispatch_stub_924(GLenum target, GLenum pname, const GLuint *params);
+void APIENTRY gl_dispatch_stub_925(GLuint query, GLenum mode);
+void APIENTRY gl_dispatch_stub_926(void);
+void APIENTRY gl_dispatch_stub_927(GLenum mode);
+void APIENTRY gl_dispatch_stub_928(GLenum target, GLuint index, GLuint buffer);
+void APIENTRY gl_dispatch_stub_929(GLenum target, GLuint index, GLuint buffer, GLintptr offset);
+void APIENTRY gl_dispatch_stub_930(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+void APIENTRY gl_dispatch_stub_931(void);
+void APIENTRY gl_dispatch_stub_932(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+void APIENTRY gl_dispatch_stub_933(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode);
+void APIENTRY gl_dispatch_stub_934(GLenum mode);
+void APIENTRY gl_dispatch_stub_935(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY gl_dispatch_stub_936(GLenum target, GLsizei length, GLvoid *pointer);
+void APIENTRY gl_dispatch_stub_937(GLenum objectType, GLuint name, GLenum pname, GLint *value);
+GLenum APIENTRY gl_dispatch_stub_938(GLenum objectType, GLuint name, GLenum option);
+GLenum APIENTRY gl_dispatch_stub_939(GLenum objectType, GLuint name, GLenum option);
+void APIENTRY gl_dispatch_stub_940(GLuint program);
+GLuint APIENTRY gl_dispatch_stub_941(GLenum type, const GLchar *string);
+void APIENTRY gl_dispatch_stub_942(GLenum type, GLuint program);
+void APIENTRY gl_dispatch_stub_943(void);
+void APIENTRY gl_dispatch_stub_944(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+void APIENTRY gl_dispatch_stub_945(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_946(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY gl_dispatch_stub_947(GLuint id, GLenum pname, GLint64EXT *params);
+void APIENTRY gl_dispatch_stub_948(GLuint id, GLenum pname, GLuint64EXT *params);
+GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLvoid *writeOffset);
+GLAPI void APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLvoid *writeOffset);
+#undef MAPI_TMP_DEFINES
+#endif /* MAPI_TMP_DEFINES */
+
+#ifdef MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN
+GLAPI void APIENTRY glCullFace(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[152];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glFrontFace(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[157];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glHint(GLenum target, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[158];
+ ((void (APIENTRY *)(GLenum target, GLenum mode)) _func)(target, mode);
+}
+
+GLAPI void APIENTRY glLineWidth(GLfloat width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[168];
+ ((void (APIENTRY *)(GLfloat width)) _func)(width);
+}
+
+GLAPI void APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[176];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+GLAPI void APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[178];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[179];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[180];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+GLAPI void APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[181];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[183];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+GLAPI void APIENTRY glClear(GLbitfield mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[203];
+ ((void (APIENTRY *)(GLbitfield mask)) _func)(mask);
+}
+
+GLAPI void APIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[206];
+ ((void (APIENTRY *)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glClearStencil(GLint s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[207];
+ ((void (APIENTRY *)(GLint s)) _func)(s);
+}
+
+GLAPI void APIENTRY glStencilMask(GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[209];
+ ((void (APIENTRY *)(GLuint mask)) _func)(mask);
+}
+
+GLAPI void APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[210];
+ ((void (APIENTRY *)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glDepthMask(GLboolean flag)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[211];
+ ((void (APIENTRY *)(GLboolean flag)) _func)(flag);
+}
+
+GLAPI void APIENTRY glDisable(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[214];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glEnable(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[215];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glFinish(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[216];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glFlush(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[217];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[241];
+ ((void (APIENTRY *)(GLenum sfactor, GLenum dfactor)) _func)(sfactor, dfactor);
+}
+
+GLAPI void APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[243];
+ ((void (APIENTRY *)(GLenum func, GLint ref, GLuint mask)) _func)(func, ref, mask);
+}
+
+GLAPI void APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[244];
+ ((void (APIENTRY *)(GLenum fail, GLenum zfail, GLenum zpass)) _func)(fail, zfail, zpass);
+}
+
+GLAPI void APIENTRY glDepthFunc(GLenum func)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[245];
+ ((void (APIENTRY *)(GLenum func)) _func)(func);
+}
+
+GLAPI void APIENTRY glPixelStorei(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[250];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+GLAPI void APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[256];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)) _func)(x, y, width, height, format, type, pixels);
+}
+
+GLAPI void APIENTRY glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[258];
+ ((void (APIENTRY *)(GLenum pname, GLboolean *params)) _func)(pname, params);
+}
+
+GLAPI GLenum APIENTRY glGetError(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[261];
+ return ((GLenum (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glGetFloatv(GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[262];
+ ((void (APIENTRY *)(GLenum pname, GLfloat *params)) _func)(pname, params);
+}
+
+GLAPI void APIENTRY glGetIntegerv(GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[263];
+ ((void (APIENTRY *)(GLenum pname, GLint *params)) _func)(pname, params);
+}
+
+GLAPI const GLubyte * APIENTRY glGetString(GLenum name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[275];
+ return ((const GLubyte * (APIENTRY *)(GLenum name)) _func)(name);
+}
+
+GLAPI void APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[282];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[283];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsEnabled(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[286];
+ return ((GLboolean (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLAPI void APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[305];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+GLAPI void APIENTRY glBindTexture(GLenum target, GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[307];
+ ((void (APIENTRY *)(GLenum target, GLuint texture)) _func)(target, texture);
+}
+
+GLAPI void APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[310];
+ ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count)) _func)(mode, first, count);
+}
+
+GLAPI void APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[311];
+ ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)) _func)(mode, count, type, indices);
+}
+
+GLAPI void APIENTRY glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[319];
+ ((void (APIENTRY *)(GLfloat factor, GLfloat units)) _func)(factor, units);
+}
+
+GLAPI void APIENTRY glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[324];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)) _func)(target, level, internalformat, x, y, width, height, border);
+}
+
+GLAPI void APIENTRY glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[326];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+GLAPI void APIENTRY glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[327];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *textures)) _func)(n, textures);
+}
+
+GLAPI void APIENTRY glGenTextures(GLsizei n, GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[328];
+ ((void (APIENTRY *)(GLsizei n, GLuint *textures)) _func)(n, textures);
+}
+
+GLAPI GLboolean APIENTRY glIsTexture(GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[330];
+ return ((GLboolean (APIENTRY *)(GLuint texture)) _func)(texture);
+}
+
+GLAPI void APIENTRY glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[333];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+GLAPI void APIENTRY glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[336];
+ ((void (APIENTRY *)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)) _func)(red, green, blue, alpha);
+}
+
+GLAPI void APIENTRY glBlendEquation(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[337];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+GLAPI void APIENTRY glTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[371];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+GLAPI void APIENTRY glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[372];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+GLAPI void APIENTRY glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[373];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+GLAPI void APIENTRY glActiveTexture(GLenum texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[374];
+ ((void (APIENTRY *)(GLenum texture)) _func)(texture);
+}
+
+GLAPI void APIENTRY glAttachShader(GLuint program, GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[408];
+ ((void (APIENTRY *)(GLuint program, GLuint shader)) _func)(program, shader);
+}
+
+GLAPI GLuint APIENTRY glCreateProgram(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[409];
+ return ((GLuint (APIENTRY *)(void)) _func)();
+}
+
+GLAPI GLuint APIENTRY glCreateShader(GLenum type)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[410];
+ return ((GLuint (APIENTRY *)(GLenum type)) _func)(type);
+}
+
+GLAPI void APIENTRY glDeleteProgram(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[411];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI void APIENTRY glDeleteShader(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[412];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI void APIENTRY glDetachShader(GLuint program, GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[413];
+ ((void (APIENTRY *)(GLuint program, GLuint shader)) _func)(program, shader);
+}
+
+GLAPI void APIENTRY glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[414];
+ ((void (APIENTRY *)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)) _func)(program, maxCount, count, obj);
+}
+
+GLAPI void APIENTRY glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[415];
+ ((void (APIENTRY *)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)) _func)(program, bufSize, length, infoLog);
+}
+
+GLAPI void APIENTRY glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[416];
+ ((void (APIENTRY *)(GLuint program, GLenum pname, GLint *params)) _func)(program, pname, params);
+}
+
+GLAPI void APIENTRY glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[417];
+ ((void (APIENTRY *)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)) _func)(shader, bufSize, length, infoLog);
+}
+
+GLAPI void APIENTRY glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[418];
+ ((void (APIENTRY *)(GLuint shader, GLenum pname, GLint *params)) _func)(shader, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsProgram(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[419];
+ return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI GLboolean APIENTRY glIsShader(GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[420];
+ return ((GLboolean (APIENTRY *)(GLuint shader)) _func)(shader);
+}
+
+GLAPI void APIENTRY glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[421];
+ ((void (APIENTRY *)(GLenum face, GLenum func, GLint ref, GLuint mask)) _func)(face, func, ref, mask);
+}
+
+GLAPI void APIENTRY glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[422];
+ ((void (APIENTRY *)(GLenum face, GLuint mask)) _func)(face, mask);
+}
+
+GLAPI void APIENTRY glStencilOpSeparate(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[423];
+ ((void (APIENTRY *)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)) _func)(face, sfail, zfail, zpass);
+}
+
+GLAPI void APIENTRY glSampleCoverage(GLclampf value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[445];
+ ((void (APIENTRY *)(GLclampf value, GLboolean invert)) _func)(value, invert);
+}
+
+GLAPI void APIENTRY glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[447];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+GLAPI void APIENTRY glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[448];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+GLAPI void APIENTRY glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[450];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+GLAPI void APIENTRY glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[451];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+GLAPI void APIENTRY glDisableVertexAttribArray(GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[453];
+ ((void (APIENTRY *)(GLuint index)) _func)(index);
+}
+
+GLAPI void APIENTRY glEnableVertexAttribArray(GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[454];
+ ((void (APIENTRY *)(GLuint index)) _func)(index);
+}
+
+GLAPI void APIENTRY glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[462];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params);
+}
+
+GLAPI void APIENTRY glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[463];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params);
+}
+
+GLAPI void APIENTRY glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[475];
+ ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x);
+}
+
+GLAPI void APIENTRY glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[476];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+GLAPI void APIENTRY glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[481];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y);
+}
+
+GLAPI void APIENTRY glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[482];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+GLAPI void APIENTRY glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[487];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z);
+}
+
+GLAPI void APIENTRY glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[488];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+GLAPI void APIENTRY glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[501];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w);
+}
+
+GLAPI void APIENTRY glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[502];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+GLAPI void APIENTRY glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[509];
+ ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, normalized, stride, pointer);
+}
+
+GLAPI void APIENTRY glBindBuffer(GLenum target, GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[510];
+ ((void (APIENTRY *)(GLenum target, GLuint buffer)) _func)(target, buffer);
+}
+
+GLAPI void APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[511];
+ ((void (APIENTRY *)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)) _func)(target, size, data, usage);
+}
+
+GLAPI void APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[512];
+ ((void (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)) _func)(target, offset, size, data);
+}
+
+GLAPI void APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[513];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *buffer)) _func)(n, buffer);
+}
+
+GLAPI void APIENTRY glGenBuffers(GLsizei n, GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[514];
+ ((void (APIENTRY *)(GLsizei n, GLuint *buffer)) _func)(n, buffer);
+}
+
+GLAPI void APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[515];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI void APIENTRY glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[516];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLvoid **params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsBuffer(GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[518];
+ return ((GLboolean (APIENTRY *)(GLuint buffer)) _func)(buffer);
+}
+
+GLAPI GLvoid * APIENTRY glMapBufferOES(GLenum target, GLenum access)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[519];
+ return ((GLvoid * (APIENTRY *)(GLenum target, GLenum access)) _func)(target, access);
+}
+
+GLAPI GLboolean APIENTRY glUnmapBufferOES(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[520];
+ return ((GLboolean (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glCompileShader(GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[530];
+ ((void (APIENTRY *)(GLuint shader)) _func)(shader);
+}
+
+GLAPI void APIENTRY glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[535];
+ ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name);
+}
+
+GLAPI void APIENTRY glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[541];
+ ((void (APIENTRY *)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)) _func)(shader, bufSize, length, source);
+}
+
+GLAPI GLint APIENTRY glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[542];
+ return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name);
+}
+
+GLAPI void APIENTRY glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[543];
+ ((void (APIENTRY *)(GLuint program, GLint location, GLfloat *params)) _func)(program, location, params);
+}
+
+GLAPI void APIENTRY glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[544];
+ ((void (APIENTRY *)(GLuint program, GLint location, GLint *params)) _func)(program, location, params);
+}
+
+GLAPI void APIENTRY glLinkProgram(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[545];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI void APIENTRY glShaderSource(GLuint shader, GLsizei count, const GLchar **string, const GLint *length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[546];
+ ((void (APIENTRY *)(GLuint shader, GLsizei count, const GLchar **string, const GLint *length)) _func)(shader, count, string, length);
+}
+
+GLAPI void APIENTRY glUniform1f(GLint location, GLfloat v0)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[547];
+ ((void (APIENTRY *)(GLint location, GLfloat v0)) _func)(location, v0);
+}
+
+GLAPI void APIENTRY glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[548];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform1i(GLint location, GLint v0)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[549];
+ ((void (APIENTRY *)(GLint location, GLint v0)) _func)(location, v0);
+}
+
+GLAPI void APIENTRY glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[550];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[551];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1)) _func)(location, v0, v1);
+}
+
+GLAPI void APIENTRY glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[552];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[553];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1)) _func)(location, v0, v1);
+}
+
+GLAPI void APIENTRY glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[554];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[555];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)) _func)(location, v0, v1, v2);
+}
+
+GLAPI void APIENTRY glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[556];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[557];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1, GLint v2)) _func)(location, v0, v1, v2);
+}
+
+GLAPI void APIENTRY glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[558];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[559];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)) _func)(location, v0, v1, v2, v3);
+}
+
+GLAPI void APIENTRY glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[560];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[561];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)) _func)(location, v0, v1, v2, v3);
+}
+
+GLAPI void APIENTRY glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[562];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+GLAPI void APIENTRY glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[563];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+GLAPI void APIENTRY glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[564];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+GLAPI void APIENTRY glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[565];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+GLAPI void APIENTRY glUseProgram(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[566];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI void APIENTRY glValidateProgram(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[567];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLAPI void APIENTRY glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[568];
+ ((void (APIENTRY *)(GLuint program, GLuint index, const GLchar *name)) _func)(program, index, name);
+}
+
+GLAPI void APIENTRY glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[569];
+ ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name);
+}
+
+GLAPI GLint APIENTRY glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[570];
+ return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name);
+}
+
+GLAPI void APIENTRY glClearDepthf(GLclampf depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[605];
+ ((void (APIENTRY *)(GLclampf depth)) _func)(depth);
+}
+
+GLAPI void APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[606];
+ ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar);
+}
+
+GLAPI void APIENTRY glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[607];
+ ((void (APIENTRY *)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)) _func)(shadertype, precisiontype, range, precision);
+}
+
+GLAPI void APIENTRY glReleaseShaderCompiler(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[608];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLAPI void APIENTRY glShaderBinary(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[609];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length);
+}
+
+GLAPI void APIENTRY glGetProgramBinaryOES(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[610];
+ ((void (APIENTRY *)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)) _func)(program, bufSize, length, binaryFormat, binary);
+}
+
+GLAPI void APIENTRY glProgramBinaryOES(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[611];
+ ((void (APIENTRY *)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length)) _func)(program, binaryFormat, binary, length);
+}
+
+GLAPI void APIENTRY glMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[659];
+ ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount);
+}
+
+GLAPI void APIENTRY glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[660];
+ ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount);
+}
+
+GLAPI void APIENTRY glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[667];
+ ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+GLAPI void APIENTRY glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid **pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[727];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer);
+}
+
+GLAPI void APIENTRY glBlendEquationSeparate(GLenum modeRGB, GLenum modeA)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[857];
+ ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA);
+}
+
+GLAPI void APIENTRY glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[858];
+ ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer);
+}
+
+GLAPI void APIENTRY glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[859];
+ ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer);
+}
+
+GLAPI GLenum APIENTRY glCheckFramebufferStatus(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[860];
+ return ((GLenum (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[861];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+GLAPI void APIENTRY glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[862];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+GLAPI void APIENTRY glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[863];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+GLAPI void APIENTRY glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[865];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level);
+}
+
+GLAPI void APIENTRY glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[866];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset);
+}
+
+GLAPI void APIENTRY glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[867];
+ ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+GLAPI void APIENTRY glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[868];
+ ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+GLAPI void APIENTRY glGenerateMipmap(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[869];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+GLAPI void APIENTRY glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[870];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params);
+}
+
+GLAPI void APIENTRY glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[871];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLAPI GLboolean APIENTRY glIsFramebuffer(GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[872];
+ return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer);
+}
+
+GLAPI GLboolean APIENTRY glIsRenderbuffer(GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[873];
+ return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer);
+}
+
+GLAPI void APIENTRY glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[874];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height);
+}
+
+GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[949];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+GLAPI void APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[950];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+/* does not need public_entries */
+#undef MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN
+#endif /* MAPI_TMP_PUBLIC_ENTRIES_NO_HIDDEN */
+
+#ifdef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN
+__asm__(
+STUB_ASM_ENTRY("glCullFace")"\n"
+"\t"STUB_ASM_CODE("152")"\n"
+
+STUB_ASM_ENTRY("glFrontFace")"\n"
+"\t"STUB_ASM_CODE("157")"\n"
+
+STUB_ASM_ENTRY("glHint")"\n"
+"\t"STUB_ASM_CODE("158")"\n"
+
+STUB_ASM_ENTRY("glLineWidth")"\n"
+"\t"STUB_ASM_CODE("168")"\n"
+
+STUB_ASM_ENTRY("glScissor")"\n"
+"\t"STUB_ASM_CODE("176")"\n"
+
+STUB_ASM_ENTRY("glTexParameterf")"\n"
+"\t"STUB_ASM_CODE("178")"\n"
+
+STUB_ASM_ENTRY("glTexParameterfv")"\n"
+"\t"STUB_ASM_CODE("179")"\n"
+
+STUB_ASM_ENTRY("glTexParameteri")"\n"
+"\t"STUB_ASM_CODE("180")"\n"
+
+STUB_ASM_ENTRY("glTexParameteriv")"\n"
+"\t"STUB_ASM_CODE("181")"\n"
+
+STUB_ASM_ENTRY("glTexImage2D")"\n"
+"\t"STUB_ASM_CODE("183")"\n"
+
+STUB_ASM_ENTRY("glClear")"\n"
+"\t"STUB_ASM_CODE("203")"\n"
+
+STUB_ASM_ENTRY("glClearColor")"\n"
+"\t"STUB_ASM_CODE("206")"\n"
+
+STUB_ASM_ENTRY("glClearStencil")"\n"
+"\t"STUB_ASM_CODE("207")"\n"
+
+STUB_ASM_ENTRY("glStencilMask")"\n"
+"\t"STUB_ASM_CODE("209")"\n"
+
+STUB_ASM_ENTRY("glColorMask")"\n"
+"\t"STUB_ASM_CODE("210")"\n"
+
+STUB_ASM_ENTRY("glDepthMask")"\n"
+"\t"STUB_ASM_CODE("211")"\n"
+
+STUB_ASM_ENTRY("glDisable")"\n"
+"\t"STUB_ASM_CODE("214")"\n"
+
+STUB_ASM_ENTRY("glEnable")"\n"
+"\t"STUB_ASM_CODE("215")"\n"
+
+STUB_ASM_ENTRY("glFinish")"\n"
+"\t"STUB_ASM_CODE("216")"\n"
+
+STUB_ASM_ENTRY("glFlush")"\n"
+"\t"STUB_ASM_CODE("217")"\n"
+
+STUB_ASM_ENTRY("glBlendFunc")"\n"
+"\t"STUB_ASM_CODE("241")"\n"
+
+STUB_ASM_ENTRY("glStencilFunc")"\n"
+"\t"STUB_ASM_CODE("243")"\n"
+
+STUB_ASM_ENTRY("glStencilOp")"\n"
+"\t"STUB_ASM_CODE("244")"\n"
+
+STUB_ASM_ENTRY("glDepthFunc")"\n"
+"\t"STUB_ASM_CODE("245")"\n"
+
+STUB_ASM_ENTRY("glPixelStorei")"\n"
+"\t"STUB_ASM_CODE("250")"\n"
+
+STUB_ASM_ENTRY("glReadPixels")"\n"
+"\t"STUB_ASM_CODE("256")"\n"
+
+STUB_ASM_ENTRY("glGetBooleanv")"\n"
+"\t"STUB_ASM_CODE("258")"\n"
+
+STUB_ASM_ENTRY("glGetError")"\n"
+"\t"STUB_ASM_CODE("261")"\n"
+
+STUB_ASM_ENTRY("glGetFloatv")"\n"
+"\t"STUB_ASM_CODE("262")"\n"
+
+STUB_ASM_ENTRY("glGetIntegerv")"\n"
+"\t"STUB_ASM_CODE("263")"\n"
+
+STUB_ASM_ENTRY("glGetString")"\n"
+"\t"STUB_ASM_CODE("275")"\n"
+
+STUB_ASM_ENTRY("glGetTexParameterfv")"\n"
+"\t"STUB_ASM_CODE("282")"\n"
+
+STUB_ASM_ENTRY("glGetTexParameteriv")"\n"
+"\t"STUB_ASM_CODE("283")"\n"
+
+STUB_ASM_ENTRY("glIsEnabled")"\n"
+"\t"STUB_ASM_CODE("286")"\n"
+
+STUB_ASM_ENTRY("glViewport")"\n"
+"\t"STUB_ASM_CODE("305")"\n"
+
+STUB_ASM_ENTRY("glBindTexture")"\n"
+"\t"STUB_ASM_CODE("307")"\n"
+
+STUB_ASM_ENTRY("glDrawArrays")"\n"
+"\t"STUB_ASM_CODE("310")"\n"
+
+STUB_ASM_ENTRY("glDrawElements")"\n"
+"\t"STUB_ASM_CODE("311")"\n"
+
+STUB_ASM_ENTRY("glPolygonOffset")"\n"
+"\t"STUB_ASM_CODE("319")"\n"
+
+STUB_ASM_ENTRY("glCopyTexImage2D")"\n"
+"\t"STUB_ASM_CODE("324")"\n"
+
+STUB_ASM_ENTRY("glCopyTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("326")"\n"
+
+STUB_ASM_ENTRY("glDeleteTextures")"\n"
+"\t"STUB_ASM_CODE("327")"\n"
+
+STUB_ASM_ENTRY("glGenTextures")"\n"
+"\t"STUB_ASM_CODE("328")"\n"
+
+STUB_ASM_ENTRY("glIsTexture")"\n"
+"\t"STUB_ASM_CODE("330")"\n"
+
+STUB_ASM_ENTRY("glTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("333")"\n"
+
+STUB_ASM_ENTRY("glBlendColor")"\n"
+"\t"STUB_ASM_CODE("336")"\n"
+
+STUB_ASM_ENTRY("glBlendEquation")"\n"
+"\t"STUB_ASM_CODE("337")"\n"
+
+STUB_ASM_ENTRY("glTexImage3DOES")"\n"
+"\t"STUB_ASM_CODE("371")"\n"
+
+STUB_ASM_ENTRY("glTexSubImage3DOES")"\n"
+"\t"STUB_ASM_CODE("372")"\n"
+
+STUB_ASM_ENTRY("glCopyTexSubImage3DOES")"\n"
+"\t"STUB_ASM_CODE("373")"\n"
+
+STUB_ASM_ENTRY("glActiveTexture")"\n"
+"\t"STUB_ASM_CODE("374")"\n"
+
+STUB_ASM_ENTRY("glAttachShader")"\n"
+"\t"STUB_ASM_CODE("408")"\n"
+
+STUB_ASM_ENTRY("glCreateProgram")"\n"
+"\t"STUB_ASM_CODE("409")"\n"
+
+STUB_ASM_ENTRY("glCreateShader")"\n"
+"\t"STUB_ASM_CODE("410")"\n"
+
+STUB_ASM_ENTRY("glDeleteProgram")"\n"
+"\t"STUB_ASM_CODE("411")"\n"
+
+STUB_ASM_ENTRY("glDeleteShader")"\n"
+"\t"STUB_ASM_CODE("412")"\n"
+
+STUB_ASM_ENTRY("glDetachShader")"\n"
+"\t"STUB_ASM_CODE("413")"\n"
+
+STUB_ASM_ENTRY("glGetAttachedShaders")"\n"
+"\t"STUB_ASM_CODE("414")"\n"
+
+STUB_ASM_ENTRY("glGetProgramInfoLog")"\n"
+"\t"STUB_ASM_CODE("415")"\n"
+
+STUB_ASM_ENTRY("glGetProgramiv")"\n"
+"\t"STUB_ASM_CODE("416")"\n"
+
+STUB_ASM_ENTRY("glGetShaderInfoLog")"\n"
+"\t"STUB_ASM_CODE("417")"\n"
+
+STUB_ASM_ENTRY("glGetShaderiv")"\n"
+"\t"STUB_ASM_CODE("418")"\n"
+
+STUB_ASM_ENTRY("glIsProgram")"\n"
+"\t"STUB_ASM_CODE("419")"\n"
+
+STUB_ASM_ENTRY("glIsShader")"\n"
+"\t"STUB_ASM_CODE("420")"\n"
+
+STUB_ASM_ENTRY("glStencilFuncSeparate")"\n"
+"\t"STUB_ASM_CODE("421")"\n"
+
+STUB_ASM_ENTRY("glStencilMaskSeparate")"\n"
+"\t"STUB_ASM_CODE("422")"\n"
+
+STUB_ASM_ENTRY("glStencilOpSeparate")"\n"
+"\t"STUB_ASM_CODE("423")"\n"
+
+STUB_ASM_ENTRY("glSampleCoverage")"\n"
+"\t"STUB_ASM_CODE("445")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexImage2D")"\n"
+"\t"STUB_ASM_CODE("447")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexImage3DOES")"\n"
+"\t"STUB_ASM_CODE("448")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexSubImage2D")"\n"
+"\t"STUB_ASM_CODE("450")"\n"
+
+STUB_ASM_ENTRY("glCompressedTexSubImage3DOES")"\n"
+"\t"STUB_ASM_CODE("451")"\n"
+
+STUB_ASM_ENTRY("glDisableVertexAttribArray")"\n"
+"\t"STUB_ASM_CODE("453")"\n"
+
+STUB_ASM_ENTRY("glEnableVertexAttribArray")"\n"
+"\t"STUB_ASM_CODE("454")"\n"
+
+STUB_ASM_ENTRY("glGetVertexAttribfv")"\n"
+"\t"STUB_ASM_CODE("462")"\n"
+
+STUB_ASM_ENTRY("glGetVertexAttribiv")"\n"
+"\t"STUB_ASM_CODE("463")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib1f")"\n"
+"\t"STUB_ASM_CODE("475")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib1fv")"\n"
+"\t"STUB_ASM_CODE("476")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib2f")"\n"
+"\t"STUB_ASM_CODE("481")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib2fv")"\n"
+"\t"STUB_ASM_CODE("482")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib3f")"\n"
+"\t"STUB_ASM_CODE("487")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib3fv")"\n"
+"\t"STUB_ASM_CODE("488")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib4f")"\n"
+"\t"STUB_ASM_CODE("501")"\n"
+
+STUB_ASM_ENTRY("glVertexAttrib4fv")"\n"
+"\t"STUB_ASM_CODE("502")"\n"
+
+STUB_ASM_ENTRY("glVertexAttribPointer")"\n"
+"\t"STUB_ASM_CODE("509")"\n"
+
+STUB_ASM_ENTRY("glBindBuffer")"\n"
+"\t"STUB_ASM_CODE("510")"\n"
+
+STUB_ASM_ENTRY("glBufferData")"\n"
+"\t"STUB_ASM_CODE("511")"\n"
+
+STUB_ASM_ENTRY("glBufferSubData")"\n"
+"\t"STUB_ASM_CODE("512")"\n"
+
+STUB_ASM_ENTRY("glDeleteBuffers")"\n"
+"\t"STUB_ASM_CODE("513")"\n"
+
+STUB_ASM_ENTRY("glGenBuffers")"\n"
+"\t"STUB_ASM_CODE("514")"\n"
+
+STUB_ASM_ENTRY("glGetBufferParameteriv")"\n"
+"\t"STUB_ASM_CODE("515")"\n"
+
+STUB_ASM_ENTRY("glGetBufferPointervOES")"\n"
+"\t"STUB_ASM_CODE("516")"\n"
+
+STUB_ASM_ENTRY("glIsBuffer")"\n"
+"\t"STUB_ASM_CODE("518")"\n"
+
+STUB_ASM_ENTRY("glMapBufferOES")"\n"
+"\t"STUB_ASM_CODE("519")"\n"
+
+STUB_ASM_ENTRY("glUnmapBufferOES")"\n"
+"\t"STUB_ASM_CODE("520")"\n"
+
+STUB_ASM_ENTRY("glCompileShader")"\n"
+"\t"STUB_ASM_CODE("530")"\n"
+
+STUB_ASM_ENTRY("glGetActiveUniform")"\n"
+"\t"STUB_ASM_CODE("535")"\n"
+
+STUB_ASM_ENTRY("glGetShaderSource")"\n"
+"\t"STUB_ASM_CODE("541")"\n"
+
+STUB_ASM_ENTRY("glGetUniformLocation")"\n"
+"\t"STUB_ASM_CODE("542")"\n"
+
+STUB_ASM_ENTRY("glGetUniformfv")"\n"
+"\t"STUB_ASM_CODE("543")"\n"
+
+STUB_ASM_ENTRY("glGetUniformiv")"\n"
+"\t"STUB_ASM_CODE("544")"\n"
+
+STUB_ASM_ENTRY("glLinkProgram")"\n"
+"\t"STUB_ASM_CODE("545")"\n"
+
+STUB_ASM_ENTRY("glShaderSource")"\n"
+"\t"STUB_ASM_CODE("546")"\n"
+
+STUB_ASM_ENTRY("glUniform1f")"\n"
+"\t"STUB_ASM_CODE("547")"\n"
+
+STUB_ASM_ENTRY("glUniform1fv")"\n"
+"\t"STUB_ASM_CODE("548")"\n"
+
+STUB_ASM_ENTRY("glUniform1i")"\n"
+"\t"STUB_ASM_CODE("549")"\n"
+
+STUB_ASM_ENTRY("glUniform1iv")"\n"
+"\t"STUB_ASM_CODE("550")"\n"
+
+STUB_ASM_ENTRY("glUniform2f")"\n"
+"\t"STUB_ASM_CODE("551")"\n"
+
+STUB_ASM_ENTRY("glUniform2fv")"\n"
+"\t"STUB_ASM_CODE("552")"\n"
+
+STUB_ASM_ENTRY("glUniform2i")"\n"
+"\t"STUB_ASM_CODE("553")"\n"
+
+STUB_ASM_ENTRY("glUniform2iv")"\n"
+"\t"STUB_ASM_CODE("554")"\n"
+
+STUB_ASM_ENTRY("glUniform3f")"\n"
+"\t"STUB_ASM_CODE("555")"\n"
+
+STUB_ASM_ENTRY("glUniform3fv")"\n"
+"\t"STUB_ASM_CODE("556")"\n"
+
+STUB_ASM_ENTRY("glUniform3i")"\n"
+"\t"STUB_ASM_CODE("557")"\n"
+
+STUB_ASM_ENTRY("glUniform3iv")"\n"
+"\t"STUB_ASM_CODE("558")"\n"
+
+STUB_ASM_ENTRY("glUniform4f")"\n"
+"\t"STUB_ASM_CODE("559")"\n"
+
+STUB_ASM_ENTRY("glUniform4fv")"\n"
+"\t"STUB_ASM_CODE("560")"\n"
+
+STUB_ASM_ENTRY("glUniform4i")"\n"
+"\t"STUB_ASM_CODE("561")"\n"
+
+STUB_ASM_ENTRY("glUniform4iv")"\n"
+"\t"STUB_ASM_CODE("562")"\n"
+
+STUB_ASM_ENTRY("glUniformMatrix2fv")"\n"
+"\t"STUB_ASM_CODE("563")"\n"
+
+STUB_ASM_ENTRY("glUniformMatrix3fv")"\n"
+"\t"STUB_ASM_CODE("564")"\n"
+
+STUB_ASM_ENTRY("glUniformMatrix4fv")"\n"
+"\t"STUB_ASM_CODE("565")"\n"
+
+STUB_ASM_ENTRY("glUseProgram")"\n"
+"\t"STUB_ASM_CODE("566")"\n"
+
+STUB_ASM_ENTRY("glValidateProgram")"\n"
+"\t"STUB_ASM_CODE("567")"\n"
+
+STUB_ASM_ENTRY("glBindAttribLocation")"\n"
+"\t"STUB_ASM_CODE("568")"\n"
+
+STUB_ASM_ENTRY("glGetActiveAttrib")"\n"
+"\t"STUB_ASM_CODE("569")"\n"
+
+STUB_ASM_ENTRY("glGetAttribLocation")"\n"
+"\t"STUB_ASM_CODE("570")"\n"
+
+STUB_ASM_ENTRY("glClearDepthf")"\n"
+"\t"STUB_ASM_CODE("605")"\n"
+
+STUB_ASM_ENTRY("glDepthRangef")"\n"
+"\t"STUB_ASM_CODE("606")"\n"
+
+STUB_ASM_ENTRY("glGetShaderPrecisionFormat")"\n"
+"\t"STUB_ASM_CODE("607")"\n"
+
+STUB_ASM_ENTRY("glReleaseShaderCompiler")"\n"
+"\t"STUB_ASM_CODE("608")"\n"
+
+STUB_ASM_ENTRY("glShaderBinary")"\n"
+"\t"STUB_ASM_CODE("609")"\n"
+
+STUB_ASM_ENTRY("glGetProgramBinaryOES")"\n"
+"\t"STUB_ASM_CODE("610")"\n"
+
+STUB_ASM_ENTRY("glProgramBinaryOES")"\n"
+"\t"STUB_ASM_CODE("611")"\n"
+
+STUB_ASM_ENTRY("glMultiDrawArraysEXT")"\n"
+"\t"STUB_ASM_CODE("659")"\n"
+
+STUB_ASM_ENTRY("glMultiDrawElementsEXT")"\n"
+"\t"STUB_ASM_CODE("660")"\n"
+
+STUB_ASM_ENTRY("glBlendFuncSeparate")"\n"
+"\t"STUB_ASM_CODE("667")"\n"
+
+STUB_ASM_ENTRY("glGetVertexAttribPointerv")"\n"
+"\t"STUB_ASM_CODE("727")"\n"
+
+STUB_ASM_ENTRY("glBlendEquationSeparate")"\n"
+"\t"STUB_ASM_CODE("857")"\n"
+
+STUB_ASM_ENTRY("glBindFramebuffer")"\n"
+"\t"STUB_ASM_CODE("858")"\n"
+
+STUB_ASM_ENTRY("glBindRenderbuffer")"\n"
+"\t"STUB_ASM_CODE("859")"\n"
+
+STUB_ASM_ENTRY("glCheckFramebufferStatus")"\n"
+"\t"STUB_ASM_CODE("860")"\n"
+
+STUB_ASM_ENTRY("glDeleteFramebuffers")"\n"
+"\t"STUB_ASM_CODE("861")"\n"
+
+STUB_ASM_ENTRY("glDeleteRenderbuffers")"\n"
+"\t"STUB_ASM_CODE("862")"\n"
+
+STUB_ASM_ENTRY("glFramebufferRenderbuffer")"\n"
+"\t"STUB_ASM_CODE("863")"\n"
+
+STUB_ASM_ENTRY("glFramebufferTexture2D")"\n"
+"\t"STUB_ASM_CODE("865")"\n"
+
+STUB_ASM_ENTRY("glFramebufferTexture3DOES")"\n"
+"\t"STUB_ASM_CODE("866")"\n"
+
+STUB_ASM_ENTRY("glGenFramebuffers")"\n"
+"\t"STUB_ASM_CODE("867")"\n"
+
+STUB_ASM_ENTRY("glGenRenderbuffers")"\n"
+"\t"STUB_ASM_CODE("868")"\n"
+
+STUB_ASM_ENTRY("glGenerateMipmap")"\n"
+"\t"STUB_ASM_CODE("869")"\n"
+
+STUB_ASM_ENTRY("glGetFramebufferAttachmentParameteriv")"\n"
+"\t"STUB_ASM_CODE("870")"\n"
+
+STUB_ASM_ENTRY("glGetRenderbufferParameteriv")"\n"
+"\t"STUB_ASM_CODE("871")"\n"
+
+STUB_ASM_ENTRY("glIsFramebuffer")"\n"
+"\t"STUB_ASM_CODE("872")"\n"
+
+STUB_ASM_ENTRY("glIsRenderbuffer")"\n"
+"\t"STUB_ASM_CODE("873")"\n"
+
+STUB_ASM_ENTRY("glRenderbufferStorage")"\n"
+"\t"STUB_ASM_CODE("874")"\n"
+
+STUB_ASM_ENTRY("glEGLImageTargetRenderbufferStorageOES")"\n"
+"\t"STUB_ASM_CODE("949")"\n"
+
+STUB_ASM_ENTRY("glEGLImageTargetTexture2DOES")"\n"
+"\t"STUB_ASM_CODE("950")"\n"
+
+);
+#undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN
+#endif /* MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN */
diff --git a/src/mapi/es2api/main/glapidispatch.h b/src/mapi/es2api/main/glapidispatch.h
new file mode 100644
index 0000000000..06a45974d7
--- /dev/null
+++ b/src/mapi/es2api/main/glapidispatch.h
@@ -0,0 +1,2392 @@
+/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
+
+/*
+ * (C) Copyright IBM Corporation 2005
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
+ * IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#if !defined( _GLAPI_DISPATCH_H_ )
+# define _GLAPI_DISPATCH_H_
+
+
+/* this file should not be included directly in mesa */
+
+/**
+ * \file glapidispatch.h
+ * Macros for handling GL dispatch tables.
+ *
+ * For each known GL function, there are 3 macros in this file. The first
+ * macro is named CALL_FuncName and is used to call that GL function using
+ * the specified dispatch table. The other 2 macros, called GET_FuncName
+ * can SET_FuncName, are used to get and set the dispatch pointer for the
+ * named function in the specified dispatch table.
+ */
+
+#define CALL_by_offset(disp, cast, offset, parameters) \
+ (*(cast (GET_by_offset(disp, offset)))) parameters
+#define GET_by_offset(disp, offset) \
+ (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL
+#define SET_by_offset(disp, offset, fn) \
+ do { \
+ if ( (offset) < 0 ) { \
+ /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\n", */ \
+ /* __func__, __LINE__, disp, offset, # fn); */ \
+ /* abort(); */ \
+ } \
+ else { \
+ ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \
+ } \
+ } while(0)
+
+/* total number of offsets below */
+#define _gloffset_COUNT 518
+
+#define _gloffset_NewList 0
+#define _gloffset_EndList 1
+#define _gloffset_CallList 2
+#define _gloffset_CallLists 3
+#define _gloffset_DeleteLists 4
+#define _gloffset_GenLists 5
+#define _gloffset_ListBase 6
+#define _gloffset_Begin 7
+#define _gloffset_Bitmap 8
+#define _gloffset_Color3b 9
+#define _gloffset_Color3bv 10
+#define _gloffset_Color3d 11
+#define _gloffset_Color3dv 12
+#define _gloffset_Color3f 13
+#define _gloffset_Color3fv 14
+#define _gloffset_Color3i 15
+#define _gloffset_Color3iv 16
+#define _gloffset_Color3s 17
+#define _gloffset_Color3sv 18
+#define _gloffset_Color3ub 19
+#define _gloffset_Color3ubv 20
+#define _gloffset_Color3ui 21
+#define _gloffset_Color3uiv 22
+#define _gloffset_Color3us 23
+#define _gloffset_Color3usv 24
+#define _gloffset_Color4b 25
+#define _gloffset_Color4bv 26
+#define _gloffset_Color4d 27
+#define _gloffset_Color4dv 28
+#define _gloffset_Color4f 29
+#define _gloffset_Color4fv 30
+#define _gloffset_Color4i 31
+#define _gloffset_Color4iv 32
+#define _gloffset_Color4s 33
+#define _gloffset_Color4sv 34
+#define _gloffset_Color4ub 35
+#define _gloffset_Color4ubv 36
+#define _gloffset_Color4ui 37
+#define _gloffset_Color4uiv 38
+#define _gloffset_Color4us 39
+#define _gloffset_Color4usv 40
+#define _gloffset_EdgeFlag 41
+#define _gloffset_EdgeFlagv 42
+#define _gloffset_End 43
+#define _gloffset_Indexd 44
+#define _gloffset_Indexdv 45
+#define _gloffset_Indexf 46
+#define _gloffset_Indexfv 47
+#define _gloffset_Indexi 48
+#define _gloffset_Indexiv 49
+#define _gloffset_Indexs 50
+#define _gloffset_Indexsv 51
+#define _gloffset_Normal3b 52
+#define _gloffset_Normal3bv 53
+#define _gloffset_Normal3d 54
+#define _gloffset_Normal3dv 55
+#define _gloffset_Normal3f 56
+#define _gloffset_Normal3fv 57
+#define _gloffset_Normal3i 58
+#define _gloffset_Normal3iv 59
+#define _gloffset_Normal3s 60
+#define _gloffset_Normal3sv 61
+#define _gloffset_RasterPos2d 62
+#define _gloffset_RasterPos2dv 63
+#define _gloffset_RasterPos2f 64
+#define _gloffset_RasterPos2fv 65
+#define _gloffset_RasterPos2i 66
+#define _gloffset_RasterPos2iv 67
+#define _gloffset_RasterPos2s 68
+#define _gloffset_RasterPos2sv 69
+#define _gloffset_RasterPos3d 70
+#define _gloffset_RasterPos3dv 71
+#define _gloffset_RasterPos3f 72
+#define _gloffset_RasterPos3fv 73
+#define _gloffset_RasterPos3i 74
+#define _gloffset_RasterPos3iv 75
+#define _gloffset_RasterPos3s 76
+#define _gloffset_RasterPos3sv 77
+#define _gloffset_RasterPos4d 78
+#define _gloffset_RasterPos4dv 79
+#define _gloffset_RasterPos4f 80
+#define _gloffset_RasterPos4fv 81
+#define _gloffset_RasterPos4i 82
+#define _gloffset_RasterPos4iv 83
+#define _gloffset_RasterPos4s 84
+#define _gloffset_RasterPos4sv 85
+#define _gloffset_Rectd 86
+#define _gloffset_Rectdv 87
+#define _gloffset_Rectf 88
+#define _gloffset_Rectfv 89
+#define _gloffset_Recti 90
+#define _gloffset_Rectiv 91
+#define _gloffset_Rects 92
+#define _gloffset_Rectsv 93
+#define _gloffset_TexCoord1d 94
+#define _gloffset_TexCoord1dv 95
+#define _gloffset_TexCoord1f 96
+#define _gloffset_TexCoord1fv 97
+#define _gloffset_TexCoord1i 98
+#define _gloffset_TexCoord1iv 99
+#define _gloffset_TexCoord1s 100
+#define _gloffset_TexCoord1sv 101
+#define _gloffset_TexCoord2d 102
+#define _gloffset_TexCoord2dv 103
+#define _gloffset_TexCoord2f 104
+#define _gloffset_TexCoord2fv 105
+#define _gloffset_TexCoord2i 106
+#define _gloffset_TexCoord2iv 107
+#define _gloffset_TexCoord2s 108
+#define _gloffset_TexCoord2sv 109
+#define _gloffset_TexCoord3d 110
+#define _gloffset_TexCoord3dv 111
+#define _gloffset_TexCoord3f 112
+#define _gloffset_TexCoord3fv 113
+#define _gloffset_TexCoord3i 114
+#define _gloffset_TexCoord3iv 115
+#define _gloffset_TexCoord3s 116
+#define _gloffset_TexCoord3sv 117
+#define _gloffset_TexCoord4d 118
+#define _gloffset_TexCoord4dv 119
+#define _gloffset_TexCoord4f 120
+#define _gloffset_TexCoord4fv 121
+#define _gloffset_TexCoord4i 122
+#define _gloffset_TexCoord4iv 123
+#define _gloffset_TexCoord4s 124
+#define _gloffset_TexCoord4sv 125
+#define _gloffset_Vertex2d 126
+#define _gloffset_Vertex2dv 127
+#define _gloffset_Vertex2f 128
+#define _gloffset_Vertex2fv 129
+#define _gloffset_Vertex2i 130
+#define _gloffset_Vertex2iv 131
+#define _gloffset_Vertex2s 132
+#define _gloffset_Vertex2sv 133
+#define _gloffset_Vertex3d 134
+#define _gloffset_Vertex3dv 135
+#define _gloffset_Vertex3f 136
+#define _gloffset_Vertex3fv 137
+#define _gloffset_Vertex3i 138
+#define _gloffset_Vertex3iv 139
+#define _gloffset_Vertex3s 140
+#define _gloffset_Vertex3sv 141
+#define _gloffset_Vertex4d 142
+#define _gloffset_Vertex4dv 143
+#define _gloffset_Vertex4f 144
+#define _gloffset_Vertex4fv 145
+#define _gloffset_Vertex4i 146
+#define _gloffset_Vertex4iv 147
+#define _gloffset_Vertex4s 148
+#define _gloffset_Vertex4sv 149
+#define _gloffset_ClipPlane 150
+#define _gloffset_ColorMaterial 151
+#define _gloffset_CullFace 152
+#define _gloffset_Fogf 153
+#define _gloffset_Fogfv 154
+#define _gloffset_Fogi 155
+#define _gloffset_Fogiv 156
+#define _gloffset_FrontFace 157
+#define _gloffset_Hint 158
+#define _gloffset_Lightf 159
+#define _gloffset_Lightfv 160
+#define _gloffset_Lighti 161
+#define _gloffset_Lightiv 162
+#define _gloffset_LightModelf 163
+#define _gloffset_LightModelfv 164
+#define _gloffset_LightModeli 165
+#define _gloffset_LightModeliv 166
+#define _gloffset_LineStipple 167
+#define _gloffset_LineWidth 168
+#define _gloffset_Materialf 169
+#define _gloffset_Materialfv 170
+#define _gloffset_Materiali 171
+#define _gloffset_Materialiv 172
+#define _gloffset_PointSize 173
+#define _gloffset_PolygonMode 174
+#define _gloffset_PolygonStipple 175
+#define _gloffset_Scissor 176
+#define _gloffset_ShadeModel 177
+#define _gloffset_TexParameterf 178
+#define _gloffset_TexParameterfv 179
+#define _gloffset_TexParameteri 180
+#define _gloffset_TexParameteriv 181
+#define _gloffset_TexImage1D 182
+#define _gloffset_TexImage2D 183
+#define _gloffset_TexEnvf 184
+#define _gloffset_TexEnvfv 185
+#define _gloffset_TexEnvi 186
+#define _gloffset_TexEnviv 187
+#define _gloffset_TexGend 188
+#define _gloffset_TexGendv 189
+#define _gloffset_TexGenf 190
+#define _gloffset_TexGenfv 191
+#define _gloffset_TexGeni 192
+#define _gloffset_TexGeniv 193
+#define _gloffset_FeedbackBuffer 194
+#define _gloffset_SelectBuffer 195
+#define _gloffset_RenderMode 196
+#define _gloffset_InitNames 197
+#define _gloffset_LoadName 198
+#define _gloffset_PassThrough 199
+#define _gloffset_PopName 200
+#define _gloffset_PushName 201
+#define _gloffset_DrawBuffer 202
+#define _gloffset_Clear 203
+#define _gloffset_ClearAccum 204
+#define _gloffset_ClearIndex 205
+#define _gloffset_ClearColor 206
+#define _gloffset_ClearStencil 207
+#define _gloffset_ClearDepth 208
+#define _gloffset_StencilMask 209
+#define _gloffset_ColorMask 210
+#define _gloffset_DepthMask 211
+#define _gloffset_IndexMask 212
+#define _gloffset_Accum 213
+#define _gloffset_Disable 214
+#define _gloffset_Enable 215
+#define _gloffset_Finish 216
+#define _gloffset_Flush 217
+#define _gloffset_PopAttrib 218
+#define _gloffset_PushAttrib 219
+#define _gloffset_Map1d 220
+#define _gloffset_Map1f 221
+#define _gloffset_Map2d 222
+#define _gloffset_Map2f 223
+#define _gloffset_MapGrid1d 224
+#define _gloffset_MapGrid1f 225
+#define _gloffset_MapGrid2d 226
+#define _gloffset_MapGrid2f 227
+#define _gloffset_EvalCoord1d 228
+#define _gloffset_EvalCoord1dv 229
+#define _gloffset_EvalCoord1f 230
+#define _gloffset_EvalCoord1fv 231
+#define _gloffset_EvalCoord2d 232
+#define _gloffset_EvalCoord2dv 233
+#define _gloffset_EvalCoord2f 234
+#define _gloffset_EvalCoord2fv 235
+#define _gloffset_EvalMesh1 236
+#define _gloffset_EvalPoint1 237
+#define _gloffset_EvalMesh2 238
+#define _gloffset_EvalPoint2 239
+#define _gloffset_AlphaFunc 240
+#define _gloffset_BlendFunc 241
+#define _gloffset_LogicOp 242
+#define _gloffset_StencilFunc 243
+#define _gloffset_StencilOp 244
+#define _gloffset_DepthFunc 245
+#define _gloffset_PixelZoom 246
+#define _gloffset_PixelTransferf 247
+#define _gloffset_PixelTransferi 248
+#define _gloffset_PixelStoref 249
+#define _gloffset_PixelStorei 250
+#define _gloffset_PixelMapfv 251
+#define _gloffset_PixelMapuiv 252
+#define _gloffset_PixelMapusv 253
+#define _gloffset_ReadBuffer 254
+#define _gloffset_CopyPixels 255
+#define _gloffset_ReadPixels 256
+#define _gloffset_DrawPixels 257
+#define _gloffset_GetBooleanv 258
+#define _gloffset_GetClipPlane 259
+#define _gloffset_GetDoublev 260
+#define _gloffset_GetError 261
+#define _gloffset_GetFloatv 262
+#define _gloffset_GetIntegerv 263
+#define _gloffset_GetLightfv 264
+#define _gloffset_GetLightiv 265
+#define _gloffset_GetMapdv 266
+#define _gloffset_GetMapfv 267
+#define _gloffset_GetMapiv 268
+#define _gloffset_GetMaterialfv 269
+#define _gloffset_GetMaterialiv 270
+#define _gloffset_GetPixelMapfv 271
+#define _gloffset_GetPixelMapuiv 272
+#define _gloffset_GetPixelMapusv 273
+#define _gloffset_GetPolygonStipple 274
+#define _gloffset_GetString 275
+#define _gloffset_GetTexEnvfv 276
+#define _gloffset_GetTexEnviv 277
+#define _gloffset_GetTexGendv 278
+#define _gloffset_GetTexGenfv 279
+#define _gloffset_GetTexGeniv 280
+#define _gloffset_GetTexImage 281
+#define _gloffset_GetTexParameterfv 282
+#define _gloffset_GetTexParameteriv 283
+#define _gloffset_GetTexLevelParameterfv 284
+#define _gloffset_GetTexLevelParameteriv 285
+#define _gloffset_IsEnabled 286
+#define _gloffset_IsList 287
+#define _gloffset_DepthRange 288
+#define _gloffset_Frustum 289
+#define _gloffset_LoadIdentity 290
+#define _gloffset_LoadMatrixf 291
+#define _gloffset_LoadMatrixd 292
+#define _gloffset_MatrixMode 293
+#define _gloffset_MultMatrixf 294
+#define _gloffset_MultMatrixd 295
+#define _gloffset_Ortho 296
+#define _gloffset_PopMatrix 297
+#define _gloffset_PushMatrix 298
+#define _gloffset_Rotated 299
+#define _gloffset_Rotatef 300
+#define _gloffset_Scaled 301
+#define _gloffset_Scalef 302
+#define _gloffset_Translated 303
+#define _gloffset_Translatef 304
+#define _gloffset_Viewport 305
+#define _gloffset_ArrayElement 306
+#define _gloffset_BindTexture 307
+#define _gloffset_ColorPointer 308
+#define _gloffset_DisableClientState 309
+#define _gloffset_DrawArrays 310
+#define _gloffset_DrawElements 311
+#define _gloffset_EdgeFlagPointer 312
+#define _gloffset_EnableClientState 313
+#define _gloffset_IndexPointer 314
+#define _gloffset_Indexub 315
+#define _gloffset_Indexubv 316
+#define _gloffset_InterleavedArrays 317
+#define _gloffset_NormalPointer 318
+#define _gloffset_PolygonOffset 319
+#define _gloffset_TexCoordPointer 320
+#define _gloffset_VertexPointer 321
+#define _gloffset_AreTexturesResident 322
+#define _gloffset_CopyTexImage1D 323
+#define _gloffset_CopyTexImage2D 324
+#define _gloffset_CopyTexSubImage1D 325
+#define _gloffset_CopyTexSubImage2D 326
+#define _gloffset_DeleteTextures 327
+#define _gloffset_GenTextures 328
+#define _gloffset_GetPointerv 329
+#define _gloffset_IsTexture 330
+#define _gloffset_PrioritizeTextures 331
+#define _gloffset_TexSubImage1D 332
+#define _gloffset_TexSubImage2D 333
+#define _gloffset_PopClientAttrib 334
+#define _gloffset_PushClientAttrib 335
+#define _gloffset_BlendColor 336
+#define _gloffset_BlendEquation 337
+#define _gloffset_DrawRangeElements 338
+#define _gloffset_ColorTable 339
+#define _gloffset_ColorTableParameterfv 340
+#define _gloffset_ColorTableParameteriv 341
+#define _gloffset_CopyColorTable 342
+#define _gloffset_GetColorTable 343
+#define _gloffset_GetColorTableParameterfv 344
+#define _gloffset_GetColorTableParameteriv 345
+#define _gloffset_ColorSubTable 346
+#define _gloffset_CopyColorSubTable 347
+#define _gloffset_ConvolutionFilter1D 348
+#define _gloffset_ConvolutionFilter2D 349
+#define _gloffset_ConvolutionParameterf 350
+#define _gloffset_ConvolutionParameterfv 351
+#define _gloffset_ConvolutionParameteri 352
+#define _gloffset_ConvolutionParameteriv 353
+#define _gloffset_CopyConvolutionFilter1D 354
+#define _gloffset_CopyConvolutionFilter2D 355
+#define _gloffset_GetConvolutionFilter 356
+#define _gloffset_GetConvolutionParameterfv 357
+#define _gloffset_GetConvolutionParameteriv 358
+#define _gloffset_GetSeparableFilter 359
+#define _gloffset_SeparableFilter2D 360
+#define _gloffset_GetHistogram 361
+#define _gloffset_GetHistogramParameterfv 362
+#define _gloffset_GetHistogramParameteriv 363
+#define _gloffset_GetMinmax 364
+#define _gloffset_GetMinmaxParameterfv 365
+#define _gloffset_GetMinmaxParameteriv 366
+#define _gloffset_Histogram 367
+#define _gloffset_Minmax 368
+#define _gloffset_ResetHistogram 369
+#define _gloffset_ResetMinmax 370
+#define _gloffset_TexImage3DOES 371
+#define _gloffset_TexSubImage3DOES 372
+#define _gloffset_CopyTexSubImage3DOES 373
+#define _gloffset_ActiveTexture 374
+#define _gloffset_ClientActiveTextureARB 375
+#define _gloffset_MultiTexCoord1dARB 376
+#define _gloffset_MultiTexCoord1dvARB 377
+#define _gloffset_MultiTexCoord1fARB 378
+#define _gloffset_MultiTexCoord1fvARB 379
+#define _gloffset_MultiTexCoord1iARB 380
+#define _gloffset_MultiTexCoord1ivARB 381
+#define _gloffset_MultiTexCoord1sARB 382
+#define _gloffset_MultiTexCoord1svARB 383
+#define _gloffset_MultiTexCoord2dARB 384
+#define _gloffset_MultiTexCoord2dvARB 385
+#define _gloffset_MultiTexCoord2fARB 386
+#define _gloffset_MultiTexCoord2fvARB 387
+#define _gloffset_MultiTexCoord2iARB 388
+#define _gloffset_MultiTexCoord2ivARB 389
+#define _gloffset_MultiTexCoord2sARB 390
+#define _gloffset_MultiTexCoord2svARB 391
+#define _gloffset_MultiTexCoord3dARB 392
+#define _gloffset_MultiTexCoord3dvARB 393
+#define _gloffset_MultiTexCoord3fARB 394
+#define _gloffset_MultiTexCoord3fvARB 395
+#define _gloffset_MultiTexCoord3iARB 396
+#define _gloffset_MultiTexCoord3ivARB 397
+#define _gloffset_MultiTexCoord3sARB 398
+#define _gloffset_MultiTexCoord3svARB 399
+#define _gloffset_MultiTexCoord4dARB 400
+#define _gloffset_MultiTexCoord4dvARB 401
+#define _gloffset_MultiTexCoord4fARB 402
+#define _gloffset_MultiTexCoord4fvARB 403
+#define _gloffset_MultiTexCoord4iARB 404
+#define _gloffset_MultiTexCoord4ivARB 405
+#define _gloffset_MultiTexCoord4sARB 406
+#define _gloffset_MultiTexCoord4svARB 407
+
+#if !defined(_GLAPI_USE_REMAP_TABLE)
+
+#define _gloffset_GetBufferPointervOES 408
+#define _gloffset_MapBufferOES 409
+#define _gloffset_UnmapBufferOES 410
+#define _gloffset_CompressedTexImage3DOES 411
+#define _gloffset_CompressedTexSubImage3DOES 412
+#define _gloffset_FramebufferTexture3DOES 413
+#define _gloffset_GetProgramBinaryOES 414
+#define _gloffset_ProgramBinaryOES 415
+#define _gloffset_MultiDrawArraysEXT 416
+#define _gloffset_MultiDrawElementsEXT 417
+#define _gloffset_BindVertexArrayAPPLE 418
+#define _gloffset_DeleteVertexArraysAPPLE 419
+#define _gloffset_GenVertexArraysAPPLE 420
+#define _gloffset_IsVertexArrayAPPLE 421
+#define _gloffset_EGLImageTargetRenderbufferStorageOES 422
+#define _gloffset_EGLImageTargetTexture2DOES 423
+#define _gloffset_CompressedTexImage2D 424
+#define _gloffset_CompressedTexSubImage2D 425
+#define _gloffset_SampleCoverage 426
+#define _gloffset_BindBuffer 427
+#define _gloffset_BufferData 428
+#define _gloffset_BufferSubData 429
+#define _gloffset_DeleteBuffers 430
+#define _gloffset_GenBuffers 431
+#define _gloffset_GetBufferParameteriv 432
+#define _gloffset_IsBuffer 433
+#define _gloffset_AttachShader 434
+#define _gloffset_BindAttribLocation 435
+#define _gloffset_BlendEquationSeparate 436
+#define _gloffset_CompileShader 437
+#define _gloffset_CreateProgram 438
+#define _gloffset_CreateShader 439
+#define _gloffset_DeleteProgram 440
+#define _gloffset_DeleteShader 441
+#define _gloffset_DetachShader 442
+#define _gloffset_DisableVertexAttribArray 443
+#define _gloffset_EnableVertexAttribArray 444
+#define _gloffset_GetActiveAttrib 445
+#define _gloffset_GetActiveUniform 446
+#define _gloffset_GetAttachedShaders 447
+#define _gloffset_GetAttribLocation 448
+#define _gloffset_GetProgramInfoLog 449
+#define _gloffset_GetProgramiv 450
+#define _gloffset_GetShaderInfoLog 451
+#define _gloffset_GetShaderSource 452
+#define _gloffset_GetShaderiv 453
+#define _gloffset_GetUniformLocation 454
+#define _gloffset_GetUniformfv 455
+#define _gloffset_GetUniformiv 456
+#define _gloffset_GetVertexAttribPointerv 457
+#define _gloffset_GetVertexAttribfv 458
+#define _gloffset_GetVertexAttribiv 459
+#define _gloffset_IsProgram 460
+#define _gloffset_IsShader 461
+#define _gloffset_LinkProgram 462
+#define _gloffset_ShaderSource 463
+#define _gloffset_StencilFuncSeparate 464
+#define _gloffset_StencilMaskSeparate 465
+#define _gloffset_StencilOpSeparate 466
+#define _gloffset_Uniform1f 467
+#define _gloffset_Uniform1fv 468
+#define _gloffset_Uniform1i 469
+#define _gloffset_Uniform1iv 470
+#define _gloffset_Uniform2f 471
+#define _gloffset_Uniform2fv 472
+#define _gloffset_Uniform2i 473
+#define _gloffset_Uniform2iv 474
+#define _gloffset_Uniform3f 475
+#define _gloffset_Uniform3fv 476
+#define _gloffset_Uniform3i 477
+#define _gloffset_Uniform3iv 478
+#define _gloffset_Uniform4f 479
+#define _gloffset_Uniform4fv 480
+#define _gloffset_Uniform4i 481
+#define _gloffset_Uniform4iv 482
+#define _gloffset_UniformMatrix2fv 483
+#define _gloffset_UniformMatrix3fv 484
+#define _gloffset_UniformMatrix4fv 485
+#define _gloffset_UseProgram 486
+#define _gloffset_ValidateProgram 487
+#define _gloffset_VertexAttrib1f 488
+#define _gloffset_VertexAttrib1fv 489
+#define _gloffset_VertexAttrib2f 490
+#define _gloffset_VertexAttrib2fv 491
+#define _gloffset_VertexAttrib3f 492
+#define _gloffset_VertexAttrib3fv 493
+#define _gloffset_VertexAttrib4f 494
+#define _gloffset_VertexAttrib4fv 495
+#define _gloffset_VertexAttribPointer 496
+#define _gloffset_BlendFuncSeparate 497
+#define _gloffset_BindFramebuffer 498
+#define _gloffset_BindRenderbuffer 499
+#define _gloffset_CheckFramebufferStatus 500
+#define _gloffset_ClearDepthf 501
+#define _gloffset_DeleteFramebuffers 502
+#define _gloffset_DeleteRenderbuffers 503
+#define _gloffset_DepthRangef 504
+#define _gloffset_FramebufferRenderbuffer 505
+#define _gloffset_FramebufferTexture2D 506
+#define _gloffset_GenFramebuffers 507
+#define _gloffset_GenRenderbuffers 508
+#define _gloffset_GenerateMipmap 509
+#define _gloffset_GetFramebufferAttachmentParameteriv 510
+#define _gloffset_GetRenderbufferParameteriv 511
+#define _gloffset_GetShaderPrecisionFormat 512
+#define _gloffset_IsFramebuffer 513
+#define _gloffset_IsRenderbuffer 514
+#define _gloffset_ReleaseShaderCompiler 515
+#define _gloffset_RenderbufferStorage 516
+#define _gloffset_ShaderBinary 517
+
+#else /* !_GLAPI_USE_REMAP_TABLE */
+
+#define driDispatchRemapTable_size 110
+extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
+
+#define GetBufferPointervOES_remap_index 0
+#define MapBufferOES_remap_index 1
+#define UnmapBufferOES_remap_index 2
+#define CompressedTexImage3DOES_remap_index 3
+#define CompressedTexSubImage3DOES_remap_index 4
+#define FramebufferTexture3DOES_remap_index 5
+#define GetProgramBinaryOES_remap_index 6
+#define ProgramBinaryOES_remap_index 7
+#define MultiDrawArraysEXT_remap_index 8
+#define MultiDrawElementsEXT_remap_index 9
+#define BindVertexArrayAPPLE_remap_index 10
+#define DeleteVertexArraysAPPLE_remap_index 11
+#define GenVertexArraysAPPLE_remap_index 12
+#define IsVertexArrayAPPLE_remap_index 13
+#define EGLImageTargetRenderbufferStorageOES_remap_index 14
+#define EGLImageTargetTexture2DOES_remap_index 15
+#define CompressedTexImage2D_remap_index 16
+#define CompressedTexSubImage2D_remap_index 17
+#define SampleCoverage_remap_index 18
+#define BindBuffer_remap_index 19
+#define BufferData_remap_index 20
+#define BufferSubData_remap_index 21
+#define DeleteBuffers_remap_index 22
+#define GenBuffers_remap_index 23
+#define GetBufferParameteriv_remap_index 24
+#define IsBuffer_remap_index 25
+#define AttachShader_remap_index 26
+#define BindAttribLocation_remap_index 27
+#define BlendEquationSeparate_remap_index 28
+#define CompileShader_remap_index 29
+#define CreateProgram_remap_index 30
+#define CreateShader_remap_index 31
+#define DeleteProgram_remap_index 32
+#define DeleteShader_remap_index 33
+#define DetachShader_remap_index 34
+#define DisableVertexAttribArray_remap_index 35
+#define EnableVertexAttribArray_remap_index 36
+#define GetActiveAttrib_remap_index 37
+#define GetActiveUniform_remap_index 38
+#define GetAttachedShaders_remap_index 39
+#define GetAttribLocation_remap_index 40
+#define GetProgramInfoLog_remap_index 41
+#define GetProgramiv_remap_index 42
+#define GetShaderInfoLog_remap_index 43
+#define GetShaderSource_remap_index 44
+#define GetShaderiv_remap_index 45
+#define GetUniformLocation_remap_index 46
+#define GetUniformfv_remap_index 47
+#define GetUniformiv_remap_index 48
+#define GetVertexAttribPointerv_remap_index 49
+#define GetVertexAttribfv_remap_index 50
+#define GetVertexAttribiv_remap_index 51
+#define IsProgram_remap_index 52
+#define IsShader_remap_index 53
+#define LinkProgram_remap_index 54
+#define ShaderSource_remap_index 55
+#define StencilFuncSeparate_remap_index 56
+#define StencilMaskSeparate_remap_index 57
+#define StencilOpSeparate_remap_index 58
+#define Uniform1f_remap_index 59
+#define Uniform1fv_remap_index 60
+#define Uniform1i_remap_index 61
+#define Uniform1iv_remap_index 62
+#define Uniform2f_remap_index 63
+#define Uniform2fv_remap_index 64
+#define Uniform2i_remap_index 65
+#define Uniform2iv_remap_index 66
+#define Uniform3f_remap_index 67
+#define Uniform3fv_remap_index 68
+#define Uniform3i_remap_index 69
+#define Uniform3iv_remap_index 70
+#define Uniform4f_remap_index 71
+#define Uniform4fv_remap_index 72
+#define Uniform4i_remap_index 73
+#define Uniform4iv_remap_index 74
+#define UniformMatrix2fv_remap_index 75
+#define UniformMatrix3fv_remap_index 76
+#define UniformMatrix4fv_remap_index 77
+#define UseProgram_remap_index 78
+#define ValidateProgram_remap_index 79
+#define VertexAttrib1f_remap_index 80
+#define VertexAttrib1fv_remap_index 81
+#define VertexAttrib2f_remap_index 82
+#define VertexAttrib2fv_remap_index 83
+#define VertexAttrib3f_remap_index 84
+#define VertexAttrib3fv_remap_index 85
+#define VertexAttrib4f_remap_index 86
+#define VertexAttrib4fv_remap_index 87
+#define VertexAttribPointer_remap_index 88
+#define BlendFuncSeparate_remap_index 89
+#define BindFramebuffer_remap_index 90
+#define BindRenderbuffer_remap_index 91
+#define CheckFramebufferStatus_remap_index 92
+#define ClearDepthf_remap_index 93
+#define DeleteFramebuffers_remap_index 94
+#define DeleteRenderbuffers_remap_index 95
+#define DepthRangef_remap_index 96
+#define FramebufferRenderbuffer_remap_index 97
+#define FramebufferTexture2D_remap_index 98
+#define GenFramebuffers_remap_index 99
+#define GenRenderbuffers_remap_index 100
+#define GenerateMipmap_remap_index 101
+#define GetFramebufferAttachmentParameteriv_remap_index 102
+#define GetRenderbufferParameteriv_remap_index 103
+#define GetShaderPrecisionFormat_remap_index 104
+#define IsFramebuffer_remap_index 105
+#define IsRenderbuffer_remap_index 106
+#define ReleaseShaderCompiler_remap_index 107
+#define RenderbufferStorage_remap_index 108
+#define ShaderBinary_remap_index 109
+
+#define _gloffset_GetBufferPointervOES driDispatchRemapTable[GetBufferPointervOES_remap_index]
+#define _gloffset_MapBufferOES driDispatchRemapTable[MapBufferOES_remap_index]
+#define _gloffset_UnmapBufferOES driDispatchRemapTable[UnmapBufferOES_remap_index]
+#define _gloffset_CompressedTexImage3DOES driDispatchRemapTable[CompressedTexImage3DOES_remap_index]
+#define _gloffset_CompressedTexSubImage3DOES driDispatchRemapTable[CompressedTexSubImage3DOES_remap_index]
+#define _gloffset_FramebufferTexture3DOES driDispatchRemapTable[FramebufferTexture3DOES_remap_index]
+#define _gloffset_GetProgramBinaryOES driDispatchRemapTable[GetProgramBinaryOES_remap_index]
+#define _gloffset_ProgramBinaryOES driDispatchRemapTable[ProgramBinaryOES_remap_index]
+#define _gloffset_MultiDrawArraysEXT driDispatchRemapTable[MultiDrawArraysEXT_remap_index]
+#define _gloffset_MultiDrawElementsEXT driDispatchRemapTable[MultiDrawElementsEXT_remap_index]
+#define _gloffset_BindVertexArrayAPPLE driDispatchRemapTable[BindVertexArrayAPPLE_remap_index]
+#define _gloffset_DeleteVertexArraysAPPLE driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index]
+#define _gloffset_GenVertexArraysAPPLE driDispatchRemapTable[GenVertexArraysAPPLE_remap_index]
+#define _gloffset_IsVertexArrayAPPLE driDispatchRemapTable[IsVertexArrayAPPLE_remap_index]
+#define _gloffset_EGLImageTargetRenderbufferStorageOES driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index]
+#define _gloffset_EGLImageTargetTexture2DOES driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index]
+#define _gloffset_CompressedTexImage2D driDispatchRemapTable[CompressedTexImage2D_remap_index]
+#define _gloffset_CompressedTexSubImage2D driDispatchRemapTable[CompressedTexSubImage2D_remap_index]
+#define _gloffset_SampleCoverage driDispatchRemapTable[SampleCoverage_remap_index]
+#define _gloffset_BindBuffer driDispatchRemapTable[BindBuffer_remap_index]
+#define _gloffset_BufferData driDispatchRemapTable[BufferData_remap_index]
+#define _gloffset_BufferSubData driDispatchRemapTable[BufferSubData_remap_index]
+#define _gloffset_DeleteBuffers driDispatchRemapTable[DeleteBuffers_remap_index]
+#define _gloffset_GenBuffers driDispatchRemapTable[GenBuffers_remap_index]
+#define _gloffset_GetBufferParameteriv driDispatchRemapTable[GetBufferParameteriv_remap_index]
+#define _gloffset_IsBuffer driDispatchRemapTable[IsBuffer_remap_index]
+#define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index]
+#define _gloffset_BindAttribLocation driDispatchRemapTable[BindAttribLocation_remap_index]
+#define _gloffset_BlendEquationSeparate driDispatchRemapTable[BlendEquationSeparate_remap_index]
+#define _gloffset_CompileShader driDispatchRemapTable[CompileShader_remap_index]
+#define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index]
+#define _gloffset_CreateShader driDispatchRemapTable[CreateShader_remap_index]
+#define _gloffset_DeleteProgram driDispatchRemapTable[DeleteProgram_remap_index]
+#define _gloffset_DeleteShader driDispatchRemapTable[DeleteShader_remap_index]
+#define _gloffset_DetachShader driDispatchRemapTable[DetachShader_remap_index]
+#define _gloffset_DisableVertexAttribArray driDispatchRemapTable[DisableVertexAttribArray_remap_index]
+#define _gloffset_EnableVertexAttribArray driDispatchRemapTable[EnableVertexAttribArray_remap_index]
+#define _gloffset_GetActiveAttrib driDispatchRemapTable[GetActiveAttrib_remap_index]
+#define _gloffset_GetActiveUniform driDispatchRemapTable[GetActiveUniform_remap_index]
+#define _gloffset_GetAttachedShaders driDispatchRemapTable[GetAttachedShaders_remap_index]
+#define _gloffset_GetAttribLocation driDispatchRemapTable[GetAttribLocation_remap_index]
+#define _gloffset_GetProgramInfoLog driDispatchRemapTable[GetProgramInfoLog_remap_index]
+#define _gloffset_GetProgramiv driDispatchRemapTable[GetProgramiv_remap_index]
+#define _gloffset_GetShaderInfoLog driDispatchRemapTable[GetShaderInfoLog_remap_index]
+#define _gloffset_GetShaderSource driDispatchRemapTable[GetShaderSource_remap_index]
+#define _gloffset_GetShaderiv driDispatchRemapTable[GetShaderiv_remap_index]
+#define _gloffset_GetUniformLocation driDispatchRemapTable[GetUniformLocation_remap_index]
+#define _gloffset_GetUniformfv driDispatchRemapTable[GetUniformfv_remap_index]
+#define _gloffset_GetUniformiv driDispatchRemapTable[GetUniformiv_remap_index]
+#define _gloffset_GetVertexAttribPointerv driDispatchRemapTable[GetVertexAttribPointerv_remap_index]
+#define _gloffset_GetVertexAttribfv driDispatchRemapTable[GetVertexAttribfv_remap_index]
+#define _gloffset_GetVertexAttribiv driDispatchRemapTable[GetVertexAttribiv_remap_index]
+#define _gloffset_IsProgram driDispatchRemapTable[IsProgram_remap_index]
+#define _gloffset_IsShader driDispatchRemapTable[IsShader_remap_index]
+#define _gloffset_LinkProgram driDispatchRemapTable[LinkProgram_remap_index]
+#define _gloffset_ShaderSource driDispatchRemapTable[ShaderSource_remap_index]
+#define _gloffset_StencilFuncSeparate driDispatchRemapTable[StencilFuncSeparate_remap_index]
+#define _gloffset_StencilMaskSeparate driDispatchRemapTable[StencilMaskSeparate_remap_index]
+#define _gloffset_StencilOpSeparate driDispatchRemapTable[StencilOpSeparate_remap_index]
+#define _gloffset_Uniform1f driDispatchRemapTable[Uniform1f_remap_index]
+#define _gloffset_Uniform1fv driDispatchRemapTable[Uniform1fv_remap_index]
+#define _gloffset_Uniform1i driDispatchRemapTable[Uniform1i_remap_index]
+#define _gloffset_Uniform1iv driDispatchRemapTable[Uniform1iv_remap_index]
+#define _gloffset_Uniform2f driDispatchRemapTable[Uniform2f_remap_index]
+#define _gloffset_Uniform2fv driDispatchRemapTable[Uniform2fv_remap_index]
+#define _gloffset_Uniform2i driDispatchRemapTable[Uniform2i_remap_index]
+#define _gloffset_Uniform2iv driDispatchRemapTable[Uniform2iv_remap_index]
+#define _gloffset_Uniform3f driDispatchRemapTable[Uniform3f_remap_index]
+#define _gloffset_Uniform3fv driDispatchRemapTable[Uniform3fv_remap_index]
+#define _gloffset_Uniform3i driDispatchRemapTable[Uniform3i_remap_index]
+#define _gloffset_Uniform3iv driDispatchRemapTable[Uniform3iv_remap_index]
+#define _gloffset_Uniform4f driDispatchRemapTable[Uniform4f_remap_index]
+#define _gloffset_Uniform4fv driDispatchRemapTable[Uniform4fv_remap_index]
+#define _gloffset_Uniform4i driDispatchRemapTable[Uniform4i_remap_index]
+#define _gloffset_Uniform4iv driDispatchRemapTable[Uniform4iv_remap_index]
+#define _gloffset_UniformMatrix2fv driDispatchRemapTable[UniformMatrix2fv_remap_index]
+#define _gloffset_UniformMatrix3fv driDispatchRemapTable[UniformMatrix3fv_remap_index]
+#define _gloffset_UniformMatrix4fv driDispatchRemapTable[UniformMatrix4fv_remap_index]
+#define _gloffset_UseProgram driDispatchRemapTable[UseProgram_remap_index]
+#define _gloffset_ValidateProgram driDispatchRemapTable[ValidateProgram_remap_index]
+#define _gloffset_VertexAttrib1f driDispatchRemapTable[VertexAttrib1f_remap_index]
+#define _gloffset_VertexAttrib1fv driDispatchRemapTable[VertexAttrib1fv_remap_index]
+#define _gloffset_VertexAttrib2f driDispatchRemapTable[VertexAttrib2f_remap_index]
+#define _gloffset_VertexAttrib2fv driDispatchRemapTable[VertexAttrib2fv_remap_index]
+#define _gloffset_VertexAttrib3f driDispatchRemapTable[VertexAttrib3f_remap_index]
+#define _gloffset_VertexAttrib3fv driDispatchRemapTable[VertexAttrib3fv_remap_index]
+#define _gloffset_VertexAttrib4f driDispatchRemapTable[VertexAttrib4f_remap_index]
+#define _gloffset_VertexAttrib4fv driDispatchRemapTable[VertexAttrib4fv_remap_index]
+#define _gloffset_VertexAttribPointer driDispatchRemapTable[VertexAttribPointer_remap_index]
+#define _gloffset_BlendFuncSeparate driDispatchRemapTable[BlendFuncSeparate_remap_index]
+#define _gloffset_BindFramebuffer driDispatchRemapTable[BindFramebuffer_remap_index]
+#define _gloffset_BindRenderbuffer driDispatchRemapTable[BindRenderbuffer_remap_index]
+#define _gloffset_CheckFramebufferStatus driDispatchRemapTable[CheckFramebufferStatus_remap_index]
+#define _gloffset_ClearDepthf driDispatchRemapTable[ClearDepthf_remap_index]
+#define _gloffset_DeleteFramebuffers driDispatchRemapTable[DeleteFramebuffers_remap_index]
+#define _gloffset_DeleteRenderbuffers driDispatchRemapTable[DeleteRenderbuffers_remap_index]
+#define _gloffset_DepthRangef driDispatchRemapTable[DepthRangef_remap_index]
+#define _gloffset_FramebufferRenderbuffer driDispatchRemapTable[FramebufferRenderbuffer_remap_index]
+#define _gloffset_FramebufferTexture2D driDispatchRemapTable[FramebufferTexture2D_remap_index]
+#define _gloffset_GenFramebuffers driDispatchRemapTable[GenFramebuffers_remap_index]
+#define _gloffset_GenRenderbuffers driDispatchRemapTable[GenRenderbuffers_remap_index]
+#define _gloffset_GenerateMipmap driDispatchRemapTable[GenerateMipmap_remap_index]
+#define _gloffset_GetFramebufferAttachmentParameteriv driDispatchRemapTable[GetFramebufferAttachmentParameteriv_remap_index]
+#define _gloffset_GetRenderbufferParameteriv driDispatchRemapTable[GetRenderbufferParameteriv_remap_index]
+#define _gloffset_GetShaderPrecisionFormat driDispatchRemapTable[GetShaderPrecisionFormat_remap_index]
+#define _gloffset_IsFramebuffer driDispatchRemapTable[IsFramebuffer_remap_index]
+#define _gloffset_IsRenderbuffer driDispatchRemapTable[IsRenderbuffer_remap_index]
+#define _gloffset_ReleaseShaderCompiler driDispatchRemapTable[ReleaseShaderCompiler_remap_index]
+#define _gloffset_RenderbufferStorage driDispatchRemapTable[RenderbufferStorage_remap_index]
+#define _gloffset_ShaderBinary driDispatchRemapTable[ShaderBinary_remap_index]
+
+#endif /* _GLAPI_USE_REMAP_TABLE */
+
+#define CALL_NewList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), _gloffset_NewList, parameters)
+#define GET_NewList(disp) GET_by_offset(disp, _gloffset_NewList)
+#define SET_NewList(disp, fn) SET_by_offset(disp, _gloffset_NewList, fn)
+#define CALL_EndList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_EndList, parameters)
+#define GET_EndList(disp) GET_by_offset(disp, _gloffset_EndList)
+#define SET_EndList(disp, fn) SET_by_offset(disp, _gloffset_EndList, fn)
+#define CALL_CallList(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_CallList, parameters)
+#define GET_CallList(disp) GET_by_offset(disp, _gloffset_CallList)
+#define SET_CallList(disp, fn) SET_by_offset(disp, _gloffset_CallList, fn)
+#define CALL_CallLists(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLenum, const GLvoid *)), _gloffset_CallLists, parameters)
+#define GET_CallLists(disp) GET_by_offset(disp, _gloffset_CallLists)
+#define SET_CallLists(disp, fn) SET_by_offset(disp, _gloffset_CallLists, fn)
+#define CALL_DeleteLists(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei)), _gloffset_DeleteLists, parameters)
+#define GET_DeleteLists(disp) GET_by_offset(disp, _gloffset_DeleteLists)
+#define SET_DeleteLists(disp, fn) SET_by_offset(disp, _gloffset_DeleteLists, fn)
+#define CALL_GenLists(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLsizei)), _gloffset_GenLists, parameters)
+#define GET_GenLists(disp) GET_by_offset(disp, _gloffset_GenLists)
+#define SET_GenLists(disp, fn) SET_by_offset(disp, _gloffset_GenLists, fn)
+#define CALL_ListBase(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_ListBase, parameters)
+#define GET_ListBase(disp) GET_by_offset(disp, _gloffset_ListBase)
+#define SET_ListBase(disp, fn) SET_by_offset(disp, _gloffset_ListBase, fn)
+#define CALL_Begin(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Begin, parameters)
+#define GET_Begin(disp) GET_by_offset(disp, _gloffset_Begin)
+#define SET_Begin(disp, fn) SET_by_offset(disp, _gloffset_Begin, fn)
+#define CALL_Bitmap(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, GLfloat, GLfloat, GLfloat, GLfloat, const GLubyte *)), _gloffset_Bitmap, parameters)
+#define GET_Bitmap(disp) GET_by_offset(disp, _gloffset_Bitmap)
+#define SET_Bitmap(disp, fn) SET_by_offset(disp, _gloffset_Bitmap, fn)
+#define CALL_Color3b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), _gloffset_Color3b, parameters)
+#define GET_Color3b(disp) GET_by_offset(disp, _gloffset_Color3b)
+#define SET_Color3b(disp, fn) SET_by_offset(disp, _gloffset_Color3b, fn)
+#define CALL_Color3bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Color3bv, parameters)
+#define GET_Color3bv(disp) GET_by_offset(disp, _gloffset_Color3bv)
+#define SET_Color3bv(disp, fn) SET_by_offset(disp, _gloffset_Color3bv, fn)
+#define CALL_Color3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Color3d, parameters)
+#define GET_Color3d(disp) GET_by_offset(disp, _gloffset_Color3d)
+#define SET_Color3d(disp, fn) SET_by_offset(disp, _gloffset_Color3d, fn)
+#define CALL_Color3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Color3dv, parameters)
+#define GET_Color3dv(disp) GET_by_offset(disp, _gloffset_Color3dv)
+#define SET_Color3dv(disp, fn) SET_by_offset(disp, _gloffset_Color3dv, fn)
+#define CALL_Color3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Color3f, parameters)
+#define GET_Color3f(disp) GET_by_offset(disp, _gloffset_Color3f)
+#define SET_Color3f(disp, fn) SET_by_offset(disp, _gloffset_Color3f, fn)
+#define CALL_Color3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Color3fv, parameters)
+#define GET_Color3fv(disp) GET_by_offset(disp, _gloffset_Color3fv)
+#define SET_Color3fv(disp, fn) SET_by_offset(disp, _gloffset_Color3fv, fn)
+#define CALL_Color3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Color3i, parameters)
+#define GET_Color3i(disp) GET_by_offset(disp, _gloffset_Color3i)
+#define SET_Color3i(disp, fn) SET_by_offset(disp, _gloffset_Color3i, fn)
+#define CALL_Color3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Color3iv, parameters)
+#define GET_Color3iv(disp) GET_by_offset(disp, _gloffset_Color3iv)
+#define SET_Color3iv(disp, fn) SET_by_offset(disp, _gloffset_Color3iv, fn)
+#define CALL_Color3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Color3s, parameters)
+#define GET_Color3s(disp) GET_by_offset(disp, _gloffset_Color3s)
+#define SET_Color3s(disp, fn) SET_by_offset(disp, _gloffset_Color3s, fn)
+#define CALL_Color3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Color3sv, parameters)
+#define GET_Color3sv(disp) GET_by_offset(disp, _gloffset_Color3sv)
+#define SET_Color3sv(disp, fn) SET_by_offset(disp, _gloffset_Color3sv, fn)
+#define CALL_Color3ub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte)), _gloffset_Color3ub, parameters)
+#define GET_Color3ub(disp) GET_by_offset(disp, _gloffset_Color3ub)
+#define SET_Color3ub(disp, fn) SET_by_offset(disp, _gloffset_Color3ub, fn)
+#define CALL_Color3ubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Color3ubv, parameters)
+#define GET_Color3ubv(disp) GET_by_offset(disp, _gloffset_Color3ubv)
+#define SET_Color3ubv(disp, fn) SET_by_offset(disp, _gloffset_Color3ubv, fn)
+#define CALL_Color3ui(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint)), _gloffset_Color3ui, parameters)
+#define GET_Color3ui(disp) GET_by_offset(disp, _gloffset_Color3ui)
+#define SET_Color3ui(disp, fn) SET_by_offset(disp, _gloffset_Color3ui, fn)
+#define CALL_Color3uiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), _gloffset_Color3uiv, parameters)
+#define GET_Color3uiv(disp) GET_by_offset(disp, _gloffset_Color3uiv)
+#define SET_Color3uiv(disp, fn) SET_by_offset(disp, _gloffset_Color3uiv, fn)
+#define CALL_Color3us(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort)), _gloffset_Color3us, parameters)
+#define GET_Color3us(disp) GET_by_offset(disp, _gloffset_Color3us)
+#define SET_Color3us(disp, fn) SET_by_offset(disp, _gloffset_Color3us, fn)
+#define CALL_Color3usv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), _gloffset_Color3usv, parameters)
+#define GET_Color3usv(disp) GET_by_offset(disp, _gloffset_Color3usv)
+#define SET_Color3usv(disp, fn) SET_by_offset(disp, _gloffset_Color3usv, fn)
+#define CALL_Color4b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte, GLbyte)), _gloffset_Color4b, parameters)
+#define GET_Color4b(disp) GET_by_offset(disp, _gloffset_Color4b)
+#define SET_Color4b(disp, fn) SET_by_offset(disp, _gloffset_Color4b, fn)
+#define CALL_Color4bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Color4bv, parameters)
+#define GET_Color4bv(disp) GET_by_offset(disp, _gloffset_Color4bv)
+#define SET_Color4bv(disp, fn) SET_by_offset(disp, _gloffset_Color4bv, fn)
+#define CALL_Color4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Color4d, parameters)
+#define GET_Color4d(disp) GET_by_offset(disp, _gloffset_Color4d)
+#define SET_Color4d(disp, fn) SET_by_offset(disp, _gloffset_Color4d, fn)
+#define CALL_Color4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Color4dv, parameters)
+#define GET_Color4dv(disp) GET_by_offset(disp, _gloffset_Color4dv)
+#define SET_Color4dv(disp, fn) SET_by_offset(disp, _gloffset_Color4dv, fn)
+#define CALL_Color4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Color4f, parameters)
+#define GET_Color4f(disp) GET_by_offset(disp, _gloffset_Color4f)
+#define SET_Color4f(disp, fn) SET_by_offset(disp, _gloffset_Color4f, fn)
+#define CALL_Color4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Color4fv, parameters)
+#define GET_Color4fv(disp) GET_by_offset(disp, _gloffset_Color4fv)
+#define SET_Color4fv(disp, fn) SET_by_offset(disp, _gloffset_Color4fv, fn)
+#define CALL_Color4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Color4i, parameters)
+#define GET_Color4i(disp) GET_by_offset(disp, _gloffset_Color4i)
+#define SET_Color4i(disp, fn) SET_by_offset(disp, _gloffset_Color4i, fn)
+#define CALL_Color4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Color4iv, parameters)
+#define GET_Color4iv(disp) GET_by_offset(disp, _gloffset_Color4iv)
+#define SET_Color4iv(disp, fn) SET_by_offset(disp, _gloffset_Color4iv, fn)
+#define CALL_Color4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Color4s, parameters)
+#define GET_Color4s(disp) GET_by_offset(disp, _gloffset_Color4s)
+#define SET_Color4s(disp, fn) SET_by_offset(disp, _gloffset_Color4s, fn)
+#define CALL_Color4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Color4sv, parameters)
+#define GET_Color4sv(disp) GET_by_offset(disp, _gloffset_Color4sv)
+#define SET_Color4sv(disp, fn) SET_by_offset(disp, _gloffset_Color4sv, fn)
+#define CALL_Color4ub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte, GLubyte)), _gloffset_Color4ub, parameters)
+#define GET_Color4ub(disp) GET_by_offset(disp, _gloffset_Color4ub)
+#define SET_Color4ub(disp, fn) SET_by_offset(disp, _gloffset_Color4ub, fn)
+#define CALL_Color4ubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Color4ubv, parameters)
+#define GET_Color4ubv(disp) GET_by_offset(disp, _gloffset_Color4ubv)
+#define SET_Color4ubv(disp, fn) SET_by_offset(disp, _gloffset_Color4ubv, fn)
+#define CALL_Color4ui(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint, GLuint)), _gloffset_Color4ui, parameters)
+#define GET_Color4ui(disp) GET_by_offset(disp, _gloffset_Color4ui)
+#define SET_Color4ui(disp, fn) SET_by_offset(disp, _gloffset_Color4ui, fn)
+#define CALL_Color4uiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), _gloffset_Color4uiv, parameters)
+#define GET_Color4uiv(disp) GET_by_offset(disp, _gloffset_Color4uiv)
+#define SET_Color4uiv(disp, fn) SET_by_offset(disp, _gloffset_Color4uiv, fn)
+#define CALL_Color4us(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort, GLushort)), _gloffset_Color4us, parameters)
+#define GET_Color4us(disp) GET_by_offset(disp, _gloffset_Color4us)
+#define SET_Color4us(disp, fn) SET_by_offset(disp, _gloffset_Color4us, fn)
+#define CALL_Color4usv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), _gloffset_Color4usv, parameters)
+#define GET_Color4usv(disp) GET_by_offset(disp, _gloffset_Color4usv)
+#define SET_Color4usv(disp, fn) SET_by_offset(disp, _gloffset_Color4usv, fn)
+#define CALL_EdgeFlag(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean)), _gloffset_EdgeFlag, parameters)
+#define GET_EdgeFlag(disp) GET_by_offset(disp, _gloffset_EdgeFlag)
+#define SET_EdgeFlag(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlag, fn)
+#define CALL_EdgeFlagv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLboolean *)), _gloffset_EdgeFlagv, parameters)
+#define GET_EdgeFlagv(disp) GET_by_offset(disp, _gloffset_EdgeFlagv)
+#define SET_EdgeFlagv(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlagv, fn)
+#define CALL_End(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_End, parameters)
+#define GET_End(disp) GET_by_offset(disp, _gloffset_End)
+#define SET_End(disp, fn) SET_by_offset(disp, _gloffset_End, fn)
+#define CALL_Indexd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_Indexd, parameters)
+#define GET_Indexd(disp) GET_by_offset(disp, _gloffset_Indexd)
+#define SET_Indexd(disp, fn) SET_by_offset(disp, _gloffset_Indexd, fn)
+#define CALL_Indexdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Indexdv, parameters)
+#define GET_Indexdv(disp) GET_by_offset(disp, _gloffset_Indexdv)
+#define SET_Indexdv(disp, fn) SET_by_offset(disp, _gloffset_Indexdv, fn)
+#define CALL_Indexf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_Indexf, parameters)
+#define GET_Indexf(disp) GET_by_offset(disp, _gloffset_Indexf)
+#define SET_Indexf(disp, fn) SET_by_offset(disp, _gloffset_Indexf, fn)
+#define CALL_Indexfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Indexfv, parameters)
+#define GET_Indexfv(disp) GET_by_offset(disp, _gloffset_Indexfv)
+#define SET_Indexfv(disp, fn) SET_by_offset(disp, _gloffset_Indexfv, fn)
+#define CALL_Indexi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_Indexi, parameters)
+#define GET_Indexi(disp) GET_by_offset(disp, _gloffset_Indexi)
+#define SET_Indexi(disp, fn) SET_by_offset(disp, _gloffset_Indexi, fn)
+#define CALL_Indexiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Indexiv, parameters)
+#define GET_Indexiv(disp) GET_by_offset(disp, _gloffset_Indexiv)
+#define SET_Indexiv(disp, fn) SET_by_offset(disp, _gloffset_Indexiv, fn)
+#define CALL_Indexs(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort)), _gloffset_Indexs, parameters)
+#define GET_Indexs(disp) GET_by_offset(disp, _gloffset_Indexs)
+#define SET_Indexs(disp, fn) SET_by_offset(disp, _gloffset_Indexs, fn)
+#define CALL_Indexsv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Indexsv, parameters)
+#define GET_Indexsv(disp) GET_by_offset(disp, _gloffset_Indexsv)
+#define SET_Indexsv(disp, fn) SET_by_offset(disp, _gloffset_Indexsv, fn)
+#define CALL_Normal3b(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), _gloffset_Normal3b, parameters)
+#define GET_Normal3b(disp) GET_by_offset(disp, _gloffset_Normal3b)
+#define SET_Normal3b(disp, fn) SET_by_offset(disp, _gloffset_Normal3b, fn)
+#define CALL_Normal3bv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), _gloffset_Normal3bv, parameters)
+#define GET_Normal3bv(disp) GET_by_offset(disp, _gloffset_Normal3bv)
+#define SET_Normal3bv(disp, fn) SET_by_offset(disp, _gloffset_Normal3bv, fn)
+#define CALL_Normal3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Normal3d, parameters)
+#define GET_Normal3d(disp) GET_by_offset(disp, _gloffset_Normal3d)
+#define SET_Normal3d(disp, fn) SET_by_offset(disp, _gloffset_Normal3d, fn)
+#define CALL_Normal3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Normal3dv, parameters)
+#define GET_Normal3dv(disp) GET_by_offset(disp, _gloffset_Normal3dv)
+#define SET_Normal3dv(disp, fn) SET_by_offset(disp, _gloffset_Normal3dv, fn)
+#define CALL_Normal3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Normal3f, parameters)
+#define GET_Normal3f(disp) GET_by_offset(disp, _gloffset_Normal3f)
+#define SET_Normal3f(disp, fn) SET_by_offset(disp, _gloffset_Normal3f, fn)
+#define CALL_Normal3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Normal3fv, parameters)
+#define GET_Normal3fv(disp) GET_by_offset(disp, _gloffset_Normal3fv)
+#define SET_Normal3fv(disp, fn) SET_by_offset(disp, _gloffset_Normal3fv, fn)
+#define CALL_Normal3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Normal3i, parameters)
+#define GET_Normal3i(disp) GET_by_offset(disp, _gloffset_Normal3i)
+#define SET_Normal3i(disp, fn) SET_by_offset(disp, _gloffset_Normal3i, fn)
+#define CALL_Normal3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Normal3iv, parameters)
+#define GET_Normal3iv(disp) GET_by_offset(disp, _gloffset_Normal3iv)
+#define SET_Normal3iv(disp, fn) SET_by_offset(disp, _gloffset_Normal3iv, fn)
+#define CALL_Normal3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Normal3s, parameters)
+#define GET_Normal3s(disp) GET_by_offset(disp, _gloffset_Normal3s)
+#define SET_Normal3s(disp, fn) SET_by_offset(disp, _gloffset_Normal3s, fn)
+#define CALL_Normal3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Normal3sv, parameters)
+#define GET_Normal3sv(disp) GET_by_offset(disp, _gloffset_Normal3sv)
+#define SET_Normal3sv(disp, fn) SET_by_offset(disp, _gloffset_Normal3sv, fn)
+#define CALL_RasterPos2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_RasterPos2d, parameters)
+#define GET_RasterPos2d(disp) GET_by_offset(disp, _gloffset_RasterPos2d)
+#define SET_RasterPos2d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2d, fn)
+#define CALL_RasterPos2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos2dv, parameters)
+#define GET_RasterPos2dv(disp) GET_by_offset(disp, _gloffset_RasterPos2dv)
+#define SET_RasterPos2dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2dv, fn)
+#define CALL_RasterPos2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_RasterPos2f, parameters)
+#define GET_RasterPos2f(disp) GET_by_offset(disp, _gloffset_RasterPos2f)
+#define SET_RasterPos2f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2f, fn)
+#define CALL_RasterPos2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos2fv, parameters)
+#define GET_RasterPos2fv(disp) GET_by_offset(disp, _gloffset_RasterPos2fv)
+#define SET_RasterPos2fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2fv, fn)
+#define CALL_RasterPos2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_RasterPos2i, parameters)
+#define GET_RasterPos2i(disp) GET_by_offset(disp, _gloffset_RasterPos2i)
+#define SET_RasterPos2i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2i, fn)
+#define CALL_RasterPos2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos2iv, parameters)
+#define GET_RasterPos2iv(disp) GET_by_offset(disp, _gloffset_RasterPos2iv)
+#define SET_RasterPos2iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2iv, fn)
+#define CALL_RasterPos2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_RasterPos2s, parameters)
+#define GET_RasterPos2s(disp) GET_by_offset(disp, _gloffset_RasterPos2s)
+#define SET_RasterPos2s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2s, fn)
+#define CALL_RasterPos2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos2sv, parameters)
+#define GET_RasterPos2sv(disp) GET_by_offset(disp, _gloffset_RasterPos2sv)
+#define SET_RasterPos2sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos2sv, fn)
+#define CALL_RasterPos3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_RasterPos3d, parameters)
+#define GET_RasterPos3d(disp) GET_by_offset(disp, _gloffset_RasterPos3d)
+#define SET_RasterPos3d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3d, fn)
+#define CALL_RasterPos3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos3dv, parameters)
+#define GET_RasterPos3dv(disp) GET_by_offset(disp, _gloffset_RasterPos3dv)
+#define SET_RasterPos3dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3dv, fn)
+#define CALL_RasterPos3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_RasterPos3f, parameters)
+#define GET_RasterPos3f(disp) GET_by_offset(disp, _gloffset_RasterPos3f)
+#define SET_RasterPos3f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3f, fn)
+#define CALL_RasterPos3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos3fv, parameters)
+#define GET_RasterPos3fv(disp) GET_by_offset(disp, _gloffset_RasterPos3fv)
+#define SET_RasterPos3fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3fv, fn)
+#define CALL_RasterPos3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_RasterPos3i, parameters)
+#define GET_RasterPos3i(disp) GET_by_offset(disp, _gloffset_RasterPos3i)
+#define SET_RasterPos3i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3i, fn)
+#define CALL_RasterPos3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos3iv, parameters)
+#define GET_RasterPos3iv(disp) GET_by_offset(disp, _gloffset_RasterPos3iv)
+#define SET_RasterPos3iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3iv, fn)
+#define CALL_RasterPos3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_RasterPos3s, parameters)
+#define GET_RasterPos3s(disp) GET_by_offset(disp, _gloffset_RasterPos3s)
+#define SET_RasterPos3s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3s, fn)
+#define CALL_RasterPos3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos3sv, parameters)
+#define GET_RasterPos3sv(disp) GET_by_offset(disp, _gloffset_RasterPos3sv)
+#define SET_RasterPos3sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos3sv, fn)
+#define CALL_RasterPos4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_RasterPos4d, parameters)
+#define GET_RasterPos4d(disp) GET_by_offset(disp, _gloffset_RasterPos4d)
+#define SET_RasterPos4d(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4d, fn)
+#define CALL_RasterPos4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_RasterPos4dv, parameters)
+#define GET_RasterPos4dv(disp) GET_by_offset(disp, _gloffset_RasterPos4dv)
+#define SET_RasterPos4dv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4dv, fn)
+#define CALL_RasterPos4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_RasterPos4f, parameters)
+#define GET_RasterPos4f(disp) GET_by_offset(disp, _gloffset_RasterPos4f)
+#define SET_RasterPos4f(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4f, fn)
+#define CALL_RasterPos4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_RasterPos4fv, parameters)
+#define GET_RasterPos4fv(disp) GET_by_offset(disp, _gloffset_RasterPos4fv)
+#define SET_RasterPos4fv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4fv, fn)
+#define CALL_RasterPos4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_RasterPos4i, parameters)
+#define GET_RasterPos4i(disp) GET_by_offset(disp, _gloffset_RasterPos4i)
+#define SET_RasterPos4i(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4i, fn)
+#define CALL_RasterPos4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_RasterPos4iv, parameters)
+#define GET_RasterPos4iv(disp) GET_by_offset(disp, _gloffset_RasterPos4iv)
+#define SET_RasterPos4iv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4iv, fn)
+#define CALL_RasterPos4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_RasterPos4s, parameters)
+#define GET_RasterPos4s(disp) GET_by_offset(disp, _gloffset_RasterPos4s)
+#define SET_RasterPos4s(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4s, fn)
+#define CALL_RasterPos4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_RasterPos4sv, parameters)
+#define GET_RasterPos4sv(disp) GET_by_offset(disp, _gloffset_RasterPos4sv)
+#define SET_RasterPos4sv(disp, fn) SET_by_offset(disp, _gloffset_RasterPos4sv, fn)
+#define CALL_Rectd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Rectd, parameters)
+#define GET_Rectd(disp) GET_by_offset(disp, _gloffset_Rectd)
+#define SET_Rectd(disp, fn) SET_by_offset(disp, _gloffset_Rectd, fn)
+#define CALL_Rectdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *, const GLdouble *)), _gloffset_Rectdv, parameters)
+#define GET_Rectdv(disp) GET_by_offset(disp, _gloffset_Rectdv)
+#define SET_Rectdv(disp, fn) SET_by_offset(disp, _gloffset_Rectdv, fn)
+#define CALL_Rectf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Rectf, parameters)
+#define GET_Rectf(disp) GET_by_offset(disp, _gloffset_Rectf)
+#define SET_Rectf(disp, fn) SET_by_offset(disp, _gloffset_Rectf, fn)
+#define CALL_Rectfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *, const GLfloat *)), _gloffset_Rectfv, parameters)
+#define GET_Rectfv(disp) GET_by_offset(disp, _gloffset_Rectfv)
+#define SET_Rectfv(disp, fn) SET_by_offset(disp, _gloffset_Rectfv, fn)
+#define CALL_Recti(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Recti, parameters)
+#define GET_Recti(disp) GET_by_offset(disp, _gloffset_Recti)
+#define SET_Recti(disp, fn) SET_by_offset(disp, _gloffset_Recti, fn)
+#define CALL_Rectiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *, const GLint *)), _gloffset_Rectiv, parameters)
+#define GET_Rectiv(disp) GET_by_offset(disp, _gloffset_Rectiv)
+#define SET_Rectiv(disp, fn) SET_by_offset(disp, _gloffset_Rectiv, fn)
+#define CALL_Rects(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Rects, parameters)
+#define GET_Rects(disp) GET_by_offset(disp, _gloffset_Rects)
+#define SET_Rects(disp, fn) SET_by_offset(disp, _gloffset_Rects, fn)
+#define CALL_Rectsv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *, const GLshort *)), _gloffset_Rectsv, parameters)
+#define GET_Rectsv(disp) GET_by_offset(disp, _gloffset_Rectsv)
+#define SET_Rectsv(disp, fn) SET_by_offset(disp, _gloffset_Rectsv, fn)
+#define CALL_TexCoord1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_TexCoord1d, parameters)
+#define GET_TexCoord1d(disp) GET_by_offset(disp, _gloffset_TexCoord1d)
+#define SET_TexCoord1d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1d, fn)
+#define CALL_TexCoord1dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord1dv, parameters)
+#define GET_TexCoord1dv(disp) GET_by_offset(disp, _gloffset_TexCoord1dv)
+#define SET_TexCoord1dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1dv, fn)
+#define CALL_TexCoord1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_TexCoord1f, parameters)
+#define GET_TexCoord1f(disp) GET_by_offset(disp, _gloffset_TexCoord1f)
+#define SET_TexCoord1f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1f, fn)
+#define CALL_TexCoord1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord1fv, parameters)
+#define GET_TexCoord1fv(disp) GET_by_offset(disp, _gloffset_TexCoord1fv)
+#define SET_TexCoord1fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1fv, fn)
+#define CALL_TexCoord1i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_TexCoord1i, parameters)
+#define GET_TexCoord1i(disp) GET_by_offset(disp, _gloffset_TexCoord1i)
+#define SET_TexCoord1i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1i, fn)
+#define CALL_TexCoord1iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord1iv, parameters)
+#define GET_TexCoord1iv(disp) GET_by_offset(disp, _gloffset_TexCoord1iv)
+#define SET_TexCoord1iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1iv, fn)
+#define CALL_TexCoord1s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort)), _gloffset_TexCoord1s, parameters)
+#define GET_TexCoord1s(disp) GET_by_offset(disp, _gloffset_TexCoord1s)
+#define SET_TexCoord1s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1s, fn)
+#define CALL_TexCoord1sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord1sv, parameters)
+#define GET_TexCoord1sv(disp) GET_by_offset(disp, _gloffset_TexCoord1sv)
+#define SET_TexCoord1sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord1sv, fn)
+#define CALL_TexCoord2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_TexCoord2d, parameters)
+#define GET_TexCoord2d(disp) GET_by_offset(disp, _gloffset_TexCoord2d)
+#define SET_TexCoord2d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2d, fn)
+#define CALL_TexCoord2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord2dv, parameters)
+#define GET_TexCoord2dv(disp) GET_by_offset(disp, _gloffset_TexCoord2dv)
+#define SET_TexCoord2dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2dv, fn)
+#define CALL_TexCoord2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_TexCoord2f, parameters)
+#define GET_TexCoord2f(disp) GET_by_offset(disp, _gloffset_TexCoord2f)
+#define SET_TexCoord2f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2f, fn)
+#define CALL_TexCoord2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord2fv, parameters)
+#define GET_TexCoord2fv(disp) GET_by_offset(disp, _gloffset_TexCoord2fv)
+#define SET_TexCoord2fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2fv, fn)
+#define CALL_TexCoord2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_TexCoord2i, parameters)
+#define GET_TexCoord2i(disp) GET_by_offset(disp, _gloffset_TexCoord2i)
+#define SET_TexCoord2i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2i, fn)
+#define CALL_TexCoord2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord2iv, parameters)
+#define GET_TexCoord2iv(disp) GET_by_offset(disp, _gloffset_TexCoord2iv)
+#define SET_TexCoord2iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2iv, fn)
+#define CALL_TexCoord2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_TexCoord2s, parameters)
+#define GET_TexCoord2s(disp) GET_by_offset(disp, _gloffset_TexCoord2s)
+#define SET_TexCoord2s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2s, fn)
+#define CALL_TexCoord2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord2sv, parameters)
+#define GET_TexCoord2sv(disp) GET_by_offset(disp, _gloffset_TexCoord2sv)
+#define SET_TexCoord2sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord2sv, fn)
+#define CALL_TexCoord3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_TexCoord3d, parameters)
+#define GET_TexCoord3d(disp) GET_by_offset(disp, _gloffset_TexCoord3d)
+#define SET_TexCoord3d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3d, fn)
+#define CALL_TexCoord3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord3dv, parameters)
+#define GET_TexCoord3dv(disp) GET_by_offset(disp, _gloffset_TexCoord3dv)
+#define SET_TexCoord3dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3dv, fn)
+#define CALL_TexCoord3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_TexCoord3f, parameters)
+#define GET_TexCoord3f(disp) GET_by_offset(disp, _gloffset_TexCoord3f)
+#define SET_TexCoord3f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3f, fn)
+#define CALL_TexCoord3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord3fv, parameters)
+#define GET_TexCoord3fv(disp) GET_by_offset(disp, _gloffset_TexCoord3fv)
+#define SET_TexCoord3fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3fv, fn)
+#define CALL_TexCoord3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_TexCoord3i, parameters)
+#define GET_TexCoord3i(disp) GET_by_offset(disp, _gloffset_TexCoord3i)
+#define SET_TexCoord3i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3i, fn)
+#define CALL_TexCoord3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord3iv, parameters)
+#define GET_TexCoord3iv(disp) GET_by_offset(disp, _gloffset_TexCoord3iv)
+#define SET_TexCoord3iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3iv, fn)
+#define CALL_TexCoord3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_TexCoord3s, parameters)
+#define GET_TexCoord3s(disp) GET_by_offset(disp, _gloffset_TexCoord3s)
+#define SET_TexCoord3s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3s, fn)
+#define CALL_TexCoord3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord3sv, parameters)
+#define GET_TexCoord3sv(disp) GET_by_offset(disp, _gloffset_TexCoord3sv)
+#define SET_TexCoord3sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord3sv, fn)
+#define CALL_TexCoord4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_TexCoord4d, parameters)
+#define GET_TexCoord4d(disp) GET_by_offset(disp, _gloffset_TexCoord4d)
+#define SET_TexCoord4d(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4d, fn)
+#define CALL_TexCoord4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_TexCoord4dv, parameters)
+#define GET_TexCoord4dv(disp) GET_by_offset(disp, _gloffset_TexCoord4dv)
+#define SET_TexCoord4dv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4dv, fn)
+#define CALL_TexCoord4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_TexCoord4f, parameters)
+#define GET_TexCoord4f(disp) GET_by_offset(disp, _gloffset_TexCoord4f)
+#define SET_TexCoord4f(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4f, fn)
+#define CALL_TexCoord4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_TexCoord4fv, parameters)
+#define GET_TexCoord4fv(disp) GET_by_offset(disp, _gloffset_TexCoord4fv)
+#define SET_TexCoord4fv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4fv, fn)
+#define CALL_TexCoord4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_TexCoord4i, parameters)
+#define GET_TexCoord4i(disp) GET_by_offset(disp, _gloffset_TexCoord4i)
+#define SET_TexCoord4i(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4i, fn)
+#define CALL_TexCoord4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_TexCoord4iv, parameters)
+#define GET_TexCoord4iv(disp) GET_by_offset(disp, _gloffset_TexCoord4iv)
+#define SET_TexCoord4iv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4iv, fn)
+#define CALL_TexCoord4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_TexCoord4s, parameters)
+#define GET_TexCoord4s(disp) GET_by_offset(disp, _gloffset_TexCoord4s)
+#define SET_TexCoord4s(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4s, fn)
+#define CALL_TexCoord4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_TexCoord4sv, parameters)
+#define GET_TexCoord4sv(disp) GET_by_offset(disp, _gloffset_TexCoord4sv)
+#define SET_TexCoord4sv(disp, fn) SET_by_offset(disp, _gloffset_TexCoord4sv, fn)
+#define CALL_Vertex2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_Vertex2d, parameters)
+#define GET_Vertex2d(disp) GET_by_offset(disp, _gloffset_Vertex2d)
+#define SET_Vertex2d(disp, fn) SET_by_offset(disp, _gloffset_Vertex2d, fn)
+#define CALL_Vertex2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex2dv, parameters)
+#define GET_Vertex2dv(disp) GET_by_offset(disp, _gloffset_Vertex2dv)
+#define SET_Vertex2dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2dv, fn)
+#define CALL_Vertex2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_Vertex2f, parameters)
+#define GET_Vertex2f(disp) GET_by_offset(disp, _gloffset_Vertex2f)
+#define SET_Vertex2f(disp, fn) SET_by_offset(disp, _gloffset_Vertex2f, fn)
+#define CALL_Vertex2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex2fv, parameters)
+#define GET_Vertex2fv(disp) GET_by_offset(disp, _gloffset_Vertex2fv)
+#define SET_Vertex2fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2fv, fn)
+#define CALL_Vertex2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_Vertex2i, parameters)
+#define GET_Vertex2i(disp) GET_by_offset(disp, _gloffset_Vertex2i)
+#define SET_Vertex2i(disp, fn) SET_by_offset(disp, _gloffset_Vertex2i, fn)
+#define CALL_Vertex2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex2iv, parameters)
+#define GET_Vertex2iv(disp) GET_by_offset(disp, _gloffset_Vertex2iv)
+#define SET_Vertex2iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2iv, fn)
+#define CALL_Vertex2s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), _gloffset_Vertex2s, parameters)
+#define GET_Vertex2s(disp) GET_by_offset(disp, _gloffset_Vertex2s)
+#define SET_Vertex2s(disp, fn) SET_by_offset(disp, _gloffset_Vertex2s, fn)
+#define CALL_Vertex2sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex2sv, parameters)
+#define GET_Vertex2sv(disp) GET_by_offset(disp, _gloffset_Vertex2sv)
+#define SET_Vertex2sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex2sv, fn)
+#define CALL_Vertex3d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Vertex3d, parameters)
+#define GET_Vertex3d(disp) GET_by_offset(disp, _gloffset_Vertex3d)
+#define SET_Vertex3d(disp, fn) SET_by_offset(disp, _gloffset_Vertex3d, fn)
+#define CALL_Vertex3dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex3dv, parameters)
+#define GET_Vertex3dv(disp) GET_by_offset(disp, _gloffset_Vertex3dv)
+#define SET_Vertex3dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3dv, fn)
+#define CALL_Vertex3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Vertex3f, parameters)
+#define GET_Vertex3f(disp) GET_by_offset(disp, _gloffset_Vertex3f)
+#define SET_Vertex3f(disp, fn) SET_by_offset(disp, _gloffset_Vertex3f, fn)
+#define CALL_Vertex3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex3fv, parameters)
+#define GET_Vertex3fv(disp) GET_by_offset(disp, _gloffset_Vertex3fv)
+#define SET_Vertex3fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3fv, fn)
+#define CALL_Vertex3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Vertex3i, parameters)
+#define GET_Vertex3i(disp) GET_by_offset(disp, _gloffset_Vertex3i)
+#define SET_Vertex3i(disp, fn) SET_by_offset(disp, _gloffset_Vertex3i, fn)
+#define CALL_Vertex3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex3iv, parameters)
+#define GET_Vertex3iv(disp) GET_by_offset(disp, _gloffset_Vertex3iv)
+#define SET_Vertex3iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3iv, fn)
+#define CALL_Vertex3s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), _gloffset_Vertex3s, parameters)
+#define GET_Vertex3s(disp) GET_by_offset(disp, _gloffset_Vertex3s)
+#define SET_Vertex3s(disp, fn) SET_by_offset(disp, _gloffset_Vertex3s, fn)
+#define CALL_Vertex3sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex3sv, parameters)
+#define GET_Vertex3sv(disp) GET_by_offset(disp, _gloffset_Vertex3sv)
+#define SET_Vertex3sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex3sv, fn)
+#define CALL_Vertex4d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Vertex4d, parameters)
+#define GET_Vertex4d(disp) GET_by_offset(disp, _gloffset_Vertex4d)
+#define SET_Vertex4d(disp, fn) SET_by_offset(disp, _gloffset_Vertex4d, fn)
+#define CALL_Vertex4dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_Vertex4dv, parameters)
+#define GET_Vertex4dv(disp) GET_by_offset(disp, _gloffset_Vertex4dv)
+#define SET_Vertex4dv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4dv, fn)
+#define CALL_Vertex4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Vertex4f, parameters)
+#define GET_Vertex4f(disp) GET_by_offset(disp, _gloffset_Vertex4f)
+#define SET_Vertex4f(disp, fn) SET_by_offset(disp, _gloffset_Vertex4f, fn)
+#define CALL_Vertex4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_Vertex4fv, parameters)
+#define GET_Vertex4fv(disp) GET_by_offset(disp, _gloffset_Vertex4fv)
+#define SET_Vertex4fv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4fv, fn)
+#define CALL_Vertex4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Vertex4i, parameters)
+#define GET_Vertex4i(disp) GET_by_offset(disp, _gloffset_Vertex4i)
+#define SET_Vertex4i(disp, fn) SET_by_offset(disp, _gloffset_Vertex4i, fn)
+#define CALL_Vertex4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), _gloffset_Vertex4iv, parameters)
+#define GET_Vertex4iv(disp) GET_by_offset(disp, _gloffset_Vertex4iv)
+#define SET_Vertex4iv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4iv, fn)
+#define CALL_Vertex4s(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), _gloffset_Vertex4s, parameters)
+#define GET_Vertex4s(disp) GET_by_offset(disp, _gloffset_Vertex4s)
+#define SET_Vertex4s(disp, fn) SET_by_offset(disp, _gloffset_Vertex4s, fn)
+#define CALL_Vertex4sv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), _gloffset_Vertex4sv, parameters)
+#define GET_Vertex4sv(disp) GET_by_offset(disp, _gloffset_Vertex4sv)
+#define SET_Vertex4sv(disp, fn) SET_by_offset(disp, _gloffset_Vertex4sv, fn)
+#define CALL_ClipPlane(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_ClipPlane, parameters)
+#define GET_ClipPlane(disp) GET_by_offset(disp, _gloffset_ClipPlane)
+#define SET_ClipPlane(disp, fn) SET_by_offset(disp, _gloffset_ClipPlane, fn)
+#define CALL_ColorMaterial(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_ColorMaterial, parameters)
+#define GET_ColorMaterial(disp) GET_by_offset(disp, _gloffset_ColorMaterial)
+#define SET_ColorMaterial(disp, fn) SET_by_offset(disp, _gloffset_ColorMaterial, fn)
+#define CALL_CullFace(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_CullFace, parameters)
+#define GET_CullFace(disp) GET_by_offset(disp, _gloffset_CullFace)
+#define SET_CullFace(disp, fn) SET_by_offset(disp, _gloffset_CullFace, fn)
+#define CALL_Fogf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_Fogf, parameters)
+#define GET_Fogf(disp) GET_by_offset(disp, _gloffset_Fogf)
+#define SET_Fogf(disp, fn) SET_by_offset(disp, _gloffset_Fogf, fn)
+#define CALL_Fogfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_Fogfv, parameters)
+#define GET_Fogfv(disp) GET_by_offset(disp, _gloffset_Fogfv)
+#define SET_Fogfv(disp, fn) SET_by_offset(disp, _gloffset_Fogfv, fn)
+#define CALL_Fogi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_Fogi, parameters)
+#define GET_Fogi(disp) GET_by_offset(disp, _gloffset_Fogi)
+#define SET_Fogi(disp, fn) SET_by_offset(disp, _gloffset_Fogi, fn)
+#define CALL_Fogiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_Fogiv, parameters)
+#define GET_Fogiv(disp) GET_by_offset(disp, _gloffset_Fogiv)
+#define SET_Fogiv(disp, fn) SET_by_offset(disp, _gloffset_Fogiv, fn)
+#define CALL_FrontFace(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_FrontFace, parameters)
+#define GET_FrontFace(disp) GET_by_offset(disp, _gloffset_FrontFace)
+#define SET_FrontFace(disp, fn) SET_by_offset(disp, _gloffset_FrontFace, fn)
+#define CALL_Hint(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_Hint, parameters)
+#define GET_Hint(disp) GET_by_offset(disp, _gloffset_Hint)
+#define SET_Hint(disp, fn) SET_by_offset(disp, _gloffset_Hint, fn)
+#define CALL_Lightf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_Lightf, parameters)
+#define GET_Lightf(disp) GET_by_offset(disp, _gloffset_Lightf)
+#define SET_Lightf(disp, fn) SET_by_offset(disp, _gloffset_Lightf, fn)
+#define CALL_Lightfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_Lightfv, parameters)
+#define GET_Lightfv(disp) GET_by_offset(disp, _gloffset_Lightfv)
+#define SET_Lightfv(disp, fn) SET_by_offset(disp, _gloffset_Lightfv, fn)
+#define CALL_Lighti(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_Lighti, parameters)
+#define GET_Lighti(disp) GET_by_offset(disp, _gloffset_Lighti)
+#define SET_Lighti(disp, fn) SET_by_offset(disp, _gloffset_Lighti, fn)
+#define CALL_Lightiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_Lightiv, parameters)
+#define GET_Lightiv(disp) GET_by_offset(disp, _gloffset_Lightiv)
+#define SET_Lightiv(disp, fn) SET_by_offset(disp, _gloffset_Lightiv, fn)
+#define CALL_LightModelf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_LightModelf, parameters)
+#define GET_LightModelf(disp) GET_by_offset(disp, _gloffset_LightModelf)
+#define SET_LightModelf(disp, fn) SET_by_offset(disp, _gloffset_LightModelf, fn)
+#define CALL_LightModelfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_LightModelfv, parameters)
+#define GET_LightModelfv(disp) GET_by_offset(disp, _gloffset_LightModelfv)
+#define SET_LightModelfv(disp, fn) SET_by_offset(disp, _gloffset_LightModelfv, fn)
+#define CALL_LightModeli(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_LightModeli, parameters)
+#define GET_LightModeli(disp) GET_by_offset(disp, _gloffset_LightModeli)
+#define SET_LightModeli(disp, fn) SET_by_offset(disp, _gloffset_LightModeli, fn)
+#define CALL_LightModeliv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_LightModeliv, parameters)
+#define GET_LightModeliv(disp) GET_by_offset(disp, _gloffset_LightModeliv)
+#define SET_LightModeliv(disp, fn) SET_by_offset(disp, _gloffset_LightModeliv, fn)
+#define CALL_LineStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLushort)), _gloffset_LineStipple, parameters)
+#define GET_LineStipple(disp) GET_by_offset(disp, _gloffset_LineStipple)
+#define SET_LineStipple(disp, fn) SET_by_offset(disp, _gloffset_LineStipple, fn)
+#define CALL_LineWidth(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_LineWidth, parameters)
+#define GET_LineWidth(disp) GET_by_offset(disp, _gloffset_LineWidth)
+#define SET_LineWidth(disp, fn) SET_by_offset(disp, _gloffset_LineWidth, fn)
+#define CALL_Materialf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_Materialf, parameters)
+#define GET_Materialf(disp) GET_by_offset(disp, _gloffset_Materialf)
+#define SET_Materialf(disp, fn) SET_by_offset(disp, _gloffset_Materialf, fn)
+#define CALL_Materialfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_Materialfv, parameters)
+#define GET_Materialfv(disp) GET_by_offset(disp, _gloffset_Materialfv)
+#define SET_Materialfv(disp, fn) SET_by_offset(disp, _gloffset_Materialfv, fn)
+#define CALL_Materiali(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_Materiali, parameters)
+#define GET_Materiali(disp) GET_by_offset(disp, _gloffset_Materiali)
+#define SET_Materiali(disp, fn) SET_by_offset(disp, _gloffset_Materiali, fn)
+#define CALL_Materialiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_Materialiv, parameters)
+#define GET_Materialiv(disp) GET_by_offset(disp, _gloffset_Materialiv)
+#define SET_Materialiv(disp, fn) SET_by_offset(disp, _gloffset_Materialiv, fn)
+#define CALL_PointSize(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_PointSize, parameters)
+#define GET_PointSize(disp) GET_by_offset(disp, _gloffset_PointSize)
+#define SET_PointSize(disp, fn) SET_by_offset(disp, _gloffset_PointSize, fn)
+#define CALL_PolygonMode(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_PolygonMode, parameters)
+#define GET_PolygonMode(disp) GET_by_offset(disp, _gloffset_PolygonMode)
+#define SET_PolygonMode(disp, fn) SET_by_offset(disp, _gloffset_PolygonMode, fn)
+#define CALL_PolygonStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_PolygonStipple, parameters)
+#define GET_PolygonStipple(disp) GET_by_offset(disp, _gloffset_PolygonStipple)
+#define SET_PolygonStipple(disp, fn) SET_by_offset(disp, _gloffset_PolygonStipple, fn)
+#define CALL_Scissor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei)), _gloffset_Scissor, parameters)
+#define GET_Scissor(disp) GET_by_offset(disp, _gloffset_Scissor)
+#define SET_Scissor(disp, fn) SET_by_offset(disp, _gloffset_Scissor, fn)
+#define CALL_ShadeModel(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ShadeModel, parameters)
+#define GET_ShadeModel(disp) GET_by_offset(disp, _gloffset_ShadeModel)
+#define SET_ShadeModel(disp, fn) SET_by_offset(disp, _gloffset_ShadeModel, fn)
+#define CALL_TexParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexParameterf, parameters)
+#define GET_TexParameterf(disp) GET_by_offset(disp, _gloffset_TexParameterf)
+#define SET_TexParameterf(disp, fn) SET_by_offset(disp, _gloffset_TexParameterf, fn)
+#define CALL_TexParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexParameterfv, parameters)
+#define GET_TexParameterfv(disp) GET_by_offset(disp, _gloffset_TexParameterfv)
+#define SET_TexParameterfv(disp, fn) SET_by_offset(disp, _gloffset_TexParameterfv, fn)
+#define CALL_TexParameteri(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexParameteri, parameters)
+#define GET_TexParameteri(disp) GET_by_offset(disp, _gloffset_TexParameteri)
+#define SET_TexParameteri(disp, fn) SET_by_offset(disp, _gloffset_TexParameteri, fn)
+#define CALL_TexParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexParameteriv, parameters)
+#define GET_TexParameteriv(disp) GET_by_offset(disp, _gloffset_TexParameteriv)
+#define SET_TexParameteriv(disp, fn) SET_by_offset(disp, _gloffset_TexParameteriv, fn)
+#define CALL_TexImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage1D, parameters)
+#define GET_TexImage1D(disp) GET_by_offset(disp, _gloffset_TexImage1D)
+#define SET_TexImage1D(disp, fn) SET_by_offset(disp, _gloffset_TexImage1D, fn)
+#define CALL_TexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage2D, parameters)
+#define GET_TexImage2D(disp) GET_by_offset(disp, _gloffset_TexImage2D)
+#define SET_TexImage2D(disp, fn) SET_by_offset(disp, _gloffset_TexImage2D, fn)
+#define CALL_TexEnvf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexEnvf, parameters)
+#define GET_TexEnvf(disp) GET_by_offset(disp, _gloffset_TexEnvf)
+#define SET_TexEnvf(disp, fn) SET_by_offset(disp, _gloffset_TexEnvf, fn)
+#define CALL_TexEnvfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexEnvfv, parameters)
+#define GET_TexEnvfv(disp) GET_by_offset(disp, _gloffset_TexEnvfv)
+#define SET_TexEnvfv(disp, fn) SET_by_offset(disp, _gloffset_TexEnvfv, fn)
+#define CALL_TexEnvi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexEnvi, parameters)
+#define GET_TexEnvi(disp) GET_by_offset(disp, _gloffset_TexEnvi)
+#define SET_TexEnvi(disp, fn) SET_by_offset(disp, _gloffset_TexEnvi, fn)
+#define CALL_TexEnviv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexEnviv, parameters)
+#define GET_TexEnviv(disp) GET_by_offset(disp, _gloffset_TexEnviv)
+#define SET_TexEnviv(disp, fn) SET_by_offset(disp, _gloffset_TexEnviv, fn)
+#define CALL_TexGend(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble)), _gloffset_TexGend, parameters)
+#define GET_TexGend(disp) GET_by_offset(disp, _gloffset_TexGend)
+#define SET_TexGend(disp, fn) SET_by_offset(disp, _gloffset_TexGend, fn)
+#define CALL_TexGendv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLdouble *)), _gloffset_TexGendv, parameters)
+#define GET_TexGendv(disp) GET_by_offset(disp, _gloffset_TexGendv)
+#define SET_TexGendv(disp, fn) SET_by_offset(disp, _gloffset_TexGendv, fn)
+#define CALL_TexGenf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_TexGenf, parameters)
+#define GET_TexGenf(disp) GET_by_offset(disp, _gloffset_TexGenf)
+#define SET_TexGenf(disp, fn) SET_by_offset(disp, _gloffset_TexGenf, fn)
+#define CALL_TexGenfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_TexGenfv, parameters)
+#define GET_TexGenfv(disp) GET_by_offset(disp, _gloffset_TexGenfv)
+#define SET_TexGenfv(disp, fn) SET_by_offset(disp, _gloffset_TexGenfv, fn)
+#define CALL_TexGeni(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_TexGeni, parameters)
+#define GET_TexGeni(disp) GET_by_offset(disp, _gloffset_TexGeni)
+#define SET_TexGeni(disp, fn) SET_by_offset(disp, _gloffset_TexGeni, fn)
+#define CALL_TexGeniv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_TexGeniv, parameters)
+#define GET_TexGeniv(disp) GET_by_offset(disp, _gloffset_TexGeniv)
+#define SET_TexGeniv(disp, fn) SET_by_offset(disp, _gloffset_TexGeniv, fn)
+#define CALL_FeedbackBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLenum, GLfloat *)), _gloffset_FeedbackBuffer, parameters)
+#define GET_FeedbackBuffer(disp) GET_by_offset(disp, _gloffset_FeedbackBuffer)
+#define SET_FeedbackBuffer(disp, fn) SET_by_offset(disp, _gloffset_FeedbackBuffer, fn)
+#define CALL_SelectBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_SelectBuffer, parameters)
+#define GET_SelectBuffer(disp) GET_by_offset(disp, _gloffset_SelectBuffer)
+#define SET_SelectBuffer(disp, fn) SET_by_offset(disp, _gloffset_SelectBuffer, fn)
+#define CALL_RenderMode(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLenum)), _gloffset_RenderMode, parameters)
+#define GET_RenderMode(disp) GET_by_offset(disp, _gloffset_RenderMode)
+#define SET_RenderMode(disp, fn) SET_by_offset(disp, _gloffset_RenderMode, fn)
+#define CALL_InitNames(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_InitNames, parameters)
+#define GET_InitNames(disp) GET_by_offset(disp, _gloffset_InitNames)
+#define SET_InitNames(disp, fn) SET_by_offset(disp, _gloffset_InitNames, fn)
+#define CALL_LoadName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_LoadName, parameters)
+#define GET_LoadName(disp) GET_by_offset(disp, _gloffset_LoadName)
+#define SET_LoadName(disp, fn) SET_by_offset(disp, _gloffset_LoadName, fn)
+#define CALL_PassThrough(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_PassThrough, parameters)
+#define GET_PassThrough(disp) GET_by_offset(disp, _gloffset_PassThrough)
+#define SET_PassThrough(disp, fn) SET_by_offset(disp, _gloffset_PassThrough, fn)
+#define CALL_PopName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopName, parameters)
+#define GET_PopName(disp) GET_by_offset(disp, _gloffset_PopName)
+#define SET_PopName(disp, fn) SET_by_offset(disp, _gloffset_PopName, fn)
+#define CALL_PushName(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_PushName, parameters)
+#define GET_PushName(disp) GET_by_offset(disp, _gloffset_PushName)
+#define SET_PushName(disp, fn) SET_by_offset(disp, _gloffset_PushName, fn)
+#define CALL_DrawBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DrawBuffer, parameters)
+#define GET_DrawBuffer(disp) GET_by_offset(disp, _gloffset_DrawBuffer)
+#define SET_DrawBuffer(disp, fn) SET_by_offset(disp, _gloffset_DrawBuffer, fn)
+#define CALL_Clear(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_Clear, parameters)
+#define GET_Clear(disp) GET_by_offset(disp, _gloffset_Clear)
+#define SET_Clear(disp, fn) SET_by_offset(disp, _gloffset_Clear, fn)
+#define CALL_ClearAccum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_ClearAccum, parameters)
+#define GET_ClearAccum(disp) GET_by_offset(disp, _gloffset_ClearAccum)
+#define SET_ClearAccum(disp, fn) SET_by_offset(disp, _gloffset_ClearAccum, fn)
+#define CALL_ClearIndex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_ClearIndex, parameters)
+#define GET_ClearIndex(disp) GET_by_offset(disp, _gloffset_ClearIndex)
+#define SET_ClearIndex(disp, fn) SET_by_offset(disp, _gloffset_ClearIndex, fn)
+#define CALL_ClearColor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf, GLclampf, GLclampf)), _gloffset_ClearColor, parameters)
+#define GET_ClearColor(disp) GET_by_offset(disp, _gloffset_ClearColor)
+#define SET_ClearColor(disp, fn) SET_by_offset(disp, _gloffset_ClearColor, fn)
+#define CALL_ClearStencil(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_ClearStencil, parameters)
+#define GET_ClearStencil(disp) GET_by_offset(disp, _gloffset_ClearStencil)
+#define SET_ClearStencil(disp, fn) SET_by_offset(disp, _gloffset_ClearStencil, fn)
+#define CALL_ClearDepth(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd)), _gloffset_ClearDepth, parameters)
+#define GET_ClearDepth(disp) GET_by_offset(disp, _gloffset_ClearDepth)
+#define SET_ClearDepth(disp, fn) SET_by_offset(disp, _gloffset_ClearDepth, fn)
+#define CALL_StencilMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_StencilMask, parameters)
+#define GET_StencilMask(disp) GET_by_offset(disp, _gloffset_StencilMask)
+#define SET_StencilMask(disp, fn) SET_by_offset(disp, _gloffset_StencilMask, fn)
+#define CALL_ColorMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean, GLboolean, GLboolean, GLboolean)), _gloffset_ColorMask, parameters)
+#define GET_ColorMask(disp) GET_by_offset(disp, _gloffset_ColorMask)
+#define SET_ColorMask(disp, fn) SET_by_offset(disp, _gloffset_ColorMask, fn)
+#define CALL_DepthMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLboolean)), _gloffset_DepthMask, parameters)
+#define GET_DepthMask(disp) GET_by_offset(disp, _gloffset_DepthMask)
+#define SET_DepthMask(disp, fn) SET_by_offset(disp, _gloffset_DepthMask, fn)
+#define CALL_IndexMask(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_IndexMask, parameters)
+#define GET_IndexMask(disp) GET_by_offset(disp, _gloffset_IndexMask)
+#define SET_IndexMask(disp, fn) SET_by_offset(disp, _gloffset_IndexMask, fn)
+#define CALL_Accum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_Accum, parameters)
+#define GET_Accum(disp) GET_by_offset(disp, _gloffset_Accum)
+#define SET_Accum(disp, fn) SET_by_offset(disp, _gloffset_Accum, fn)
+#define CALL_Disable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Disable, parameters)
+#define GET_Disable(disp) GET_by_offset(disp, _gloffset_Disable)
+#define SET_Disable(disp, fn) SET_by_offset(disp, _gloffset_Disable, fn)
+#define CALL_Enable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_Enable, parameters)
+#define GET_Enable(disp) GET_by_offset(disp, _gloffset_Enable)
+#define SET_Enable(disp, fn) SET_by_offset(disp, _gloffset_Enable, fn)
+#define CALL_Finish(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_Finish, parameters)
+#define GET_Finish(disp) GET_by_offset(disp, _gloffset_Finish)
+#define SET_Finish(disp, fn) SET_by_offset(disp, _gloffset_Finish, fn)
+#define CALL_Flush(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_Flush, parameters)
+#define GET_Flush(disp) GET_by_offset(disp, _gloffset_Flush)
+#define SET_Flush(disp, fn) SET_by_offset(disp, _gloffset_Flush, fn)
+#define CALL_PopAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopAttrib, parameters)
+#define GET_PopAttrib(disp) GET_by_offset(disp, _gloffset_PopAttrib)
+#define SET_PopAttrib(disp, fn) SET_by_offset(disp, _gloffset_PopAttrib, fn)
+#define CALL_PushAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_PushAttrib, parameters)
+#define GET_PushAttrib(disp) GET_by_offset(disp, _gloffset_PushAttrib)
+#define SET_PushAttrib(disp, fn) SET_by_offset(disp, _gloffset_PushAttrib, fn)
+#define CALL_Map1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLint, GLint, const GLdouble *)), _gloffset_Map1d, parameters)
+#define GET_Map1d(disp) GET_by_offset(disp, _gloffset_Map1d)
+#define SET_Map1d(disp, fn) SET_by_offset(disp, _gloffset_Map1d, fn)
+#define CALL_Map1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLint, GLint, const GLfloat *)), _gloffset_Map1f, parameters)
+#define GET_Map1f(disp) GET_by_offset(disp, _gloffset_Map1f)
+#define SET_Map1f(disp, fn) SET_by_offset(disp, _gloffset_Map1f, fn)
+#define CALL_Map2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, const GLdouble *)), _gloffset_Map2d, parameters)
+#define GET_Map2d(disp) GET_by_offset(disp, _gloffset_Map2d)
+#define SET_Map2d(disp, fn) SET_by_offset(disp, _gloffset_Map2d, fn)
+#define CALL_Map2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, const GLfloat *)), _gloffset_Map2f, parameters)
+#define GET_Map2f(disp) GET_by_offset(disp, _gloffset_Map2f)
+#define SET_Map2f(disp, fn) SET_by_offset(disp, _gloffset_Map2f, fn)
+#define CALL_MapGrid1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLdouble, GLdouble)), _gloffset_MapGrid1d, parameters)
+#define GET_MapGrid1d(disp) GET_by_offset(disp, _gloffset_MapGrid1d)
+#define SET_MapGrid1d(disp, fn) SET_by_offset(disp, _gloffset_MapGrid1d, fn)
+#define CALL_MapGrid1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat)), _gloffset_MapGrid1f, parameters)
+#define GET_MapGrid1f(disp) GET_by_offset(disp, _gloffset_MapGrid1f)
+#define SET_MapGrid1f(disp, fn) SET_by_offset(disp, _gloffset_MapGrid1f, fn)
+#define CALL_MapGrid2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLdouble, GLdouble, GLint, GLdouble, GLdouble)), _gloffset_MapGrid2d, parameters)
+#define GET_MapGrid2d(disp) GET_by_offset(disp, _gloffset_MapGrid2d)
+#define SET_MapGrid2d(disp, fn) SET_by_offset(disp, _gloffset_MapGrid2d, fn)
+#define CALL_MapGrid2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLint, GLfloat, GLfloat)), _gloffset_MapGrid2f, parameters)
+#define GET_MapGrid2f(disp) GET_by_offset(disp, _gloffset_MapGrid2f)
+#define SET_MapGrid2f(disp, fn) SET_by_offset(disp, _gloffset_MapGrid2f, fn)
+#define CALL_EvalCoord1d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), _gloffset_EvalCoord1d, parameters)
+#define GET_EvalCoord1d(disp) GET_by_offset(disp, _gloffset_EvalCoord1d)
+#define SET_EvalCoord1d(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1d, fn)
+#define CALL_EvalCoord1dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_EvalCoord1dv, parameters)
+#define GET_EvalCoord1dv(disp) GET_by_offset(disp, _gloffset_EvalCoord1dv)
+#define SET_EvalCoord1dv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1dv, fn)
+#define CALL_EvalCoord1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), _gloffset_EvalCoord1f, parameters)
+#define GET_EvalCoord1f(disp) GET_by_offset(disp, _gloffset_EvalCoord1f)
+#define SET_EvalCoord1f(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1f, fn)
+#define CALL_EvalCoord1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_EvalCoord1fv, parameters)
+#define GET_EvalCoord1fv(disp) GET_by_offset(disp, _gloffset_EvalCoord1fv)
+#define SET_EvalCoord1fv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord1fv, fn)
+#define CALL_EvalCoord2d(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), _gloffset_EvalCoord2d, parameters)
+#define GET_EvalCoord2d(disp) GET_by_offset(disp, _gloffset_EvalCoord2d)
+#define SET_EvalCoord2d(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2d, fn)
+#define CALL_EvalCoord2dv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_EvalCoord2dv, parameters)
+#define GET_EvalCoord2dv(disp) GET_by_offset(disp, _gloffset_EvalCoord2dv)
+#define SET_EvalCoord2dv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2dv, fn)
+#define CALL_EvalCoord2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_EvalCoord2f, parameters)
+#define GET_EvalCoord2f(disp) GET_by_offset(disp, _gloffset_EvalCoord2f)
+#define SET_EvalCoord2f(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2f, fn)
+#define CALL_EvalCoord2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_EvalCoord2fv, parameters)
+#define GET_EvalCoord2fv(disp) GET_by_offset(disp, _gloffset_EvalCoord2fv)
+#define SET_EvalCoord2fv(disp, fn) SET_by_offset(disp, _gloffset_EvalCoord2fv, fn)
+#define CALL_EvalMesh1(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint)), _gloffset_EvalMesh1, parameters)
+#define GET_EvalMesh1(disp) GET_by_offset(disp, _gloffset_EvalMesh1)
+#define SET_EvalMesh1(disp, fn) SET_by_offset(disp, _gloffset_EvalMesh1, fn)
+#define CALL_EvalPoint1(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_EvalPoint1, parameters)
+#define GET_EvalPoint1(disp) GET_by_offset(disp, _gloffset_EvalPoint1)
+#define SET_EvalPoint1(disp, fn) SET_by_offset(disp, _gloffset_EvalPoint1, fn)
+#define CALL_EvalMesh2(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint)), _gloffset_EvalMesh2, parameters)
+#define GET_EvalMesh2(disp) GET_by_offset(disp, _gloffset_EvalMesh2)
+#define SET_EvalMesh2(disp, fn) SET_by_offset(disp, _gloffset_EvalMesh2, fn)
+#define CALL_EvalPoint2(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_EvalPoint2, parameters)
+#define GET_EvalPoint2(disp) GET_by_offset(disp, _gloffset_EvalPoint2)
+#define SET_EvalPoint2(disp, fn) SET_by_offset(disp, _gloffset_EvalPoint2, fn)
+#define CALL_AlphaFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLclampf)), _gloffset_AlphaFunc, parameters)
+#define GET_AlphaFunc(disp) GET_by_offset(disp, _gloffset_AlphaFunc)
+#define SET_AlphaFunc(disp, fn) SET_by_offset(disp, _gloffset_AlphaFunc, fn)
+#define CALL_BlendFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_BlendFunc, parameters)
+#define GET_BlendFunc(disp) GET_by_offset(disp, _gloffset_BlendFunc)
+#define SET_BlendFunc(disp, fn) SET_by_offset(disp, _gloffset_BlendFunc, fn)
+#define CALL_LogicOp(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_LogicOp, parameters)
+#define GET_LogicOp(disp) GET_by_offset(disp, _gloffset_LogicOp)
+#define SET_LogicOp(disp, fn) SET_by_offset(disp, _gloffset_LogicOp, fn)
+#define CALL_StencilFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLuint)), _gloffset_StencilFunc, parameters)
+#define GET_StencilFunc(disp) GET_by_offset(disp, _gloffset_StencilFunc)
+#define SET_StencilFunc(disp, fn) SET_by_offset(disp, _gloffset_StencilFunc, fn)
+#define CALL_StencilOp(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum)), _gloffset_StencilOp, parameters)
+#define GET_StencilOp(disp) GET_by_offset(disp, _gloffset_StencilOp)
+#define SET_StencilOp(disp, fn) SET_by_offset(disp, _gloffset_StencilOp, fn)
+#define CALL_DepthFunc(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DepthFunc, parameters)
+#define GET_DepthFunc(disp) GET_by_offset(disp, _gloffset_DepthFunc)
+#define SET_DepthFunc(disp, fn) SET_by_offset(disp, _gloffset_DepthFunc, fn)
+#define CALL_PixelZoom(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_PixelZoom, parameters)
+#define GET_PixelZoom(disp) GET_by_offset(disp, _gloffset_PixelZoom)
+#define SET_PixelZoom(disp, fn) SET_by_offset(disp, _gloffset_PixelZoom, fn)
+#define CALL_PixelTransferf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_PixelTransferf, parameters)
+#define GET_PixelTransferf(disp) GET_by_offset(disp, _gloffset_PixelTransferf)
+#define SET_PixelTransferf(disp, fn) SET_by_offset(disp, _gloffset_PixelTransferf, fn)
+#define CALL_PixelTransferi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_PixelTransferi, parameters)
+#define GET_PixelTransferi(disp) GET_by_offset(disp, _gloffset_PixelTransferi)
+#define SET_PixelTransferi(disp, fn) SET_by_offset(disp, _gloffset_PixelTransferi, fn)
+#define CALL_PixelStoref(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_PixelStoref, parameters)
+#define GET_PixelStoref(disp) GET_by_offset(disp, _gloffset_PixelStoref)
+#define SET_PixelStoref(disp, fn) SET_by_offset(disp, _gloffset_PixelStoref, fn)
+#define CALL_PixelStorei(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_PixelStorei, parameters)
+#define GET_PixelStorei(disp) GET_by_offset(disp, _gloffset_PixelStorei)
+#define SET_PixelStorei(disp, fn) SET_by_offset(disp, _gloffset_PixelStorei, fn)
+#define CALL_PixelMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLfloat *)), _gloffset_PixelMapfv, parameters)
+#define GET_PixelMapfv(disp) GET_by_offset(disp, _gloffset_PixelMapfv)
+#define SET_PixelMapfv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapfv, fn)
+#define CALL_PixelMapuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLuint *)), _gloffset_PixelMapuiv, parameters)
+#define GET_PixelMapuiv(disp) GET_by_offset(disp, _gloffset_PixelMapuiv)
+#define SET_PixelMapuiv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapuiv, fn)
+#define CALL_PixelMapusv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLushort *)), _gloffset_PixelMapusv, parameters)
+#define GET_PixelMapusv(disp) GET_by_offset(disp, _gloffset_PixelMapusv)
+#define SET_PixelMapusv(disp, fn) SET_by_offset(disp, _gloffset_PixelMapusv, fn)
+#define CALL_ReadBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ReadBuffer, parameters)
+#define GET_ReadBuffer(disp) GET_by_offset(disp, _gloffset_ReadBuffer)
+#define SET_ReadBuffer(disp, fn) SET_by_offset(disp, _gloffset_ReadBuffer, fn)
+#define CALL_CopyPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei, GLenum)), _gloffset_CopyPixels, parameters)
+#define GET_CopyPixels(disp) GET_by_offset(disp, _gloffset_CopyPixels)
+#define SET_CopyPixels(disp, fn) SET_by_offset(disp, _gloffset_CopyPixels, fn)
+#define CALL_ReadPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid *)), _gloffset_ReadPixels, parameters)
+#define GET_ReadPixels(disp) GET_by_offset(disp, _gloffset_ReadPixels)
+#define SET_ReadPixels(disp, fn) SET_by_offset(disp, _gloffset_ReadPixels, fn)
+#define CALL_DrawPixels(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_DrawPixels, parameters)
+#define GET_DrawPixels(disp) GET_by_offset(disp, _gloffset_DrawPixels)
+#define SET_DrawPixels(disp, fn) SET_by_offset(disp, _gloffset_DrawPixels, fn)
+#define CALL_GetBooleanv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean *)), _gloffset_GetBooleanv, parameters)
+#define GET_GetBooleanv(disp) GET_by_offset(disp, _gloffset_GetBooleanv)
+#define SET_GetBooleanv(disp, fn) SET_by_offset(disp, _gloffset_GetBooleanv, fn)
+#define CALL_GetClipPlane(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), _gloffset_GetClipPlane, parameters)
+#define GET_GetClipPlane(disp) GET_by_offset(disp, _gloffset_GetClipPlane)
+#define SET_GetClipPlane(disp, fn) SET_by_offset(disp, _gloffset_GetClipPlane, fn)
+#define CALL_GetDoublev(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), _gloffset_GetDoublev, parameters)
+#define GET_GetDoublev(disp) GET_by_offset(disp, _gloffset_GetDoublev)
+#define SET_GetDoublev(disp, fn) SET_by_offset(disp, _gloffset_GetDoublev, fn)
+#define CALL_GetError(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(void)), _gloffset_GetError, parameters)
+#define GET_GetError(disp) GET_by_offset(disp, _gloffset_GetError)
+#define SET_GetError(disp, fn) SET_by_offset(disp, _gloffset_GetError, fn)
+#define CALL_GetFloatv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), _gloffset_GetFloatv, parameters)
+#define GET_GetFloatv(disp) GET_by_offset(disp, _gloffset_GetFloatv)
+#define SET_GetFloatv(disp, fn) SET_by_offset(disp, _gloffset_GetFloatv, fn)
+#define CALL_GetIntegerv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), _gloffset_GetIntegerv, parameters)
+#define GET_GetIntegerv(disp) GET_by_offset(disp, _gloffset_GetIntegerv)
+#define SET_GetIntegerv(disp, fn) SET_by_offset(disp, _gloffset_GetIntegerv, fn)
+#define CALL_GetLightfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetLightfv, parameters)
+#define GET_GetLightfv(disp) GET_by_offset(disp, _gloffset_GetLightfv)
+#define SET_GetLightfv(disp, fn) SET_by_offset(disp, _gloffset_GetLightfv, fn)
+#define CALL_GetLightiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetLightiv, parameters)
+#define GET_GetLightiv(disp) GET_by_offset(disp, _gloffset_GetLightiv)
+#define SET_GetLightiv(disp, fn) SET_by_offset(disp, _gloffset_GetLightiv, fn)
+#define CALL_GetMapdv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble *)), _gloffset_GetMapdv, parameters)
+#define GET_GetMapdv(disp) GET_by_offset(disp, _gloffset_GetMapdv)
+#define SET_GetMapdv(disp, fn) SET_by_offset(disp, _gloffset_GetMapdv, fn)
+#define CALL_GetMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMapfv, parameters)
+#define GET_GetMapfv(disp) GET_by_offset(disp, _gloffset_GetMapfv)
+#define SET_GetMapfv(disp, fn) SET_by_offset(disp, _gloffset_GetMapfv, fn)
+#define CALL_GetMapiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMapiv, parameters)
+#define GET_GetMapiv(disp) GET_by_offset(disp, _gloffset_GetMapiv)
+#define SET_GetMapiv(disp, fn) SET_by_offset(disp, _gloffset_GetMapiv, fn)
+#define CALL_GetMaterialfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMaterialfv, parameters)
+#define GET_GetMaterialfv(disp) GET_by_offset(disp, _gloffset_GetMaterialfv)
+#define SET_GetMaterialfv(disp, fn) SET_by_offset(disp, _gloffset_GetMaterialfv, fn)
+#define CALL_GetMaterialiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMaterialiv, parameters)
+#define GET_GetMaterialiv(disp) GET_by_offset(disp, _gloffset_GetMaterialiv)
+#define SET_GetMaterialiv(disp, fn) SET_by_offset(disp, _gloffset_GetMaterialiv, fn)
+#define CALL_GetPixelMapfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), _gloffset_GetPixelMapfv, parameters)
+#define GET_GetPixelMapfv(disp) GET_by_offset(disp, _gloffset_GetPixelMapfv)
+#define SET_GetPixelMapfv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapfv, fn)
+#define CALL_GetPixelMapuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint *)), _gloffset_GetPixelMapuiv, parameters)
+#define GET_GetPixelMapuiv(disp) GET_by_offset(disp, _gloffset_GetPixelMapuiv)
+#define SET_GetPixelMapuiv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapuiv, fn)
+#define CALL_GetPixelMapusv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLushort *)), _gloffset_GetPixelMapusv, parameters)
+#define GET_GetPixelMapusv(disp) GET_by_offset(disp, _gloffset_GetPixelMapusv)
+#define SET_GetPixelMapusv(disp, fn) SET_by_offset(disp, _gloffset_GetPixelMapusv, fn)
+#define CALL_GetPolygonStipple(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte *)), _gloffset_GetPolygonStipple, parameters)
+#define GET_GetPolygonStipple(disp) GET_by_offset(disp, _gloffset_GetPolygonStipple)
+#define SET_GetPolygonStipple(disp, fn) SET_by_offset(disp, _gloffset_GetPolygonStipple, fn)
+#define CALL_GetString(disp, parameters) CALL_by_offset(disp, (const GLubyte * (GLAPIENTRYP)(GLenum)), _gloffset_GetString, parameters)
+#define GET_GetString(disp) GET_by_offset(disp, _gloffset_GetString)
+#define SET_GetString(disp, fn) SET_by_offset(disp, _gloffset_GetString, fn)
+#define CALL_GetTexEnvfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexEnvfv, parameters)
+#define GET_GetTexEnvfv(disp) GET_by_offset(disp, _gloffset_GetTexEnvfv)
+#define SET_GetTexEnvfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexEnvfv, fn)
+#define CALL_GetTexEnviv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexEnviv, parameters)
+#define GET_GetTexEnviv(disp) GET_by_offset(disp, _gloffset_GetTexEnviv)
+#define SET_GetTexEnviv(disp, fn) SET_by_offset(disp, _gloffset_GetTexEnviv, fn)
+#define CALL_GetTexGendv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLdouble *)), _gloffset_GetTexGendv, parameters)
+#define GET_GetTexGendv(disp) GET_by_offset(disp, _gloffset_GetTexGendv)
+#define SET_GetTexGendv(disp, fn) SET_by_offset(disp, _gloffset_GetTexGendv, fn)
+#define CALL_GetTexGenfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexGenfv, parameters)
+#define GET_GetTexGenfv(disp) GET_by_offset(disp, _gloffset_GetTexGenfv)
+#define SET_GetTexGenfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexGenfv, fn)
+#define CALL_GetTexGeniv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexGeniv, parameters)
+#define GET_GetTexGeniv(disp) GET_by_offset(disp, _gloffset_GetTexGeniv)
+#define SET_GetTexGeniv(disp, fn) SET_by_offset(disp, _gloffset_GetTexGeniv, fn)
+#define CALL_GetTexImage(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLenum, GLvoid *)), _gloffset_GetTexImage, parameters)
+#define GET_GetTexImage(disp) GET_by_offset(disp, _gloffset_GetTexImage)
+#define SET_GetTexImage(disp, fn) SET_by_offset(disp, _gloffset_GetTexImage, fn)
+#define CALL_GetTexParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetTexParameterfv, parameters)
+#define GET_GetTexParameterfv(disp) GET_by_offset(disp, _gloffset_GetTexParameterfv)
+#define SET_GetTexParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexParameterfv, fn)
+#define CALL_GetTexParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetTexParameteriv, parameters)
+#define GET_GetTexParameteriv(disp) GET_by_offset(disp, _gloffset_GetTexParameteriv)
+#define SET_GetTexParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetTexParameteriv, fn)
+#define CALL_GetTexLevelParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLfloat *)), _gloffset_GetTexLevelParameterfv, parameters)
+#define GET_GetTexLevelParameterfv(disp) GET_by_offset(disp, _gloffset_GetTexLevelParameterfv)
+#define SET_GetTexLevelParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetTexLevelParameterfv, fn)
+#define CALL_GetTexLevelParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint *)), _gloffset_GetTexLevelParameteriv, parameters)
+#define GET_GetTexLevelParameteriv(disp) GET_by_offset(disp, _gloffset_GetTexLevelParameteriv)
+#define SET_GetTexLevelParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetTexLevelParameteriv, fn)
+#define CALL_IsEnabled(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), _gloffset_IsEnabled, parameters)
+#define GET_IsEnabled(disp) GET_by_offset(disp, _gloffset_IsEnabled)
+#define SET_IsEnabled(disp, fn) SET_by_offset(disp, _gloffset_IsEnabled, fn)
+#define CALL_IsList(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsList, parameters)
+#define GET_IsList(disp) GET_by_offset(disp, _gloffset_IsList)
+#define SET_IsList(disp, fn) SET_by_offset(disp, _gloffset_IsList, fn)
+#define CALL_DepthRange(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd, GLclampd)), _gloffset_DepthRange, parameters)
+#define GET_DepthRange(disp) GET_by_offset(disp, _gloffset_DepthRange)
+#define SET_DepthRange(disp, fn) SET_by_offset(disp, _gloffset_DepthRange, fn)
+#define CALL_Frustum(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Frustum, parameters)
+#define GET_Frustum(disp) GET_by_offset(disp, _gloffset_Frustum)
+#define SET_Frustum(disp, fn) SET_by_offset(disp, _gloffset_Frustum, fn)
+#define CALL_LoadIdentity(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_LoadIdentity, parameters)
+#define GET_LoadIdentity(disp) GET_by_offset(disp, _gloffset_LoadIdentity)
+#define SET_LoadIdentity(disp, fn) SET_by_offset(disp, _gloffset_LoadIdentity, fn)
+#define CALL_LoadMatrixf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_LoadMatrixf, parameters)
+#define GET_LoadMatrixf(disp) GET_by_offset(disp, _gloffset_LoadMatrixf)
+#define SET_LoadMatrixf(disp, fn) SET_by_offset(disp, _gloffset_LoadMatrixf, fn)
+#define CALL_LoadMatrixd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_LoadMatrixd, parameters)
+#define GET_LoadMatrixd(disp) GET_by_offset(disp, _gloffset_LoadMatrixd)
+#define SET_LoadMatrixd(disp, fn) SET_by_offset(disp, _gloffset_LoadMatrixd, fn)
+#define CALL_MatrixMode(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_MatrixMode, parameters)
+#define GET_MatrixMode(disp) GET_by_offset(disp, _gloffset_MatrixMode)
+#define SET_MatrixMode(disp, fn) SET_by_offset(disp, _gloffset_MatrixMode, fn)
+#define CALL_MultMatrixf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), _gloffset_MultMatrixf, parameters)
+#define GET_MultMatrixf(disp) GET_by_offset(disp, _gloffset_MultMatrixf)
+#define SET_MultMatrixf(disp, fn) SET_by_offset(disp, _gloffset_MultMatrixf, fn)
+#define CALL_MultMatrixd(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), _gloffset_MultMatrixd, parameters)
+#define GET_MultMatrixd(disp) GET_by_offset(disp, _gloffset_MultMatrixd)
+#define SET_MultMatrixd(disp, fn) SET_by_offset(disp, _gloffset_MultMatrixd, fn)
+#define CALL_Ortho(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Ortho, parameters)
+#define GET_Ortho(disp) GET_by_offset(disp, _gloffset_Ortho)
+#define SET_Ortho(disp, fn) SET_by_offset(disp, _gloffset_Ortho, fn)
+#define CALL_PopMatrix(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopMatrix, parameters)
+#define GET_PopMatrix(disp) GET_by_offset(disp, _gloffset_PopMatrix)
+#define SET_PopMatrix(disp, fn) SET_by_offset(disp, _gloffset_PopMatrix, fn)
+#define CALL_PushMatrix(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PushMatrix, parameters)
+#define GET_PushMatrix(disp) GET_by_offset(disp, _gloffset_PushMatrix)
+#define SET_PushMatrix(disp, fn) SET_by_offset(disp, _gloffset_PushMatrix, fn)
+#define CALL_Rotated(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_Rotated, parameters)
+#define GET_Rotated(disp) GET_by_offset(disp, _gloffset_Rotated)
+#define SET_Rotated(disp, fn) SET_by_offset(disp, _gloffset_Rotated, fn)
+#define CALL_Rotatef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Rotatef, parameters)
+#define GET_Rotatef(disp) GET_by_offset(disp, _gloffset_Rotatef)
+#define SET_Rotatef(disp, fn) SET_by_offset(disp, _gloffset_Rotatef, fn)
+#define CALL_Scaled(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Scaled, parameters)
+#define GET_Scaled(disp) GET_by_offset(disp, _gloffset_Scaled)
+#define SET_Scaled(disp, fn) SET_by_offset(disp, _gloffset_Scaled, fn)
+#define CALL_Scalef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Scalef, parameters)
+#define GET_Scalef(disp) GET_by_offset(disp, _gloffset_Scalef)
+#define SET_Scalef(disp, fn) SET_by_offset(disp, _gloffset_Scalef, fn)
+#define CALL_Translated(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), _gloffset_Translated, parameters)
+#define GET_Translated(disp) GET_by_offset(disp, _gloffset_Translated)
+#define SET_Translated(disp, fn) SET_by_offset(disp, _gloffset_Translated, fn)
+#define CALL_Translatef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), _gloffset_Translatef, parameters)
+#define GET_Translatef(disp) GET_by_offset(disp, _gloffset_Translatef)
+#define SET_Translatef(disp, fn) SET_by_offset(disp, _gloffset_Translatef, fn)
+#define CALL_Viewport(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei)), _gloffset_Viewport, parameters)
+#define GET_Viewport(disp) GET_by_offset(disp, _gloffset_Viewport)
+#define SET_Viewport(disp, fn) SET_by_offset(disp, _gloffset_Viewport, fn)
+#define CALL_ArrayElement(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint)), _gloffset_ArrayElement, parameters)
+#define GET_ArrayElement(disp) GET_by_offset(disp, _gloffset_ArrayElement)
+#define SET_ArrayElement(disp, fn) SET_by_offset(disp, _gloffset_ArrayElement, fn)
+#define CALL_BindTexture(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindTexture, parameters)
+#define GET_BindTexture(disp) GET_by_offset(disp, _gloffset_BindTexture)
+#define SET_BindTexture(disp, fn) SET_by_offset(disp, _gloffset_BindTexture, fn)
+#define CALL_ColorPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_ColorPointer, parameters)
+#define GET_ColorPointer(disp) GET_by_offset(disp, _gloffset_ColorPointer)
+#define SET_ColorPointer(disp, fn) SET_by_offset(disp, _gloffset_ColorPointer, fn)
+#define CALL_DisableClientState(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_DisableClientState, parameters)
+#define GET_DisableClientState(disp) GET_by_offset(disp, _gloffset_DisableClientState)
+#define SET_DisableClientState(disp, fn) SET_by_offset(disp, _gloffset_DisableClientState, fn)
+#define CALL_DrawArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei)), _gloffset_DrawArrays, parameters)
+#define GET_DrawArrays(disp) GET_by_offset(disp, _gloffset_DrawArrays)
+#define SET_DrawArrays(disp, fn) SET_by_offset(disp, _gloffset_DrawArrays, fn)
+#define CALL_DrawElements(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *)), _gloffset_DrawElements, parameters)
+#define GET_DrawElements(disp) GET_by_offset(disp, _gloffset_DrawElements)
+#define SET_DrawElements(disp, fn) SET_by_offset(disp, _gloffset_DrawElements, fn)
+#define CALL_EdgeFlagPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLvoid *)), _gloffset_EdgeFlagPointer, parameters)
+#define GET_EdgeFlagPointer(disp) GET_by_offset(disp, _gloffset_EdgeFlagPointer)
+#define SET_EdgeFlagPointer(disp, fn) SET_by_offset(disp, _gloffset_EdgeFlagPointer, fn)
+#define CALL_EnableClientState(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_EnableClientState, parameters)
+#define GET_EnableClientState(disp) GET_by_offset(disp, _gloffset_EnableClientState)
+#define SET_EnableClientState(disp, fn) SET_by_offset(disp, _gloffset_EnableClientState, fn)
+#define CALL_IndexPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_IndexPointer, parameters)
+#define GET_IndexPointer(disp) GET_by_offset(disp, _gloffset_IndexPointer)
+#define SET_IndexPointer(disp, fn) SET_by_offset(disp, _gloffset_IndexPointer, fn)
+#define CALL_Indexub(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte)), _gloffset_Indexub, parameters)
+#define GET_Indexub(disp) GET_by_offset(disp, _gloffset_Indexub)
+#define SET_Indexub(disp, fn) SET_by_offset(disp, _gloffset_Indexub, fn)
+#define CALL_Indexubv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), _gloffset_Indexubv, parameters)
+#define GET_Indexubv(disp) GET_by_offset(disp, _gloffset_Indexubv)
+#define SET_Indexubv(disp, fn) SET_by_offset(disp, _gloffset_Indexubv, fn)
+#define CALL_InterleavedArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_InterleavedArrays, parameters)
+#define GET_InterleavedArrays(disp) GET_by_offset(disp, _gloffset_InterleavedArrays)
+#define SET_InterleavedArrays(disp, fn) SET_by_offset(disp, _gloffset_InterleavedArrays, fn)
+#define CALL_NormalPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), _gloffset_NormalPointer, parameters)
+#define GET_NormalPointer(disp) GET_by_offset(disp, _gloffset_NormalPointer)
+#define SET_NormalPointer(disp, fn) SET_by_offset(disp, _gloffset_NormalPointer, fn)
+#define CALL_PolygonOffset(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_PolygonOffset, parameters)
+#define GET_PolygonOffset(disp) GET_by_offset(disp, _gloffset_PolygonOffset)
+#define SET_PolygonOffset(disp, fn) SET_by_offset(disp, _gloffset_PolygonOffset, fn)
+#define CALL_TexCoordPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_TexCoordPointer, parameters)
+#define GET_TexCoordPointer(disp) GET_by_offset(disp, _gloffset_TexCoordPointer)
+#define SET_TexCoordPointer(disp, fn) SET_by_offset(disp, _gloffset_TexCoordPointer, fn)
+#define CALL_VertexPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), _gloffset_VertexPointer, parameters)
+#define GET_VertexPointer(disp) GET_by_offset(disp, _gloffset_VertexPointer)
+#define SET_VertexPointer(disp, fn) SET_by_offset(disp, _gloffset_VertexPointer, fn)
+#define CALL_AreTexturesResident(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsizei, const GLuint *, GLboolean *)), _gloffset_AreTexturesResident, parameters)
+#define GET_AreTexturesResident(disp) GET_by_offset(disp, _gloffset_AreTexturesResident)
+#define SET_AreTexturesResident(disp, fn) SET_by_offset(disp, _gloffset_AreTexturesResident, fn)
+#define CALL_CopyTexImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint)), _gloffset_CopyTexImage1D, parameters)
+#define GET_CopyTexImage1D(disp) GET_by_offset(disp, _gloffset_CopyTexImage1D)
+#define SET_CopyTexImage1D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexImage1D, fn)
+#define CALL_CopyTexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint)), _gloffset_CopyTexImage2D, parameters)
+#define GET_CopyTexImage2D(disp) GET_by_offset(disp, _gloffset_CopyTexImage2D)
+#define SET_CopyTexImage2D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexImage2D, fn)
+#define CALL_CopyTexSubImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei)), _gloffset_CopyTexSubImage1D, parameters)
+#define GET_CopyTexSubImage1D(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage1D)
+#define SET_CopyTexSubImage1D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage1D, fn)
+#define CALL_CopyTexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyTexSubImage2D, parameters)
+#define GET_CopyTexSubImage2D(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage2D)
+#define SET_CopyTexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage2D, fn)
+#define CALL_DeleteTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteTextures, parameters)
+#define GET_DeleteTextures(disp) GET_by_offset(disp, _gloffset_DeleteTextures)
+#define SET_DeleteTextures(disp, fn) SET_by_offset(disp, _gloffset_DeleteTextures, fn)
+#define CALL_GenTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenTextures, parameters)
+#define GET_GenTextures(disp) GET_by_offset(disp, _gloffset_GenTextures)
+#define SET_GenTextures(disp, fn) SET_by_offset(disp, _gloffset_GenTextures, fn)
+#define CALL_GetPointerv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid **)), _gloffset_GetPointerv, parameters)
+#define GET_GetPointerv(disp) GET_by_offset(disp, _gloffset_GetPointerv)
+#define SET_GetPointerv(disp, fn) SET_by_offset(disp, _gloffset_GetPointerv, fn)
+#define CALL_IsTexture(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsTexture, parameters)
+#define GET_IsTexture(disp) GET_by_offset(disp, _gloffset_IsTexture)
+#define SET_IsTexture(disp, fn) SET_by_offset(disp, _gloffset_IsTexture, fn)
+#define CALL_PrioritizeTextures(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *, const GLclampf *)), _gloffset_PrioritizeTextures, parameters)
+#define GET_PrioritizeTextures(disp) GET_by_offset(disp, _gloffset_PrioritizeTextures)
+#define SET_PrioritizeTextures(disp, fn) SET_by_offset(disp, _gloffset_PrioritizeTextures, fn)
+#define CALL_TexSubImage1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage1D, parameters)
+#define GET_TexSubImage1D(disp) GET_by_offset(disp, _gloffset_TexSubImage1D)
+#define SET_TexSubImage1D(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage1D, fn)
+#define CALL_TexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage2D, parameters)
+#define GET_TexSubImage2D(disp) GET_by_offset(disp, _gloffset_TexSubImage2D)
+#define SET_TexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage2D, fn)
+#define CALL_PopClientAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_PopClientAttrib, parameters)
+#define GET_PopClientAttrib(disp) GET_by_offset(disp, _gloffset_PopClientAttrib)
+#define SET_PopClientAttrib(disp, fn) SET_by_offset(disp, _gloffset_PopClientAttrib, fn)
+#define CALL_PushClientAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbitfield)), _gloffset_PushClientAttrib, parameters)
+#define GET_PushClientAttrib(disp) GET_by_offset(disp, _gloffset_PushClientAttrib)
+#define SET_PushClientAttrib(disp, fn) SET_by_offset(disp, _gloffset_PushClientAttrib, fn)
+#define CALL_BlendColor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf, GLclampf, GLclampf)), _gloffset_BlendColor, parameters)
+#define GET_BlendColor(disp) GET_by_offset(disp, _gloffset_BlendColor)
+#define SET_BlendColor(disp, fn) SET_by_offset(disp, _gloffset_BlendColor, fn)
+#define CALL_BlendEquation(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_BlendEquation, parameters)
+#define GET_BlendEquation(disp) GET_by_offset(disp, _gloffset_BlendEquation)
+#define SET_BlendEquation(disp, fn) SET_by_offset(disp, _gloffset_BlendEquation, fn)
+#define CALL_DrawRangeElements(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *)), _gloffset_DrawRangeElements, parameters)
+#define GET_DrawRangeElements(disp) GET_by_offset(disp, _gloffset_DrawRangeElements)
+#define SET_DrawRangeElements(disp, fn) SET_by_offset(disp, _gloffset_DrawRangeElements, fn)
+#define CALL_ColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ColorTable, parameters)
+#define GET_ColorTable(disp) GET_by_offset(disp, _gloffset_ColorTable)
+#define SET_ColorTable(disp, fn) SET_by_offset(disp, _gloffset_ColorTable, fn)
+#define CALL_ColorTableParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_ColorTableParameterfv, parameters)
+#define GET_ColorTableParameterfv(disp) GET_by_offset(disp, _gloffset_ColorTableParameterfv)
+#define SET_ColorTableParameterfv(disp, fn) SET_by_offset(disp, _gloffset_ColorTableParameterfv, fn)
+#define CALL_ColorTableParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_ColorTableParameteriv, parameters)
+#define GET_ColorTableParameteriv(disp) GET_by_offset(disp, _gloffset_ColorTableParameteriv)
+#define SET_ColorTableParameteriv(disp, fn) SET_by_offset(disp, _gloffset_ColorTableParameteriv, fn)
+#define CALL_CopyColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei)), _gloffset_CopyColorTable, parameters)
+#define GET_CopyColorTable(disp) GET_by_offset(disp, _gloffset_CopyColorTable)
+#define SET_CopyColorTable(disp, fn) SET_by_offset(disp, _gloffset_CopyColorTable, fn)
+#define CALL_GetColorTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *)), _gloffset_GetColorTable, parameters)
+#define GET_GetColorTable(disp) GET_by_offset(disp, _gloffset_GetColorTable)
+#define SET_GetColorTable(disp, fn) SET_by_offset(disp, _gloffset_GetColorTable, fn)
+#define CALL_GetColorTableParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetColorTableParameterfv, parameters)
+#define GET_GetColorTableParameterfv(disp) GET_by_offset(disp, _gloffset_GetColorTableParameterfv)
+#define SET_GetColorTableParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetColorTableParameterfv, fn)
+#define CALL_GetColorTableParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetColorTableParameteriv, parameters)
+#define GET_GetColorTableParameteriv(disp) GET_by_offset(disp, _gloffset_GetColorTableParameteriv)
+#define SET_GetColorTableParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetColorTableParameteriv, fn)
+#define CALL_ColorSubTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ColorSubTable, parameters)
+#define GET_ColorSubTable(disp) GET_by_offset(disp, _gloffset_ColorSubTable)
+#define SET_ColorSubTable(disp, fn) SET_by_offset(disp, _gloffset_ColorSubTable, fn)
+#define CALL_CopyColorSubTable(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLint, GLint, GLsizei)), _gloffset_CopyColorSubTable, parameters)
+#define GET_CopyColorSubTable(disp) GET_by_offset(disp, _gloffset_CopyColorSubTable)
+#define SET_CopyColorSubTable(disp, fn) SET_by_offset(disp, _gloffset_CopyColorSubTable, fn)
+#define CALL_ConvolutionFilter1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ConvolutionFilter1D, parameters)
+#define GET_ConvolutionFilter1D(disp) GET_by_offset(disp, _gloffset_ConvolutionFilter1D)
+#define SET_ConvolutionFilter1D(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionFilter1D, fn)
+#define CALL_ConvolutionFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_ConvolutionFilter2D, parameters)
+#define GET_ConvolutionFilter2D(disp) GET_by_offset(disp, _gloffset_ConvolutionFilter2D)
+#define SET_ConvolutionFilter2D(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionFilter2D, fn)
+#define CALL_ConvolutionParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat)), _gloffset_ConvolutionParameterf, parameters)
+#define GET_ConvolutionParameterf(disp) GET_by_offset(disp, _gloffset_ConvolutionParameterf)
+#define SET_ConvolutionParameterf(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameterf, fn)
+#define CALL_ConvolutionParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLfloat *)), _gloffset_ConvolutionParameterfv, parameters)
+#define GET_ConvolutionParameterfv(disp) GET_by_offset(disp, _gloffset_ConvolutionParameterfv)
+#define SET_ConvolutionParameterfv(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameterfv, fn)
+#define CALL_ConvolutionParameteri(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), _gloffset_ConvolutionParameteri, parameters)
+#define GET_ConvolutionParameteri(disp) GET_by_offset(disp, _gloffset_ConvolutionParameteri)
+#define SET_ConvolutionParameteri(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameteri, fn)
+#define CALL_ConvolutionParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, const GLint *)), _gloffset_ConvolutionParameteriv, parameters)
+#define GET_ConvolutionParameteriv(disp) GET_by_offset(disp, _gloffset_ConvolutionParameteriv)
+#define SET_ConvolutionParameteriv(disp, fn) SET_by_offset(disp, _gloffset_ConvolutionParameteriv, fn)
+#define CALL_CopyConvolutionFilter1D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei)), _gloffset_CopyConvolutionFilter1D, parameters)
+#define GET_CopyConvolutionFilter1D(disp) GET_by_offset(disp, _gloffset_CopyConvolutionFilter1D)
+#define SET_CopyConvolutionFilter1D(disp, fn) SET_by_offset(disp, _gloffset_CopyConvolutionFilter1D, fn)
+#define CALL_CopyConvolutionFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyConvolutionFilter2D, parameters)
+#define GET_CopyConvolutionFilter2D(disp) GET_by_offset(disp, _gloffset_CopyConvolutionFilter2D)
+#define SET_CopyConvolutionFilter2D(disp, fn) SET_by_offset(disp, _gloffset_CopyConvolutionFilter2D, fn)
+#define CALL_GetConvolutionFilter(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *)), _gloffset_GetConvolutionFilter, parameters)
+#define GET_GetConvolutionFilter(disp) GET_by_offset(disp, _gloffset_GetConvolutionFilter)
+#define SET_GetConvolutionFilter(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionFilter, fn)
+#define CALL_GetConvolutionParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetConvolutionParameterfv, parameters)
+#define GET_GetConvolutionParameterfv(disp) GET_by_offset(disp, _gloffset_GetConvolutionParameterfv)
+#define SET_GetConvolutionParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionParameterfv, fn)
+#define CALL_GetConvolutionParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetConvolutionParameteriv, parameters)
+#define GET_GetConvolutionParameteriv(disp) GET_by_offset(disp, _gloffset_GetConvolutionParameteriv)
+#define SET_GetConvolutionParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetConvolutionParameteriv, fn)
+#define CALL_GetSeparableFilter(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *)), _gloffset_GetSeparableFilter, parameters)
+#define GET_GetSeparableFilter(disp) GET_by_offset(disp, _gloffset_GetSeparableFilter)
+#define SET_GetSeparableFilter(disp, fn) SET_by_offset(disp, _gloffset_GetSeparableFilter, fn)
+#define CALL_SeparableFilter2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *)), _gloffset_SeparableFilter2D, parameters)
+#define GET_SeparableFilter2D(disp) GET_by_offset(disp, _gloffset_SeparableFilter2D)
+#define SET_SeparableFilter2D(disp, fn) SET_by_offset(disp, _gloffset_SeparableFilter2D, fn)
+#define CALL_GetHistogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLvoid *)), _gloffset_GetHistogram, parameters)
+#define GET_GetHistogram(disp) GET_by_offset(disp, _gloffset_GetHistogram)
+#define SET_GetHistogram(disp, fn) SET_by_offset(disp, _gloffset_GetHistogram, fn)
+#define CALL_GetHistogramParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetHistogramParameterfv, parameters)
+#define GET_GetHistogramParameterfv(disp) GET_by_offset(disp, _gloffset_GetHistogramParameterfv)
+#define SET_GetHistogramParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetHistogramParameterfv, fn)
+#define CALL_GetHistogramParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetHistogramParameteriv, parameters)
+#define GET_GetHistogramParameteriv(disp) GET_by_offset(disp, _gloffset_GetHistogramParameteriv)
+#define SET_GetHistogramParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetHistogramParameteriv, fn)
+#define CALL_GetMinmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLvoid *)), _gloffset_GetMinmax, parameters)
+#define GET_GetMinmax(disp) GET_by_offset(disp, _gloffset_GetMinmax)
+#define SET_GetMinmax(disp, fn) SET_by_offset(disp, _gloffset_GetMinmax, fn)
+#define CALL_GetMinmaxParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), _gloffset_GetMinmaxParameterfv, parameters)
+#define GET_GetMinmaxParameterfv(disp) GET_by_offset(disp, _gloffset_GetMinmaxParameterfv)
+#define SET_GetMinmaxParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetMinmaxParameterfv, fn)
+#define CALL_GetMinmaxParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetMinmaxParameteriv, parameters)
+#define GET_GetMinmaxParameteriv(disp) GET_by_offset(disp, _gloffset_GetMinmaxParameteriv)
+#define SET_GetMinmaxParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetMinmaxParameteriv, fn)
+#define CALL_Histogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, GLboolean)), _gloffset_Histogram, parameters)
+#define GET_Histogram(disp) GET_by_offset(disp, _gloffset_Histogram)
+#define SET_Histogram(disp, fn) SET_by_offset(disp, _gloffset_Histogram, fn)
+#define CALL_Minmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLboolean)), _gloffset_Minmax, parameters)
+#define GET_Minmax(disp) GET_by_offset(disp, _gloffset_Minmax)
+#define SET_Minmax(disp, fn) SET_by_offset(disp, _gloffset_Minmax, fn)
+#define CALL_ResetHistogram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ResetHistogram, parameters)
+#define GET_ResetHistogram(disp) GET_by_offset(disp, _gloffset_ResetHistogram)
+#define SET_ResetHistogram(disp, fn) SET_by_offset(disp, _gloffset_ResetHistogram, fn)
+#define CALL_ResetMinmax(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ResetMinmax, parameters)
+#define GET_ResetMinmax(disp) GET_by_offset(disp, _gloffset_ResetMinmax)
+#define SET_ResetMinmax(disp, fn) SET_by_offset(disp, _gloffset_ResetMinmax, fn)
+#define CALL_TexImage3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *)), _gloffset_TexImage3DOES, parameters)
+#define GET_TexImage3DOES(disp) GET_by_offset(disp, _gloffset_TexImage3DOES)
+#define SET_TexImage3DOES(disp, fn) SET_by_offset(disp, _gloffset_TexImage3DOES, fn)
+#define CALL_TexSubImage3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *)), _gloffset_TexSubImage3DOES, parameters)
+#define GET_TexSubImage3DOES(disp) GET_by_offset(disp, _gloffset_TexSubImage3DOES)
+#define SET_TexSubImage3DOES(disp, fn) SET_by_offset(disp, _gloffset_TexSubImage3DOES, fn)
+#define CALL_CopyTexSubImage3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)), _gloffset_CopyTexSubImage3DOES, parameters)
+#define GET_CopyTexSubImage3DOES(disp) GET_by_offset(disp, _gloffset_CopyTexSubImage3DOES)
+#define SET_CopyTexSubImage3DOES(disp, fn) SET_by_offset(disp, _gloffset_CopyTexSubImage3DOES, fn)
+#define CALL_ActiveTexture(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ActiveTexture, parameters)
+#define GET_ActiveTexture(disp) GET_by_offset(disp, _gloffset_ActiveTexture)
+#define SET_ActiveTexture(disp, fn) SET_by_offset(disp, _gloffset_ActiveTexture, fn)
+#define CALL_ClientActiveTextureARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_ClientActiveTextureARB, parameters)
+#define GET_ClientActiveTextureARB(disp) GET_by_offset(disp, _gloffset_ClientActiveTextureARB)
+#define SET_ClientActiveTextureARB(disp, fn) SET_by_offset(disp, _gloffset_ClientActiveTextureARB, fn)
+#define CALL_MultiTexCoord1dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble)), _gloffset_MultiTexCoord1dARB, parameters)
+#define GET_MultiTexCoord1dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1dARB)
+#define SET_MultiTexCoord1dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1dARB, fn)
+#define CALL_MultiTexCoord1dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord1dvARB, parameters)
+#define GET_MultiTexCoord1dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1dvARB)
+#define SET_MultiTexCoord1dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1dvARB, fn)
+#define CALL_MultiTexCoord1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), _gloffset_MultiTexCoord1fARB, parameters)
+#define GET_MultiTexCoord1fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1fARB)
+#define SET_MultiTexCoord1fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1fARB, fn)
+#define CALL_MultiTexCoord1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord1fvARB, parameters)
+#define GET_MultiTexCoord1fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1fvARB)
+#define SET_MultiTexCoord1fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1fvARB, fn)
+#define CALL_MultiTexCoord1iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), _gloffset_MultiTexCoord1iARB, parameters)
+#define GET_MultiTexCoord1iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1iARB)
+#define SET_MultiTexCoord1iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1iARB, fn)
+#define CALL_MultiTexCoord1ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord1ivARB, parameters)
+#define GET_MultiTexCoord1ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1ivARB)
+#define SET_MultiTexCoord1ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1ivARB, fn)
+#define CALL_MultiTexCoord1sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort)), _gloffset_MultiTexCoord1sARB, parameters)
+#define GET_MultiTexCoord1sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1sARB)
+#define SET_MultiTexCoord1sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1sARB, fn)
+#define CALL_MultiTexCoord1svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord1svARB, parameters)
+#define GET_MultiTexCoord1svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord1svARB)
+#define SET_MultiTexCoord1svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord1svARB, fn)
+#define CALL_MultiTexCoord2dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble)), _gloffset_MultiTexCoord2dARB, parameters)
+#define GET_MultiTexCoord2dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2dARB)
+#define SET_MultiTexCoord2dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2dARB, fn)
+#define CALL_MultiTexCoord2dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord2dvARB, parameters)
+#define GET_MultiTexCoord2dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2dvARB)
+#define SET_MultiTexCoord2dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2dvARB, fn)
+#define CALL_MultiTexCoord2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat)), _gloffset_MultiTexCoord2fARB, parameters)
+#define GET_MultiTexCoord2fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2fARB)
+#define SET_MultiTexCoord2fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2fARB, fn)
+#define CALL_MultiTexCoord2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord2fvARB, parameters)
+#define GET_MultiTexCoord2fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2fvARB)
+#define SET_MultiTexCoord2fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2fvARB, fn)
+#define CALL_MultiTexCoord2iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint)), _gloffset_MultiTexCoord2iARB, parameters)
+#define GET_MultiTexCoord2iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2iARB)
+#define SET_MultiTexCoord2iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2iARB, fn)
+#define CALL_MultiTexCoord2ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord2ivARB, parameters)
+#define GET_MultiTexCoord2ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2ivARB)
+#define SET_MultiTexCoord2ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2ivARB, fn)
+#define CALL_MultiTexCoord2sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort)), _gloffset_MultiTexCoord2sARB, parameters)
+#define GET_MultiTexCoord2sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2sARB)
+#define SET_MultiTexCoord2sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2sARB, fn)
+#define CALL_MultiTexCoord2svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord2svARB, parameters)
+#define GET_MultiTexCoord2svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord2svARB)
+#define SET_MultiTexCoord2svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord2svARB, fn)
+#define CALL_MultiTexCoord3dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLdouble)), _gloffset_MultiTexCoord3dARB, parameters)
+#define GET_MultiTexCoord3dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3dARB)
+#define SET_MultiTexCoord3dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3dARB, fn)
+#define CALL_MultiTexCoord3dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord3dvARB, parameters)
+#define GET_MultiTexCoord3dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3dvARB)
+#define SET_MultiTexCoord3dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3dvARB, fn)
+#define CALL_MultiTexCoord3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLfloat)), _gloffset_MultiTexCoord3fARB, parameters)
+#define GET_MultiTexCoord3fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3fARB)
+#define SET_MultiTexCoord3fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3fARB, fn)
+#define CALL_MultiTexCoord3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord3fvARB, parameters)
+#define GET_MultiTexCoord3fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3fvARB)
+#define SET_MultiTexCoord3fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3fvARB, fn)
+#define CALL_MultiTexCoord3iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint)), _gloffset_MultiTexCoord3iARB, parameters)
+#define GET_MultiTexCoord3iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3iARB)
+#define SET_MultiTexCoord3iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3iARB, fn)
+#define CALL_MultiTexCoord3ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord3ivARB, parameters)
+#define GET_MultiTexCoord3ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3ivARB)
+#define SET_MultiTexCoord3ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3ivARB, fn)
+#define CALL_MultiTexCoord3sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort, GLshort)), _gloffset_MultiTexCoord3sARB, parameters)
+#define GET_MultiTexCoord3sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3sARB)
+#define SET_MultiTexCoord3sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3sARB, fn)
+#define CALL_MultiTexCoord3svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord3svARB, parameters)
+#define GET_MultiTexCoord3svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord3svARB)
+#define SET_MultiTexCoord3svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord3svARB, fn)
+#define CALL_MultiTexCoord4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble)), _gloffset_MultiTexCoord4dARB, parameters)
+#define GET_MultiTexCoord4dARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4dARB)
+#define SET_MultiTexCoord4dARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4dARB, fn)
+#define CALL_MultiTexCoord4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLdouble *)), _gloffset_MultiTexCoord4dvARB, parameters)
+#define GET_MultiTexCoord4dvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4dvARB)
+#define SET_MultiTexCoord4dvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4dvARB, fn)
+#define CALL_MultiTexCoord4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_MultiTexCoord4fARB, parameters)
+#define GET_MultiTexCoord4fARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4fARB)
+#define SET_MultiTexCoord4fARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4fARB, fn)
+#define CALL_MultiTexCoord4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), _gloffset_MultiTexCoord4fvARB, parameters)
+#define GET_MultiTexCoord4fvARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4fvARB)
+#define SET_MultiTexCoord4fvARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4fvARB, fn)
+#define CALL_MultiTexCoord4iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint)), _gloffset_MultiTexCoord4iARB, parameters)
+#define GET_MultiTexCoord4iARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4iARB)
+#define SET_MultiTexCoord4iARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4iARB, fn)
+#define CALL_MultiTexCoord4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), _gloffset_MultiTexCoord4ivARB, parameters)
+#define GET_MultiTexCoord4ivARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4ivARB)
+#define SET_MultiTexCoord4ivARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4ivARB, fn)
+#define CALL_MultiTexCoord4sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLshort, GLshort, GLshort, GLshort)), _gloffset_MultiTexCoord4sARB, parameters)
+#define GET_MultiTexCoord4sARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4sARB)
+#define SET_MultiTexCoord4sARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4sARB, fn)
+#define CALL_MultiTexCoord4svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLshort *)), _gloffset_MultiTexCoord4svARB, parameters)
+#define GET_MultiTexCoord4svARB(disp) GET_by_offset(disp, _gloffset_MultiTexCoord4svARB)
+#define SET_MultiTexCoord4svARB(disp, fn) SET_by_offset(disp, _gloffset_MultiTexCoord4svARB, fn)
+#define CALL_GetBufferPointervOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), _gloffset_GetBufferPointervOES, parameters)
+#define GET_GetBufferPointervOES(disp) GET_by_offset(disp, _gloffset_GetBufferPointervOES)
+#define SET_GetBufferPointervOES(disp, fn) SET_by_offset(disp, _gloffset_GetBufferPointervOES, fn)
+#define CALL_MapBufferOES(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_MapBufferOES, parameters)
+#define GET_MapBufferOES(disp) GET_by_offset(disp, _gloffset_MapBufferOES)
+#define SET_MapBufferOES(disp, fn) SET_by_offset(disp, _gloffset_MapBufferOES, fn)
+#define CALL_UnmapBufferOES(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), _gloffset_UnmapBufferOES, parameters)
+#define GET_UnmapBufferOES(disp) GET_by_offset(disp, _gloffset_UnmapBufferOES)
+#define SET_UnmapBufferOES(disp, fn) SET_by_offset(disp, _gloffset_UnmapBufferOES, fn)
+#define CALL_CompressedTexImage3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), _gloffset_CompressedTexImage3DOES, parameters)
+#define GET_CompressedTexImage3DOES(disp) GET_by_offset(disp, _gloffset_CompressedTexImage3DOES)
+#define SET_CompressedTexImage3DOES(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexImage3DOES, fn)
+#define CALL_CompressedTexSubImage3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), _gloffset_CompressedTexSubImage3DOES, parameters)
+#define GET_CompressedTexSubImage3DOES(disp) GET_by_offset(disp, _gloffset_CompressedTexSubImage3DOES)
+#define SET_CompressedTexSubImage3DOES(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexSubImage3DOES, fn)
+#define CALL_FramebufferTexture3DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint, GLint)), _gloffset_FramebufferTexture3DOES, parameters)
+#define GET_FramebufferTexture3DOES(disp) GET_by_offset(disp, _gloffset_FramebufferTexture3DOES)
+#define SET_FramebufferTexture3DOES(disp, fn) SET_by_offset(disp, _gloffset_FramebufferTexture3DOES, fn)
+#define CALL_GetProgramBinaryOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLenum *, GLvoid *)), _gloffset_GetProgramBinaryOES, parameters)
+#define GET_GetProgramBinaryOES(disp) GET_by_offset(disp, _gloffset_GetProgramBinaryOES)
+#define SET_GetProgramBinaryOES(disp, fn) SET_by_offset(disp, _gloffset_GetProgramBinaryOES, fn)
+#define CALL_ProgramBinaryOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, const GLvoid *, GLint)), _gloffset_ProgramBinaryOES, parameters)
+#define GET_ProgramBinaryOES(disp) GET_by_offset(disp, _gloffset_ProgramBinaryOES)
+#define SET_ProgramBinaryOES(disp, fn) SET_by_offset(disp, _gloffset_ProgramBinaryOES, fn)
+#define CALL_MultiDrawArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *, const GLsizei *, GLsizei)), _gloffset_MultiDrawArraysEXT, parameters)
+#define GET_MultiDrawArraysEXT(disp) GET_by_offset(disp, _gloffset_MultiDrawArraysEXT)
+#define SET_MultiDrawArraysEXT(disp, fn) SET_by_offset(disp, _gloffset_MultiDrawArraysEXT, fn)
+#define CALL_MultiDrawElementsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei)), _gloffset_MultiDrawElementsEXT, parameters)
+#define GET_MultiDrawElementsEXT(disp) GET_by_offset(disp, _gloffset_MultiDrawElementsEXT)
+#define SET_MultiDrawElementsEXT(disp, fn) SET_by_offset(disp, _gloffset_MultiDrawElementsEXT, fn)
+#define CALL_BindVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_BindVertexArrayAPPLE, parameters)
+#define GET_BindVertexArrayAPPLE(disp) GET_by_offset(disp, _gloffset_BindVertexArrayAPPLE)
+#define SET_BindVertexArrayAPPLE(disp, fn) SET_by_offset(disp, _gloffset_BindVertexArrayAPPLE, fn)
+#define CALL_DeleteVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteVertexArraysAPPLE, parameters)
+#define GET_DeleteVertexArraysAPPLE(disp) GET_by_offset(disp, _gloffset_DeleteVertexArraysAPPLE)
+#define SET_DeleteVertexArraysAPPLE(disp, fn) SET_by_offset(disp, _gloffset_DeleteVertexArraysAPPLE, fn)
+#define CALL_GenVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenVertexArraysAPPLE, parameters)
+#define GET_GenVertexArraysAPPLE(disp) GET_by_offset(disp, _gloffset_GenVertexArraysAPPLE)
+#define SET_GenVertexArraysAPPLE(disp, fn) SET_by_offset(disp, _gloffset_GenVertexArraysAPPLE, fn)
+#define CALL_IsVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsVertexArrayAPPLE, parameters)
+#define GET_IsVertexArrayAPPLE(disp) GET_by_offset(disp, _gloffset_IsVertexArrayAPPLE)
+#define SET_IsVertexArrayAPPLE(disp, fn) SET_by_offset(disp, _gloffset_IsVertexArrayAPPLE, fn)
+#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), _gloffset_EGLImageTargetRenderbufferStorageOES, parameters)
+#define GET_EGLImageTargetRenderbufferStorageOES(disp) GET_by_offset(disp, _gloffset_EGLImageTargetRenderbufferStorageOES)
+#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) SET_by_offset(disp, _gloffset_EGLImageTargetRenderbufferStorageOES, fn)
+#define CALL_EGLImageTargetTexture2DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), _gloffset_EGLImageTargetTexture2DOES, parameters)
+#define GET_EGLImageTargetTexture2DOES(disp) GET_by_offset(disp, _gloffset_EGLImageTargetTexture2DOES)
+#define SET_EGLImageTargetTexture2DOES(disp, fn) SET_by_offset(disp, _gloffset_EGLImageTargetTexture2DOES, fn)
+#define CALL_CompressedTexImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), _gloffset_CompressedTexImage2D, parameters)
+#define GET_CompressedTexImage2D(disp) GET_by_offset(disp, _gloffset_CompressedTexImage2D)
+#define SET_CompressedTexImage2D(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexImage2D, fn)
+#define CALL_CompressedTexSubImage2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), _gloffset_CompressedTexSubImage2D, parameters)
+#define GET_CompressedTexSubImage2D(disp) GET_by_offset(disp, _gloffset_CompressedTexSubImage2D)
+#define SET_CompressedTexSubImage2D(disp, fn) SET_by_offset(disp, _gloffset_CompressedTexSubImage2D, fn)
+#define CALL_SampleCoverage(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), _gloffset_SampleCoverage, parameters)
+#define GET_SampleCoverage(disp) GET_by_offset(disp, _gloffset_SampleCoverage)
+#define SET_SampleCoverage(disp, fn) SET_by_offset(disp, _gloffset_SampleCoverage, fn)
+#define CALL_BindBuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindBuffer, parameters)
+#define GET_BindBuffer(disp) GET_by_offset(disp, _gloffset_BindBuffer)
+#define SET_BindBuffer(disp, fn) SET_by_offset(disp, _gloffset_BindBuffer, fn)
+#define CALL_BufferData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizeiptr, const GLvoid *, GLenum)), _gloffset_BufferData, parameters)
+#define GET_BufferData(disp) GET_by_offset(disp, _gloffset_BufferData)
+#define SET_BufferData(disp, fn) SET_by_offset(disp, _gloffset_BufferData, fn)
+#define CALL_BufferSubData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr, const GLvoid *)), _gloffset_BufferSubData, parameters)
+#define GET_BufferSubData(disp) GET_by_offset(disp, _gloffset_BufferSubData)
+#define SET_BufferSubData(disp, fn) SET_by_offset(disp, _gloffset_BufferSubData, fn)
+#define CALL_DeleteBuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteBuffers, parameters)
+#define GET_DeleteBuffers(disp) GET_by_offset(disp, _gloffset_DeleteBuffers)
+#define SET_DeleteBuffers(disp, fn) SET_by_offset(disp, _gloffset_DeleteBuffers, fn)
+#define CALL_GenBuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenBuffers, parameters)
+#define GET_GenBuffers(disp) GET_by_offset(disp, _gloffset_GenBuffers)
+#define SET_GenBuffers(disp, fn) SET_by_offset(disp, _gloffset_GenBuffers, fn)
+#define CALL_GetBufferParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetBufferParameteriv, parameters)
+#define GET_GetBufferParameteriv(disp) GET_by_offset(disp, _gloffset_GetBufferParameteriv)
+#define SET_GetBufferParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetBufferParameteriv, fn)
+#define CALL_IsBuffer(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsBuffer, parameters)
+#define GET_IsBuffer(disp) GET_by_offset(disp, _gloffset_IsBuffer)
+#define SET_IsBuffer(disp, fn) SET_by_offset(disp, _gloffset_IsBuffer, fn)
+#define CALL_AttachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), _gloffset_AttachShader, parameters)
+#define GET_AttachShader(disp) GET_by_offset(disp, _gloffset_AttachShader)
+#define SET_AttachShader(disp, fn) SET_by_offset(disp, _gloffset_AttachShader, fn)
+#define CALL_BindAttribLocation(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, const GLchar *)), _gloffset_BindAttribLocation, parameters)
+#define GET_BindAttribLocation(disp) GET_by_offset(disp, _gloffset_BindAttribLocation)
+#define SET_BindAttribLocation(disp, fn) SET_by_offset(disp, _gloffset_BindAttribLocation, fn)
+#define CALL_BlendEquationSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_BlendEquationSeparate, parameters)
+#define GET_BlendEquationSeparate(disp) GET_by_offset(disp, _gloffset_BlendEquationSeparate)
+#define SET_BlendEquationSeparate(disp, fn) SET_by_offset(disp, _gloffset_BlendEquationSeparate, fn)
+#define CALL_CompileShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_CompileShader, parameters)
+#define GET_CompileShader(disp) GET_by_offset(disp, _gloffset_CompileShader)
+#define SET_CompileShader(disp, fn) SET_by_offset(disp, _gloffset_CompileShader, fn)
+#define CALL_CreateProgram(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(void)), _gloffset_CreateProgram, parameters)
+#define GET_CreateProgram(disp) GET_by_offset(disp, _gloffset_CreateProgram)
+#define SET_CreateProgram(disp, fn) SET_by_offset(disp, _gloffset_CreateProgram, fn)
+#define CALL_CreateShader(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLenum)), _gloffset_CreateShader, parameters)
+#define GET_CreateShader(disp) GET_by_offset(disp, _gloffset_CreateShader)
+#define SET_CreateShader(disp, fn) SET_by_offset(disp, _gloffset_CreateShader, fn)
+#define CALL_DeleteProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_DeleteProgram, parameters)
+#define GET_DeleteProgram(disp) GET_by_offset(disp, _gloffset_DeleteProgram)
+#define SET_DeleteProgram(disp, fn) SET_by_offset(disp, _gloffset_DeleteProgram, fn)
+#define CALL_DeleteShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_DeleteShader, parameters)
+#define GET_DeleteShader(disp) GET_by_offset(disp, _gloffset_DeleteShader)
+#define SET_DeleteShader(disp, fn) SET_by_offset(disp, _gloffset_DeleteShader, fn)
+#define CALL_DetachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), _gloffset_DetachShader, parameters)
+#define GET_DetachShader(disp) GET_by_offset(disp, _gloffset_DetachShader)
+#define SET_DetachShader(disp, fn) SET_by_offset(disp, _gloffset_DetachShader, fn)
+#define CALL_DisableVertexAttribArray(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_DisableVertexAttribArray, parameters)
+#define GET_DisableVertexAttribArray(disp) GET_by_offset(disp, _gloffset_DisableVertexAttribArray)
+#define SET_DisableVertexAttribArray(disp, fn) SET_by_offset(disp, _gloffset_DisableVertexAttribArray, fn)
+#define CALL_EnableVertexAttribArray(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_EnableVertexAttribArray, parameters)
+#define GET_EnableVertexAttribArray(disp) GET_by_offset(disp, _gloffset_EnableVertexAttribArray)
+#define SET_EnableVertexAttribArray(disp, fn) SET_by_offset(disp, _gloffset_EnableVertexAttribArray, fn)
+#define CALL_GetActiveAttrib(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLsizei , GLsizei *, GLint *, GLenum *, GLchar *)), _gloffset_GetActiveAttrib, parameters)
+#define GET_GetActiveAttrib(disp) GET_by_offset(disp, _gloffset_GetActiveAttrib)
+#define SET_GetActiveAttrib(disp, fn) SET_by_offset(disp, _gloffset_GetActiveAttrib, fn)
+#define CALL_GetActiveUniform(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *)), _gloffset_GetActiveUniform, parameters)
+#define GET_GetActiveUniform(disp) GET_by_offset(disp, _gloffset_GetActiveUniform)
+#define SET_GetActiveUniform(disp, fn) SET_by_offset(disp, _gloffset_GetActiveUniform, fn)
+#define CALL_GetAttachedShaders(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLuint *)), _gloffset_GetAttachedShaders, parameters)
+#define GET_GetAttachedShaders(disp) GET_by_offset(disp, _gloffset_GetAttachedShaders)
+#define SET_GetAttachedShaders(disp, fn) SET_by_offset(disp, _gloffset_GetAttachedShaders, fn)
+#define CALL_GetAttribLocation(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLuint, const GLchar *)), _gloffset_GetAttribLocation, parameters)
+#define GET_GetAttribLocation(disp) GET_by_offset(disp, _gloffset_GetAttribLocation)
+#define SET_GetAttribLocation(disp, fn) SET_by_offset(disp, _gloffset_GetAttribLocation, fn)
+#define CALL_GetProgramInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), _gloffset_GetProgramInfoLog, parameters)
+#define GET_GetProgramInfoLog(disp) GET_by_offset(disp, _gloffset_GetProgramInfoLog)
+#define SET_GetProgramInfoLog(disp, fn) SET_by_offset(disp, _gloffset_GetProgramInfoLog, fn)
+#define CALL_GetProgramiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), _gloffset_GetProgramiv, parameters)
+#define GET_GetProgramiv(disp) GET_by_offset(disp, _gloffset_GetProgramiv)
+#define SET_GetProgramiv(disp, fn) SET_by_offset(disp, _gloffset_GetProgramiv, fn)
+#define CALL_GetShaderInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), _gloffset_GetShaderInfoLog, parameters)
+#define GET_GetShaderInfoLog(disp) GET_by_offset(disp, _gloffset_GetShaderInfoLog)
+#define SET_GetShaderInfoLog(disp, fn) SET_by_offset(disp, _gloffset_GetShaderInfoLog, fn)
+#define CALL_GetShaderSource(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), _gloffset_GetShaderSource, parameters)
+#define GET_GetShaderSource(disp) GET_by_offset(disp, _gloffset_GetShaderSource)
+#define SET_GetShaderSource(disp, fn) SET_by_offset(disp, _gloffset_GetShaderSource, fn)
+#define CALL_GetShaderiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), _gloffset_GetShaderiv, parameters)
+#define GET_GetShaderiv(disp) GET_by_offset(disp, _gloffset_GetShaderiv)
+#define SET_GetShaderiv(disp, fn) SET_by_offset(disp, _gloffset_GetShaderiv, fn)
+#define CALL_GetUniformLocation(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLuint, const GLchar *)), _gloffset_GetUniformLocation, parameters)
+#define GET_GetUniformLocation(disp) GET_by_offset(disp, _gloffset_GetUniformLocation)
+#define SET_GetUniformLocation(disp, fn) SET_by_offset(disp, _gloffset_GetUniformLocation, fn)
+#define CALL_GetUniformfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLfloat *)), _gloffset_GetUniformfv, parameters)
+#define GET_GetUniformfv(disp) GET_by_offset(disp, _gloffset_GetUniformfv)
+#define SET_GetUniformfv(disp, fn) SET_by_offset(disp, _gloffset_GetUniformfv, fn)
+#define CALL_GetUniformiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLint *)), _gloffset_GetUniformiv, parameters)
+#define GET_GetUniformiv(disp) GET_by_offset(disp, _gloffset_GetUniformiv)
+#define SET_GetUniformiv(disp, fn) SET_by_offset(disp, _gloffset_GetUniformiv, fn)
+#define CALL_GetVertexAttribPointerv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLvoid **)), _gloffset_GetVertexAttribPointerv, parameters)
+#define GET_GetVertexAttribPointerv(disp) GET_by_offset(disp, _gloffset_GetVertexAttribPointerv)
+#define SET_GetVertexAttribPointerv(disp, fn) SET_by_offset(disp, _gloffset_GetVertexAttribPointerv, fn)
+#define CALL_GetVertexAttribfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), _gloffset_GetVertexAttribfv, parameters)
+#define GET_GetVertexAttribfv(disp) GET_by_offset(disp, _gloffset_GetVertexAttribfv)
+#define SET_GetVertexAttribfv(disp, fn) SET_by_offset(disp, _gloffset_GetVertexAttribfv, fn)
+#define CALL_GetVertexAttribiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), _gloffset_GetVertexAttribiv, parameters)
+#define GET_GetVertexAttribiv(disp) GET_by_offset(disp, _gloffset_GetVertexAttribiv)
+#define SET_GetVertexAttribiv(disp, fn) SET_by_offset(disp, _gloffset_GetVertexAttribiv, fn)
+#define CALL_IsProgram(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsProgram, parameters)
+#define GET_IsProgram(disp) GET_by_offset(disp, _gloffset_IsProgram)
+#define SET_IsProgram(disp, fn) SET_by_offset(disp, _gloffset_IsProgram, fn)
+#define CALL_IsShader(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsShader, parameters)
+#define GET_IsShader(disp) GET_by_offset(disp, _gloffset_IsShader)
+#define SET_IsShader(disp, fn) SET_by_offset(disp, _gloffset_IsShader, fn)
+#define CALL_LinkProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_LinkProgram, parameters)
+#define GET_LinkProgram(disp) GET_by_offset(disp, _gloffset_LinkProgram)
+#define SET_LinkProgram(disp, fn) SET_by_offset(disp, _gloffset_LinkProgram, fn)
+#define CALL_ShaderSource(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLchar **, const GLint *)), _gloffset_ShaderSource, parameters)
+#define GET_ShaderSource(disp) GET_by_offset(disp, _gloffset_ShaderSource)
+#define SET_ShaderSource(disp, fn) SET_by_offset(disp, _gloffset_ShaderSource, fn)
+#define CALL_StencilFuncSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), _gloffset_StencilFuncSeparate, parameters)
+#define GET_StencilFuncSeparate(disp) GET_by_offset(disp, _gloffset_StencilFuncSeparate)
+#define SET_StencilFuncSeparate(disp, fn) SET_by_offset(disp, _gloffset_StencilFuncSeparate, fn)
+#define CALL_StencilMaskSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_StencilMaskSeparate, parameters)
+#define GET_StencilMaskSeparate(disp) GET_by_offset(disp, _gloffset_StencilMaskSeparate)
+#define SET_StencilMaskSeparate(disp, fn) SET_by_offset(disp, _gloffset_StencilMaskSeparate, fn)
+#define CALL_StencilOpSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), _gloffset_StencilOpSeparate, parameters)
+#define GET_StencilOpSeparate(disp) GET_by_offset(disp, _gloffset_StencilOpSeparate)
+#define SET_StencilOpSeparate(disp, fn) SET_by_offset(disp, _gloffset_StencilOpSeparate, fn)
+#define CALL_Uniform1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat)), _gloffset_Uniform1f, parameters)
+#define GET_Uniform1f(disp) GET_by_offset(disp, _gloffset_Uniform1f)
+#define SET_Uniform1f(disp, fn) SET_by_offset(disp, _gloffset_Uniform1f, fn)
+#define CALL_Uniform1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), _gloffset_Uniform1fv, parameters)
+#define GET_Uniform1fv(disp) GET_by_offset(disp, _gloffset_Uniform1fv)
+#define SET_Uniform1fv(disp, fn) SET_by_offset(disp, _gloffset_Uniform1fv, fn)
+#define CALL_Uniform1i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), _gloffset_Uniform1i, parameters)
+#define GET_Uniform1i(disp) GET_by_offset(disp, _gloffset_Uniform1i)
+#define SET_Uniform1i(disp, fn) SET_by_offset(disp, _gloffset_Uniform1i, fn)
+#define CALL_Uniform1iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), _gloffset_Uniform1iv, parameters)
+#define GET_Uniform1iv(disp) GET_by_offset(disp, _gloffset_Uniform1iv)
+#define SET_Uniform1iv(disp, fn) SET_by_offset(disp, _gloffset_Uniform1iv, fn)
+#define CALL_Uniform2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat)), _gloffset_Uniform2f, parameters)
+#define GET_Uniform2f(disp) GET_by_offset(disp, _gloffset_Uniform2f)
+#define SET_Uniform2f(disp, fn) SET_by_offset(disp, _gloffset_Uniform2f, fn)
+#define CALL_Uniform2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), _gloffset_Uniform2fv, parameters)
+#define GET_Uniform2fv(disp) GET_by_offset(disp, _gloffset_Uniform2fv)
+#define SET_Uniform2fv(disp, fn) SET_by_offset(disp, _gloffset_Uniform2fv, fn)
+#define CALL_Uniform2i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), _gloffset_Uniform2i, parameters)
+#define GET_Uniform2i(disp) GET_by_offset(disp, _gloffset_Uniform2i)
+#define SET_Uniform2i(disp, fn) SET_by_offset(disp, _gloffset_Uniform2i, fn)
+#define CALL_Uniform2iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), _gloffset_Uniform2iv, parameters)
+#define GET_Uniform2iv(disp) GET_by_offset(disp, _gloffset_Uniform2iv)
+#define SET_Uniform2iv(disp, fn) SET_by_offset(disp, _gloffset_Uniform2iv, fn)
+#define CALL_Uniform3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat)), _gloffset_Uniform3f, parameters)
+#define GET_Uniform3f(disp) GET_by_offset(disp, _gloffset_Uniform3f)
+#define SET_Uniform3f(disp, fn) SET_by_offset(disp, _gloffset_Uniform3f, fn)
+#define CALL_Uniform3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), _gloffset_Uniform3fv, parameters)
+#define GET_Uniform3fv(disp) GET_by_offset(disp, _gloffset_Uniform3fv)
+#define SET_Uniform3fv(disp, fn) SET_by_offset(disp, _gloffset_Uniform3fv, fn)
+#define CALL_Uniform3i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), _gloffset_Uniform3i, parameters)
+#define GET_Uniform3i(disp) GET_by_offset(disp, _gloffset_Uniform3i)
+#define SET_Uniform3i(disp, fn) SET_by_offset(disp, _gloffset_Uniform3i, fn)
+#define CALL_Uniform3iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), _gloffset_Uniform3iv, parameters)
+#define GET_Uniform3iv(disp) GET_by_offset(disp, _gloffset_Uniform3iv)
+#define SET_Uniform3iv(disp, fn) SET_by_offset(disp, _gloffset_Uniform3iv, fn)
+#define CALL_Uniform4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_Uniform4f, parameters)
+#define GET_Uniform4f(disp) GET_by_offset(disp, _gloffset_Uniform4f)
+#define SET_Uniform4f(disp, fn) SET_by_offset(disp, _gloffset_Uniform4f, fn)
+#define CALL_Uniform4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), _gloffset_Uniform4fv, parameters)
+#define GET_Uniform4fv(disp) GET_by_offset(disp, _gloffset_Uniform4fv)
+#define SET_Uniform4fv(disp, fn) SET_by_offset(disp, _gloffset_Uniform4fv, fn)
+#define CALL_Uniform4i(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint)), _gloffset_Uniform4i, parameters)
+#define GET_Uniform4i(disp) GET_by_offset(disp, _gloffset_Uniform4i)
+#define SET_Uniform4i(disp, fn) SET_by_offset(disp, _gloffset_Uniform4i, fn)
+#define CALL_Uniform4iv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), _gloffset_Uniform4iv, parameters)
+#define GET_Uniform4iv(disp) GET_by_offset(disp, _gloffset_Uniform4iv)
+#define SET_Uniform4iv(disp, fn) SET_by_offset(disp, _gloffset_Uniform4iv, fn)
+#define CALL_UniformMatrix2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), _gloffset_UniformMatrix2fv, parameters)
+#define GET_UniformMatrix2fv(disp) GET_by_offset(disp, _gloffset_UniformMatrix2fv)
+#define SET_UniformMatrix2fv(disp, fn) SET_by_offset(disp, _gloffset_UniformMatrix2fv, fn)
+#define CALL_UniformMatrix3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), _gloffset_UniformMatrix3fv, parameters)
+#define GET_UniformMatrix3fv(disp) GET_by_offset(disp, _gloffset_UniformMatrix3fv)
+#define SET_UniformMatrix3fv(disp, fn) SET_by_offset(disp, _gloffset_UniformMatrix3fv, fn)
+#define CALL_UniformMatrix4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), _gloffset_UniformMatrix4fv, parameters)
+#define GET_UniformMatrix4fv(disp) GET_by_offset(disp, _gloffset_UniformMatrix4fv)
+#define SET_UniformMatrix4fv(disp, fn) SET_by_offset(disp, _gloffset_UniformMatrix4fv, fn)
+#define CALL_UseProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_UseProgram, parameters)
+#define GET_UseProgram(disp) GET_by_offset(disp, _gloffset_UseProgram)
+#define SET_UseProgram(disp, fn) SET_by_offset(disp, _gloffset_UseProgram, fn)
+#define CALL_ValidateProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_ValidateProgram, parameters)
+#define GET_ValidateProgram(disp) GET_by_offset(disp, _gloffset_ValidateProgram)
+#define SET_ValidateProgram(disp, fn) SET_by_offset(disp, _gloffset_ValidateProgram, fn)
+#define CALL_VertexAttrib1f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat)), _gloffset_VertexAttrib1f, parameters)
+#define GET_VertexAttrib1f(disp) GET_by_offset(disp, _gloffset_VertexAttrib1f)
+#define SET_VertexAttrib1f(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib1f, fn)
+#define CALL_VertexAttrib1fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), _gloffset_VertexAttrib1fv, parameters)
+#define GET_VertexAttrib1fv(disp) GET_by_offset(disp, _gloffset_VertexAttrib1fv)
+#define SET_VertexAttrib1fv(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib1fv, fn)
+#define CALL_VertexAttrib2f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat)), _gloffset_VertexAttrib2f, parameters)
+#define GET_VertexAttrib2f(disp) GET_by_offset(disp, _gloffset_VertexAttrib2f)
+#define SET_VertexAttrib2f(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib2f, fn)
+#define CALL_VertexAttrib2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), _gloffset_VertexAttrib2fv, parameters)
+#define GET_VertexAttrib2fv(disp) GET_by_offset(disp, _gloffset_VertexAttrib2fv)
+#define SET_VertexAttrib2fv(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib2fv, fn)
+#define CALL_VertexAttrib3f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat)), _gloffset_VertexAttrib3f, parameters)
+#define GET_VertexAttrib3f(disp) GET_by_offset(disp, _gloffset_VertexAttrib3f)
+#define SET_VertexAttrib3f(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib3f, fn)
+#define CALL_VertexAttrib3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), _gloffset_VertexAttrib3fv, parameters)
+#define GET_VertexAttrib3fv(disp) GET_by_offset(disp, _gloffset_VertexAttrib3fv)
+#define SET_VertexAttrib3fv(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib3fv, fn)
+#define CALL_VertexAttrib4f(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), _gloffset_VertexAttrib4f, parameters)
+#define GET_VertexAttrib4f(disp) GET_by_offset(disp, _gloffset_VertexAttrib4f)
+#define SET_VertexAttrib4f(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib4f, fn)
+#define CALL_VertexAttrib4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), _gloffset_VertexAttrib4fv, parameters)
+#define GET_VertexAttrib4fv(disp) GET_by_offset(disp, _gloffset_VertexAttrib4fv)
+#define SET_VertexAttrib4fv(disp, fn) SET_by_offset(disp, _gloffset_VertexAttrib4fv, fn)
+#define CALL_VertexAttribPointer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLenum, GLboolean, GLsizei, const GLvoid *)), _gloffset_VertexAttribPointer, parameters)
+#define GET_VertexAttribPointer(disp) GET_by_offset(disp, _gloffset_VertexAttribPointer)
+#define SET_VertexAttribPointer(disp, fn) SET_by_offset(disp, _gloffset_VertexAttribPointer, fn)
+#define CALL_BlendFuncSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), _gloffset_BlendFuncSeparate, parameters)
+#define GET_BlendFuncSeparate(disp) GET_by_offset(disp, _gloffset_BlendFuncSeparate)
+#define SET_BlendFuncSeparate(disp, fn) SET_by_offset(disp, _gloffset_BlendFuncSeparate, fn)
+#define CALL_BindFramebuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindFramebuffer, parameters)
+#define GET_BindFramebuffer(disp) GET_by_offset(disp, _gloffset_BindFramebuffer)
+#define SET_BindFramebuffer(disp, fn) SET_by_offset(disp, _gloffset_BindFramebuffer, fn)
+#define CALL_BindRenderbuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindRenderbuffer, parameters)
+#define GET_BindRenderbuffer(disp) GET_by_offset(disp, _gloffset_BindRenderbuffer)
+#define SET_BindRenderbuffer(disp, fn) SET_by_offset(disp, _gloffset_BindRenderbuffer, fn)
+#define CALL_CheckFramebufferStatus(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum)), _gloffset_CheckFramebufferStatus, parameters)
+#define GET_CheckFramebufferStatus(disp) GET_by_offset(disp, _gloffset_CheckFramebufferStatus)
+#define SET_CheckFramebufferStatus(disp, fn) SET_by_offset(disp, _gloffset_CheckFramebufferStatus, fn)
+#define CALL_ClearDepthf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf)), _gloffset_ClearDepthf, parameters)
+#define GET_ClearDepthf(disp) GET_by_offset(disp, _gloffset_ClearDepthf)
+#define SET_ClearDepthf(disp, fn) SET_by_offset(disp, _gloffset_ClearDepthf, fn)
+#define CALL_DeleteFramebuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteFramebuffers, parameters)
+#define GET_DeleteFramebuffers(disp) GET_by_offset(disp, _gloffset_DeleteFramebuffers)
+#define SET_DeleteFramebuffers(disp, fn) SET_by_offset(disp, _gloffset_DeleteFramebuffers, fn)
+#define CALL_DeleteRenderbuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteRenderbuffers, parameters)
+#define GET_DeleteRenderbuffers(disp) GET_by_offset(disp, _gloffset_DeleteRenderbuffers)
+#define SET_DeleteRenderbuffers(disp, fn) SET_by_offset(disp, _gloffset_DeleteRenderbuffers, fn)
+#define CALL_DepthRangef(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLclampf)), _gloffset_DepthRangef, parameters)
+#define GET_DepthRangef(disp) GET_by_offset(disp, _gloffset_DepthRangef)
+#define SET_DepthRangef(disp, fn) SET_by_offset(disp, _gloffset_DepthRangef, fn)
+#define CALL_FramebufferRenderbuffer(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint)), _gloffset_FramebufferRenderbuffer, parameters)
+#define GET_FramebufferRenderbuffer(disp) GET_by_offset(disp, _gloffset_FramebufferRenderbuffer)
+#define SET_FramebufferRenderbuffer(disp, fn) SET_by_offset(disp, _gloffset_FramebufferRenderbuffer, fn)
+#define CALL_FramebufferTexture2D(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), _gloffset_FramebufferTexture2D, parameters)
+#define GET_FramebufferTexture2D(disp) GET_by_offset(disp, _gloffset_FramebufferTexture2D)
+#define SET_FramebufferTexture2D(disp, fn) SET_by_offset(disp, _gloffset_FramebufferTexture2D, fn)
+#define CALL_GenFramebuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenFramebuffers, parameters)
+#define GET_GenFramebuffers(disp) GET_by_offset(disp, _gloffset_GenFramebuffers)
+#define SET_GenFramebuffers(disp, fn) SET_by_offset(disp, _gloffset_GenFramebuffers, fn)
+#define CALL_GenRenderbuffers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenRenderbuffers, parameters)
+#define GET_GenRenderbuffers(disp) GET_by_offset(disp, _gloffset_GenRenderbuffers)
+#define SET_GenRenderbuffers(disp, fn) SET_by_offset(disp, _gloffset_GenRenderbuffers, fn)
+#define CALL_GenerateMipmap(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), _gloffset_GenerateMipmap, parameters)
+#define GET_GenerateMipmap(disp) GET_by_offset(disp, _gloffset_GenerateMipmap)
+#define SET_GenerateMipmap(disp, fn) SET_by_offset(disp, _gloffset_GenerateMipmap, fn)
+#define CALL_GetFramebufferAttachmentParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), _gloffset_GetFramebufferAttachmentParameteriv, parameters)
+#define GET_GetFramebufferAttachmentParameteriv(disp) GET_by_offset(disp, _gloffset_GetFramebufferAttachmentParameteriv)
+#define SET_GetFramebufferAttachmentParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetFramebufferAttachmentParameteriv, fn)
+#define CALL_GetRenderbufferParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), _gloffset_GetRenderbufferParameteriv, parameters)
+#define GET_GetRenderbufferParameteriv(disp) GET_by_offset(disp, _gloffset_GetRenderbufferParameteriv)
+#define SET_GetRenderbufferParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetRenderbufferParameteriv, fn)
+#define CALL_GetShaderPrecisionFormat(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *, GLint *)), _gloffset_GetShaderPrecisionFormat, parameters)
+#define GET_GetShaderPrecisionFormat(disp) GET_by_offset(disp, _gloffset_GetShaderPrecisionFormat)
+#define SET_GetShaderPrecisionFormat(disp, fn) SET_by_offset(disp, _gloffset_GetShaderPrecisionFormat, fn)
+#define CALL_IsFramebuffer(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsFramebuffer, parameters)
+#define GET_IsFramebuffer(disp) GET_by_offset(disp, _gloffset_IsFramebuffer)
+#define SET_IsFramebuffer(disp, fn) SET_by_offset(disp, _gloffset_IsFramebuffer, fn)
+#define CALL_IsRenderbuffer(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsRenderbuffer, parameters)
+#define GET_IsRenderbuffer(disp) GET_by_offset(disp, _gloffset_IsRenderbuffer)
+#define SET_IsRenderbuffer(disp, fn) SET_by_offset(disp, _gloffset_IsRenderbuffer, fn)
+#define CALL_ReleaseShaderCompiler(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), _gloffset_ReleaseShaderCompiler, parameters)
+#define GET_ReleaseShaderCompiler(disp) GET_by_offset(disp, _gloffset_ReleaseShaderCompiler)
+#define SET_ReleaseShaderCompiler(disp, fn) SET_by_offset(disp, _gloffset_ReleaseShaderCompiler, fn)
+#define CALL_RenderbufferStorage(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei)), _gloffset_RenderbufferStorage, parameters)
+#define GET_RenderbufferStorage(disp) GET_by_offset(disp, _gloffset_RenderbufferStorage)
+#define SET_RenderbufferStorage(disp, fn) SET_by_offset(disp, _gloffset_RenderbufferStorage, fn)
+#define CALL_ShaderBinary(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *, GLenum, const GLvoid *, GLsizei)), _gloffset_ShaderBinary, parameters)
+#define GET_ShaderBinary(disp) GET_by_offset(disp, _gloffset_ShaderBinary)
+#define SET_ShaderBinary(disp, fn) SET_by_offset(disp, _gloffset_ShaderBinary, fn)
+
+/* define aliases for compatibility */
+#define CALL_TexImage3D(disp, parameters) CALL_TexImage3DOES(disp, parameters)
+#define GET_TexImage3D(disp) GET_TexImage3DOES(disp)
+#define SET_TexImage3D(disp, fn) SET_TexImage3DOES(disp, fn)
+#define CALL_TexSubImage3D(disp, parameters) CALL_TexSubImage3DOES(disp, parameters)
+#define GET_TexSubImage3D(disp) GET_TexSubImage3DOES(disp)
+#define SET_TexSubImage3D(disp, fn) SET_TexSubImage3DOES(disp, fn)
+#define CALL_CopyTexSubImage3D(disp, parameters) CALL_CopyTexSubImage3DOES(disp, parameters)
+#define GET_CopyTexSubImage3D(disp) GET_CopyTexSubImage3DOES(disp)
+#define SET_CopyTexSubImage3D(disp, fn) SET_CopyTexSubImage3DOES(disp, fn)
+#define CALL_ActiveTextureARB(disp, parameters) CALL_ActiveTexture(disp, parameters)
+#define GET_ActiveTextureARB(disp) GET_ActiveTexture(disp)
+#define SET_ActiveTextureARB(disp, fn) SET_ActiveTexture(disp, fn)
+
+#if defined(_GLAPI_USE_REMAP_TABLE)
+#define TexImage3D_remap_index TexImage3DOES_remap_index
+#define TexSubImage3D_remap_index TexSubImage3DOES_remap_index
+#define CopyTexSubImage3D_remap_index CopyTexSubImage3DOES_remap_index
+#define ActiveTextureARB_remap_index ActiveTexture_remap_index
+#endif /* defined(_GLAPI_USE_REMAP_TABLE) */
+
+
+#endif /* !defined( _GLAPI_DISPATCH_H_ ) */
diff --git a/src/mapi/es2api/main/remap_helper.h b/src/mapi/es2api/main/remap_helper.h
new file mode 100644
index 0000000000..fb1c1ec7a5
--- /dev/null
+++ b/src/mapi/es2api/main/remap_helper.h
@@ -0,0 +1,2269 @@
+/* DO NOT EDIT - This file generated automatically by remap_helper.py (from Mesa) script */
+
+/*
+ * Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
+ * Chia-I Wu,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "main/dispatch.h"
+#include "main/remap.h"
+
+/* this is internal to remap.c */
+#ifdef need_MESA_remap_table
+
+static const char _mesa_function_pool[] =
+ /* _mesa_function_pool[0]: MapGrid1d (offset 224) */
+ "idd\0"
+ "glMapGrid1d\0"
+ "\0"
+ /* _mesa_function_pool[17]: MapGrid1f (offset 225) */
+ "iff\0"
+ "glMapGrid1f\0"
+ "\0"
+ /* _mesa_function_pool[34]: RasterPos4i (offset 82) */
+ "iiii\0"
+ "glRasterPos4i\0"
+ "\0"
+ /* _mesa_function_pool[54]: RasterPos4d (offset 78) */
+ "dddd\0"
+ "glRasterPos4d\0"
+ "\0"
+ /* _mesa_function_pool[74]: NewList (dynamic) */
+ "ii\0"
+ "glNewList\0"
+ "\0"
+ /* _mesa_function_pool[88]: RasterPos4f (offset 80) */
+ "ffff\0"
+ "glRasterPos4f\0"
+ "\0"
+ /* _mesa_function_pool[108]: LoadIdentity (offset 290) */
+ "\0"
+ "glLoadIdentity\0"
+ "\0"
+ /* _mesa_function_pool[125]: ConvolutionFilter1D (offset 348) */
+ "iiiiip\0"
+ "glConvolutionFilter1D\0"
+ "\0"
+ /* _mesa_function_pool[155]: RasterPos3dv (offset 71) */
+ "p\0"
+ "glRasterPos3dv\0"
+ "\0"
+ /* _mesa_function_pool[173]: GetProgramiv (will be remapped) */
+ "iip\0"
+ "glGetProgramiv\0"
+ "\0"
+ /* _mesa_function_pool[193]: TexCoord1iv (offset 99) */
+ "p\0"
+ "glTexCoord1iv\0"
+ "\0"
+ /* _mesa_function_pool[210]: TexCoord4sv (offset 125) */
+ "p\0"
+ "glTexCoord4sv\0"
+ "\0"
+ /* _mesa_function_pool[227]: RasterPos4s (offset 84) */
+ "iiii\0"
+ "glRasterPos4s\0"
+ "\0"
+ /* _mesa_function_pool[247]: TexCoord1f (offset 96) */
+ "f\0"
+ "glTexCoord1f\0"
+ "\0"
+ /* _mesa_function_pool[263]: TexCoord1d (offset 94) */
+ "d\0"
+ "glTexCoord1d\0"
+ "\0"
+ /* _mesa_function_pool[279]: TexCoord1i (offset 98) */
+ "i\0"
+ "glTexCoord1i\0"
+ "\0"
+ /* _mesa_function_pool[295]: Histogram (offset 367) */
+ "iiii\0"
+ "glHistogram\0"
+ "\0"
+ /* _mesa_function_pool[313]: TexCoord1s (offset 100) */
+ "i\0"
+ "glTexCoord1s\0"
+ "\0"
+ /* _mesa_function_pool[329]: GetMapfv (offset 267) */
+ "iip\0"
+ "glGetMapfv\0"
+ "\0"
+ /* _mesa_function_pool[345]: GetProgramInfoLog (will be remapped) */
+ "iipp\0"
+ "glGetProgramInfoLog\0"
+ "\0"
+ /* _mesa_function_pool[371]: Uniform2fv (will be remapped) */
+ "iip\0"
+ "glUniform2fv\0"
+ "\0"
+ /* _mesa_function_pool[389]: PolygonStipple (offset 175) */
+ "p\0"
+ "glPolygonStipple\0"
+ "\0"
+ /* _mesa_function_pool[409]: TexImage3DOES (offset 371) */
+ "iiiiiiiiip\0"
+ "glTexImage3DOES\0"
+ "glTexImage3D\0"
+ "\0"
+ /* _mesa_function_pool[450]: VertexAttrib4fv (will be remapped) */
+ "ip\0"
+ "glVertexAttrib4fv\0"
+ "\0"
+ /* _mesa_function_pool[472]: GetPixelMapfv (offset 271) */
+ "ip\0"
+ "glGetPixelMapfv\0"
+ "\0"
+ /* _mesa_function_pool[492]: Color3uiv (offset 22) */
+ "p\0"
+ "glColor3uiv\0"
+ "\0"
+ /* _mesa_function_pool[507]: IsEnabled (offset 286) */
+ "i\0"
+ "glIsEnabled\0"
+ "\0"
+ /* _mesa_function_pool[522]: EvalCoord2fv (offset 235) */
+ "p\0"
+ "glEvalCoord2fv\0"
+ "\0"
+ /* _mesa_function_pool[540]: AttachShader (will be remapped) */
+ "ii\0"
+ "glAttachShader\0"
+ "\0"
+ /* _mesa_function_pool[559]: GetMapiv (offset 268) */
+ "iip\0"
+ "glGetMapiv\0"
+ "\0"
+ /* _mesa_function_pool[575]: Indexubv (offset 316) */
+ "p\0"
+ "glIndexubv\0"
+ "\0"
+ /* _mesa_function_pool[589]: EdgeFlagPointer (offset 312) */
+ "ip\0"
+ "glEdgeFlagPointer\0"
+ "\0"
+ /* _mesa_function_pool[611]: Color3ubv (offset 20) */
+ "p\0"
+ "glColor3ubv\0"
+ "\0"
+ /* _mesa_function_pool[626]: Vertex3dv (offset 135) */
+ "p\0"
+ "glVertex3dv\0"
+ "\0"
+ /* _mesa_function_pool[641]: LightModeliv (offset 166) */
+ "ip\0"
+ "glLightModeliv\0"
+ "\0"
+ /* _mesa_function_pool[660]: GetVertexAttribfv (will be remapped) */
+ "iip\0"
+ "glGetVertexAttribfv\0"
+ "\0"
+ /* _mesa_function_pool[685]: Normal3bv (offset 53) */
+ "p\0"
+ "glNormal3bv\0"
+ "\0"
+ /* _mesa_function_pool[700]: TexGeniv (offset 193) */
+ "iip\0"
+ "glTexGeniv\0"
+ "\0"
+ /* _mesa_function_pool[716]: Vertex3iv (offset 139) */
+ "p\0"
+ "glVertex3iv\0"
+ "\0"
+ /* _mesa_function_pool[731]: RenderbufferStorage (will be remapped) */
+ "iiii\0"
+ "glRenderbufferStorage\0"
+ "\0"
+ /* _mesa_function_pool[759]: CopyConvolutionFilter1D (offset 354) */
+ "iiiii\0"
+ "glCopyConvolutionFilter1D\0"
+ "\0"
+ /* _mesa_function_pool[792]: ClearColor (offset 206) */
+ "ffff\0"
+ "glClearColor\0"
+ "\0"
+ /* _mesa_function_pool[811]: Uniform3i (will be remapped) */
+ "iiii\0"
+ "glUniform3i\0"
+ "\0"
+ /* _mesa_function_pool[829]: BlendColor (offset 336) */
+ "ffff\0"
+ "glBlendColor\0"
+ "\0"
+ /* _mesa_function_pool[848]: DeleteVertexArraysAPPLE (will be remapped) */
+ "ip\0"
+ "glDeleteVertexArraysAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[878]: Scalef (offset 302) */
+ "fff\0"
+ "glScalef\0"
+ "\0"
+ /* _mesa_function_pool[892]: Uniform3f (will be remapped) */
+ "ifff\0"
+ "glUniform3f\0"
+ "\0"
+ /* _mesa_function_pool[910]: Normal3iv (offset 59) */
+ "p\0"
+ "glNormal3iv\0"
+ "\0"
+ /* _mesa_function_pool[925]: Indexdv (offset 45) */
+ "p\0"
+ "glIndexdv\0"
+ "\0"
+ /* _mesa_function_pool[938]: Viewport (offset 305) */
+ "iiii\0"
+ "glViewport\0"
+ "\0"
+ /* _mesa_function_pool[955]: UniformMatrix3fv (will be remapped) */
+ "iiip\0"
+ "glUniformMatrix3fv\0"
+ "\0"
+ /* _mesa_function_pool[980]: DepthRange (offset 288) */
+ "dd\0"
+ "glDepthRange\0"
+ "\0"
+ /* _mesa_function_pool[997]: LoadMatrixf (offset 291) */
+ "p\0"
+ "glLoadMatrixf\0"
+ "\0"
+ /* _mesa_function_pool[1014]: VertexAttrib3f (will be remapped) */
+ "ifff\0"
+ "glVertexAttrib3f\0"
+ "\0"
+ /* _mesa_function_pool[1037]: CompressedTexSubImage2D (will be remapped) */
+ "iiiiiiiip\0"
+ "glCompressedTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[1074]: TexCoord2sv (offset 109) */
+ "p\0"
+ "glTexCoord2sv\0"
+ "\0"
+ /* _mesa_function_pool[1091]: TexCoord2dv (offset 103) */
+ "p\0"
+ "glTexCoord2dv\0"
+ "\0"
+ /* _mesa_function_pool[1108]: StencilMaskSeparate (will be remapped) */
+ "ii\0"
+ "glStencilMaskSeparate\0"
+ "\0"
+ /* _mesa_function_pool[1134]: Color3sv (offset 18) */
+ "p\0"
+ "glColor3sv\0"
+ "\0"
+ /* _mesa_function_pool[1148]: EvalCoord1f (offset 230) */
+ "f\0"
+ "glEvalCoord1f\0"
+ "\0"
+ /* _mesa_function_pool[1165]: GetConvolutionParameteriv (offset 358) */
+ "iip\0"
+ "glGetConvolutionParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[1198]: AlphaFunc (offset 240) */
+ "if\0"
+ "glAlphaFunc\0"
+ "\0"
+ /* _mesa_function_pool[1214]: MultiTexCoord1fvARB (offset 379) */
+ "ip\0"
+ "glMultiTexCoord1fvARB\0"
+ "\0"
+ /* _mesa_function_pool[1240]: TexCoord3iv (offset 115) */
+ "p\0"
+ "glTexCoord3iv\0"
+ "\0"
+ /* _mesa_function_pool[1257]: Color3fv (offset 14) */
+ "p\0"
+ "glColor3fv\0"
+ "\0"
+ /* _mesa_function_pool[1271]: CompressedTexImage3DOES (will be remapped) */
+ "iiiiiiiip\0"
+ "glCompressedTexImage3DOES\0"
+ "\0"
+ /* _mesa_function_pool[1308]: Translatef (offset 304) */
+ "fff\0"
+ "glTranslatef\0"
+ "\0"
+ /* _mesa_function_pool[1326]: PointSize (offset 173) */
+ "f\0"
+ "glPointSize\0"
+ "\0"
+ /* _mesa_function_pool[1341]: PopName (offset 200) */
+ "\0"
+ "glPopName\0"
+ "\0"
+ /* _mesa_function_pool[1353]: Vertex4sv (offset 149) */
+ "p\0"
+ "glVertex4sv\0"
+ "\0"
+ /* _mesa_function_pool[1368]: GetTexEnvfv (offset 276) */
+ "iip\0"
+ "glGetTexEnvfv\0"
+ "\0"
+ /* _mesa_function_pool[1387]: BindAttribLocation (will be remapped) */
+ "iip\0"
+ "glBindAttribLocation\0"
+ "\0"
+ /* _mesa_function_pool[1413]: GetProgramBinaryOES (will be remapped) */
+ "iippp\0"
+ "glGetProgramBinaryOES\0"
+ "\0"
+ /* _mesa_function_pool[1442]: LineStipple (offset 167) */
+ "ii\0"
+ "glLineStipple\0"
+ "\0"
+ /* _mesa_function_pool[1460]: TexEnvi (offset 186) */
+ "iii\0"
+ "glTexEnvi\0"
+ "\0"
+ /* _mesa_function_pool[1475]: GetClipPlane (offset 259) */
+ "ip\0"
+ "glGetClipPlane\0"
+ "\0"
+ /* _mesa_function_pool[1494]: Scaled (offset 301) */
+ "ddd\0"
+ "glScaled\0"
+ "\0"
+ /* _mesa_function_pool[1508]: CallLists (offset 3) */
+ "iip\0"
+ "glCallLists\0"
+ "\0"
+ /* _mesa_function_pool[1525]: GetUniformfv (will be remapped) */
+ "iip\0"
+ "glGetUniformfv\0"
+ "\0"
+ /* _mesa_function_pool[1545]: Vertex2dv (offset 127) */
+ "p\0"
+ "glVertex2dv\0"
+ "\0"
+ /* _mesa_function_pool[1560]: EdgeFlag (offset 41) */
+ "i\0"
+ "glEdgeFlag\0"
+ "\0"
+ /* _mesa_function_pool[1574]: TexCoord2iv (offset 107) */
+ "p\0"
+ "glTexCoord2iv\0"
+ "\0"
+ /* _mesa_function_pool[1591]: Rotated (offset 299) */
+ "dddd\0"
+ "glRotated\0"
+ "\0"
+ /* _mesa_function_pool[1607]: ReadPixels (offset 256) */
+ "iiiiiip\0"
+ "glReadPixels\0"
+ "\0"
+ /* _mesa_function_pool[1629]: EdgeFlagv (offset 42) */
+ "p\0"
+ "glEdgeFlagv\0"
+ "\0"
+ /* _mesa_function_pool[1644]: Indexd (offset 44) */
+ "d\0"
+ "glIndexd\0"
+ "\0"
+ /* _mesa_function_pool[1656]: TexParameterf (offset 178) */
+ "iif\0"
+ "glTexParameterf\0"
+ "\0"
+ /* _mesa_function_pool[1677]: TexParameteri (offset 180) */
+ "iii\0"
+ "glTexParameteri\0"
+ "\0"
+ /* _mesa_function_pool[1698]: MultiTexCoord3dARB (offset 392) */
+ "iddd\0"
+ "glMultiTexCoord3dARB\0"
+ "\0"
+ /* _mesa_function_pool[1725]: GetUniformiv (will be remapped) */
+ "iip\0"
+ "glGetUniformiv\0"
+ "\0"
+ /* _mesa_function_pool[1745]: DrawPixels (offset 257) */
+ "iiiip\0"
+ "glDrawPixels\0"
+ "\0"
+ /* _mesa_function_pool[1765]: MultiTexCoord2svARB (offset 391) */
+ "ip\0"
+ "glMultiTexCoord2svARB\0"
+ "\0"
+ /* _mesa_function_pool[1791]: MultiTexCoord2iARB (offset 388) */
+ "iii\0"
+ "glMultiTexCoord2iARB\0"
+ "\0"
+ /* _mesa_function_pool[1817]: MultiTexCoord3svARB (offset 399) */
+ "ip\0"
+ "glMultiTexCoord3svARB\0"
+ "\0"
+ /* _mesa_function_pool[1843]: CreateProgram (will be remapped) */
+ "\0"
+ "glCreateProgram\0"
+ "\0"
+ /* _mesa_function_pool[1861]: DepthRangef (will be remapped) */
+ "ff\0"
+ "glDepthRangef\0"
+ "\0"
+ /* _mesa_function_pool[1879]: Uniform3fv (will be remapped) */
+ "iip\0"
+ "glUniform3fv\0"
+ "\0"
+ /* _mesa_function_pool[1897]: MapGrid2f (offset 227) */
+ "iffiff\0"
+ "glMapGrid2f\0"
+ "\0"
+ /* _mesa_function_pool[1917]: ValidateProgram (will be remapped) */
+ "i\0"
+ "glValidateProgram\0"
+ "\0"
+ /* _mesa_function_pool[1938]: Scissor (offset 176) */
+ "iiii\0"
+ "glScissor\0"
+ "\0"
+ /* _mesa_function_pool[1954]: Fogf (offset 153) */
+ "if\0"
+ "glFogf\0"
+ "\0"
+ /* _mesa_function_pool[1965]: TexSubImage1D (offset 332) */
+ "iiiiiip\0"
+ "glTexSubImage1D\0"
+ "\0"
+ /* _mesa_function_pool[1990]: Color4usv (offset 40) */
+ "p\0"
+ "glColor4usv\0"
+ "\0"
+ /* _mesa_function_pool[2005]: Fogi (offset 155) */
+ "ii\0"
+ "glFogi\0"
+ "\0"
+ /* _mesa_function_pool[2016]: MultiTexCoord3sARB (offset 398) */
+ "iiii\0"
+ "glMultiTexCoord3sARB\0"
+ "\0"
+ /* _mesa_function_pool[2043]: RasterPos3iv (offset 75) */
+ "p\0"
+ "glRasterPos3iv\0"
+ "\0"
+ /* _mesa_function_pool[2061]: GetActiveAttrib (will be remapped) */
+ "iiipppp\0"
+ "glGetActiveAttrib\0"
+ "\0"
+ /* _mesa_function_pool[2088]: TexCoord2i (offset 106) */
+ "ii\0"
+ "glTexCoord2i\0"
+ "\0"
+ /* _mesa_function_pool[2105]: DepthFunc (offset 245) */
+ "i\0"
+ "glDepthFunc\0"
+ "\0"
+ /* _mesa_function_pool[2120]: Color4ui (offset 37) */
+ "iiii\0"
+ "glColor4ui\0"
+ "\0"
+ /* _mesa_function_pool[2137]: RasterPos3s (offset 76) */
+ "iii\0"
+ "glRasterPos3s\0"
+ "\0"
+ /* _mesa_function_pool[2156]: Color3usv (offset 24) */
+ "p\0"
+ "glColor3usv\0"
+ "\0"
+ /* _mesa_function_pool[2171]: TexCoord2f (offset 104) */
+ "ff\0"
+ "glTexCoord2f\0"
+ "\0"
+ /* _mesa_function_pool[2188]: TexCoord2d (offset 102) */
+ "dd\0"
+ "glTexCoord2d\0"
+ "\0"
+ /* _mesa_function_pool[2205]: RasterPos3d (offset 70) */
+ "ddd\0"
+ "glRasterPos3d\0"
+ "\0"
+ /* _mesa_function_pool[2224]: RasterPos3f (offset 72) */
+ "fff\0"
+ "glRasterPos3f\0"
+ "\0"
+ /* _mesa_function_pool[2243]: AreTexturesResident (offset 322) */
+ "ipp\0"
+ "glAreTexturesResident\0"
+ "\0"
+ /* _mesa_function_pool[2270]: TexCoord2s (offset 108) */
+ "ii\0"
+ "glTexCoord2s\0"
+ "\0"
+ /* _mesa_function_pool[2287]: StencilOpSeparate (will be remapped) */
+ "iiii\0"
+ "glStencilOpSeparate\0"
+ "\0"
+ /* _mesa_function_pool[2313]: RasterPos3i (offset 74) */
+ "iii\0"
+ "glRasterPos3i\0"
+ "\0"
+ /* _mesa_function_pool[2332]: Color4us (offset 39) */
+ "iiii\0"
+ "glColor4us\0"
+ "\0"
+ /* _mesa_function_pool[2349]: GetTexParameteriv (offset 283) */
+ "iip\0"
+ "glGetTexParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[2374]: MapBufferOES (will be remapped) */
+ "ii\0"
+ "glMapBufferOES\0"
+ "\0"
+ /* _mesa_function_pool[2393]: MultiTexCoord2fARB (offset 386) */
+ "iff\0"
+ "glMultiTexCoord2fARB\0"
+ "\0"
+ /* _mesa_function_pool[2419]: ColorTable (offset 339) */
+ "iiiiip\0"
+ "glColorTable\0"
+ "\0"
+ /* _mesa_function_pool[2440]: IndexPointer (offset 314) */
+ "iip\0"
+ "glIndexPointer\0"
+ "\0"
+ /* _mesa_function_pool[2460]: Accum (offset 213) */
+ "if\0"
+ "glAccum\0"
+ "\0"
+ /* _mesa_function_pool[2472]: GetTexImage (offset 281) */
+ "iiiip\0"
+ "glGetTexImage\0"
+ "\0"
+ /* _mesa_function_pool[2493]: LoadName (offset 198) */
+ "i\0"
+ "glLoadName\0"
+ "\0"
+ /* _mesa_function_pool[2507]: Finish (offset 216) */
+ "\0"
+ "glFinish\0"
+ "\0"
+ /* _mesa_function_pool[2518]: ClearStencil (offset 207) */
+ "i\0"
+ "glClearStencil\0"
+ "\0"
+ /* _mesa_function_pool[2536]: ConvolutionParameteriv (offset 353) */
+ "iip\0"
+ "glConvolutionParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[2566]: GenBuffers (will be remapped) */
+ "ip\0"
+ "glGenBuffers\0"
+ "\0"
+ /* _mesa_function_pool[2583]: InterleavedArrays (offset 317) */
+ "iip\0"
+ "glInterleavedArrays\0"
+ "\0"
+ /* _mesa_function_pool[2608]: RasterPos2fv (offset 65) */
+ "p\0"
+ "glRasterPos2fv\0"
+ "\0"
+ /* _mesa_function_pool[2626]: TexCoord1fv (offset 97) */
+ "p\0"
+ "glTexCoord1fv\0"
+ "\0"
+ /* _mesa_function_pool[2643]: MultiTexCoord1sARB (offset 382) */
+ "ii\0"
+ "glMultiTexCoord1sARB\0"
+ "\0"
+ /* _mesa_function_pool[2668]: EnableVertexAttribArray (will be remapped) */
+ "i\0"
+ "glEnableVertexAttribArray\0"
+ "\0"
+ /* _mesa_function_pool[2697]: Color4i (offset 31) */
+ "iiii\0"
+ "glColor4i\0"
+ "\0"
+ /* _mesa_function_pool[2713]: Color4f (offset 29) */
+ "ffff\0"
+ "glColor4f\0"
+ "\0"
+ /* _mesa_function_pool[2729]: RasterPos4fv (offset 81) */
+ "p\0"
+ "glRasterPos4fv\0"
+ "\0"
+ /* _mesa_function_pool[2747]: Color4d (offset 27) */
+ "dddd\0"
+ "glColor4d\0"
+ "\0"
+ /* _mesa_function_pool[2763]: ClearIndex (offset 205) */
+ "f\0"
+ "glClearIndex\0"
+ "\0"
+ /* _mesa_function_pool[2779]: Color4b (offset 25) */
+ "iiii\0"
+ "glColor4b\0"
+ "\0"
+ /* _mesa_function_pool[2795]: LoadMatrixd (offset 292) */
+ "p\0"
+ "glLoadMatrixd\0"
+ "\0"
+ /* _mesa_function_pool[2812]: PushMatrix (offset 298) */
+ "\0"
+ "glPushMatrix\0"
+ "\0"
+ /* _mesa_function_pool[2827]: ConvolutionParameterfv (offset 351) */
+ "iip\0"
+ "glConvolutionParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[2857]: GetTexGendv (offset 278) */
+ "iip\0"
+ "glGetTexGendv\0"
+ "\0"
+ /* _mesa_function_pool[2876]: EndList (offset 1) */
+ "\0"
+ "glEndList\0"
+ "\0"
+ /* _mesa_function_pool[2888]: EvalCoord1fv (offset 231) */
+ "p\0"
+ "glEvalCoord1fv\0"
+ "\0"
+ /* _mesa_function_pool[2906]: DrawRangeElements (offset 338) */
+ "iiiiip\0"
+ "glDrawRangeElements\0"
+ "\0"
+ /* _mesa_function_pool[2934]: EvalMesh2 (offset 238) */
+ "iiiii\0"
+ "glEvalMesh2\0"
+ "\0"
+ /* _mesa_function_pool[2953]: Vertex4fv (offset 145) */
+ "p\0"
+ "glVertex4fv\0"
+ "\0"
+ /* _mesa_function_pool[2968]: BindFramebuffer (will be remapped) */
+ "ii\0"
+ "glBindFramebuffer\0"
+ "\0"
+ /* _mesa_function_pool[2990]: GenLists (offset 5) */
+ "i\0"
+ "glGenLists\0"
+ "\0"
+ /* _mesa_function_pool[3004]: ReleaseShaderCompiler (will be remapped) */
+ "\0"
+ "glReleaseShaderCompiler\0"
+ "\0"
+ /* _mesa_function_pool[3030]: GetMinmax (offset 364) */
+ "iiiip\0"
+ "glGetMinmax\0"
+ "\0"
+ /* _mesa_function_pool[3049]: BlendFuncSeparate (will be remapped) */
+ "iiii\0"
+ "glBlendFuncSeparate\0"
+ "\0"
+ /* _mesa_function_pool[3075]: StencilFuncSeparate (will be remapped) */
+ "iiii\0"
+ "glStencilFuncSeparate\0"
+ "\0"
+ /* _mesa_function_pool[3103]: ShaderSource (will be remapped) */
+ "iipp\0"
+ "glShaderSource\0"
+ "\0"
+ /* _mesa_function_pool[3124]: Normal3fv (offset 57) */
+ "p\0"
+ "glNormal3fv\0"
+ "\0"
+ /* _mesa_function_pool[3139]: Color3us (offset 23) */
+ "iii\0"
+ "glColor3us\0"
+ "\0"
+ /* _mesa_function_pool[3155]: End (offset 43) */
+ "\0"
+ "glEnd\0"
+ "\0"
+ /* _mesa_function_pool[3163]: MultiTexCoord3fvARB (offset 395) */
+ "ip\0"
+ "glMultiTexCoord3fvARB\0"
+ "\0"
+ /* _mesa_function_pool[3189]: Color3ub (offset 19) */
+ "iii\0"
+ "glColor3ub\0"
+ "\0"
+ /* _mesa_function_pool[3205]: BufferData (will be remapped) */
+ "iipi\0"
+ "glBufferData\0"
+ "\0"
+ /* _mesa_function_pool[3224]: Color3ui (offset 21) */
+ "iii\0"
+ "glColor3ui\0"
+ "\0"
+ /* _mesa_function_pool[3240]: TexSubImage2D (offset 333) */
+ "iiiiiiiip\0"
+ "glTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[3267]: Enable (offset 215) */
+ "i\0"
+ "glEnable\0"
+ "\0"
+ /* _mesa_function_pool[3279]: GetVertexAttribiv (will be remapped) */
+ "iip\0"
+ "glGetVertexAttribiv\0"
+ "\0"
+ /* _mesa_function_pool[3304]: ShaderBinary (will be remapped) */
+ "ipipi\0"
+ "glShaderBinary\0"
+ "\0"
+ /* _mesa_function_pool[3326]: MultiTexCoord4sARB (offset 406) */
+ "iiiii\0"
+ "glMultiTexCoord4sARB\0"
+ "\0"
+ /* _mesa_function_pool[3354]: MapGrid2d (offset 226) */
+ "iddidd\0"
+ "glMapGrid2d\0"
+ "\0"
+ /* _mesa_function_pool[3374]: BlendEquation (offset 337) */
+ "i\0"
+ "glBlendEquation\0"
+ "\0"
+ /* _mesa_function_pool[3393]: GetError (offset 261) */
+ "\0"
+ "glGetError\0"
+ "\0"
+ /* _mesa_function_pool[3406]: TexCoord3dv (offset 111) */
+ "p\0"
+ "glTexCoord3dv\0"
+ "\0"
+ /* _mesa_function_pool[3423]: PassThrough (offset 199) */
+ "f\0"
+ "glPassThrough\0"
+ "\0"
+ /* _mesa_function_pool[3440]: Normal3s (offset 60) */
+ "iii\0"
+ "glNormal3s\0"
+ "\0"
+ /* _mesa_function_pool[3456]: PushName (offset 201) */
+ "i\0"
+ "glPushName\0"
+ "\0"
+ /* _mesa_function_pool[3470]: MultiTexCoord2dvARB (offset 385) */
+ "ip\0"
+ "glMultiTexCoord2dvARB\0"
+ "\0"
+ /* _mesa_function_pool[3496]: Normal3i (offset 58) */
+ "iii\0"
+ "glNormal3i\0"
+ "\0"
+ /* _mesa_function_pool[3512]: DeleteRenderbuffers (will be remapped) */
+ "ip\0"
+ "glDeleteRenderbuffers\0"
+ "\0"
+ /* _mesa_function_pool[3538]: Normal3b (offset 52) */
+ "iii\0"
+ "glNormal3b\0"
+ "\0"
+ /* _mesa_function_pool[3554]: Normal3d (offset 54) */
+ "ddd\0"
+ "glNormal3d\0"
+ "\0"
+ /* _mesa_function_pool[3570]: CopyTexSubImage3DOES (offset 373) */
+ "iiiiiiiii\0"
+ "glCopyTexSubImage3DOES\0"
+ "glCopyTexSubImage3D\0"
+ "\0"
+ /* _mesa_function_pool[3624]: Normal3f (offset 56) */
+ "fff\0"
+ "glNormal3f\0"
+ "\0"
+ /* _mesa_function_pool[3640]: MultiTexCoord1svARB (offset 383) */
+ "ip\0"
+ "glMultiTexCoord1svARB\0"
+ "\0"
+ /* _mesa_function_pool[3666]: Indexi (offset 48) */
+ "i\0"
+ "glIndexi\0"
+ "\0"
+ /* _mesa_function_pool[3678]: EGLImageTargetTexture2DOES (will be remapped) */
+ "ip\0"
+ "glEGLImageTargetTexture2DOES\0"
+ "\0"
+ /* _mesa_function_pool[3711]: IsRenderbuffer (will be remapped) */
+ "i\0"
+ "glIsRenderbuffer\0"
+ "\0"
+ /* _mesa_function_pool[3731]: DepthMask (offset 211) */
+ "i\0"
+ "glDepthMask\0"
+ "\0"
+ /* _mesa_function_pool[3746]: IsShader (will be remapped) */
+ "i\0"
+ "glIsShader\0"
+ "\0"
+ /* _mesa_function_pool[3760]: Indexf (offset 46) */
+ "f\0"
+ "glIndexf\0"
+ "\0"
+ /* _mesa_function_pool[3772]: Color4iv (offset 32) */
+ "p\0"
+ "glColor4iv\0"
+ "\0"
+ /* _mesa_function_pool[3786]: GetMaterialiv (offset 270) */
+ "iip\0"
+ "glGetMaterialiv\0"
+ "\0"
+ /* _mesa_function_pool[3807]: StencilOp (offset 244) */
+ "iii\0"
+ "glStencilOp\0"
+ "\0"
+ /* _mesa_function_pool[3824]: GetShaderInfoLog (will be remapped) */
+ "iipp\0"
+ "glGetShaderInfoLog\0"
+ "\0"
+ /* _mesa_function_pool[3849]: TexEnvfv (offset 185) */
+ "iip\0"
+ "glTexEnvfv\0"
+ "\0"
+ /* _mesa_function_pool[3865]: MultiTexCoord4iARB (offset 404) */
+ "iiiii\0"
+ "glMultiTexCoord4iARB\0"
+ "\0"
+ /* _mesa_function_pool[3893]: Indexs (offset 50) */
+ "i\0"
+ "glIndexs\0"
+ "\0"
+ /* _mesa_function_pool[3905]: EGLImageTargetRenderbufferStorageOES (will be remapped) */
+ "ip\0"
+ "glEGLImageTargetRenderbufferStorageOES\0"
+ "\0"
+ /* _mesa_function_pool[3948]: Vertex2i (offset 130) */
+ "ii\0"
+ "glVertex2i\0"
+ "\0"
+ /* _mesa_function_pool[3963]: Vertex2d (offset 126) */
+ "dd\0"
+ "glVertex2d\0"
+ "\0"
+ /* _mesa_function_pool[3978]: Vertex2f (offset 128) */
+ "ff\0"
+ "glVertex2f\0"
+ "\0"
+ /* _mesa_function_pool[3993]: Color4bv (offset 26) */
+ "p\0"
+ "glColor4bv\0"
+ "\0"
+ /* _mesa_function_pool[4007]: VertexPointer (offset 321) */
+ "iiip\0"
+ "glVertexPointer\0"
+ "\0"
+ /* _mesa_function_pool[4029]: DeleteLists (offset 4) */
+ "ii\0"
+ "glDeleteLists\0"
+ "\0"
+ /* _mesa_function_pool[4047]: LogicOp (offset 242) */
+ "i\0"
+ "glLogicOp\0"
+ "\0"
+ /* _mesa_function_pool[4060]: Vertex2s (offset 132) */
+ "ii\0"
+ "glVertex2s\0"
+ "\0"
+ /* _mesa_function_pool[4075]: TexCoord4fv (offset 121) */
+ "p\0"
+ "glTexCoord4fv\0"
+ "\0"
+ /* _mesa_function_pool[4092]: ActiveTexture (offset 374) */
+ "i\0"
+ "glActiveTexture\0"
+ "glActiveTextureARB\0"
+ "\0"
+ /* _mesa_function_pool[4130]: MultiTexCoord3iARB (offset 396) */
+ "iiii\0"
+ "glMultiTexCoord3iARB\0"
+ "\0"
+ /* _mesa_function_pool[4157]: IsProgram (will be remapped) */
+ "i\0"
+ "glIsProgram\0"
+ "\0"
+ /* _mesa_function_pool[4172]: GenTextures (offset 328) */
+ "ip\0"
+ "glGenTextures\0"
+ "\0"
+ /* _mesa_function_pool[4190]: RasterPos2sv (offset 69) */
+ "p\0"
+ "glRasterPos2sv\0"
+ "\0"
+ /* _mesa_function_pool[4208]: Color4ubv (offset 36) */
+ "p\0"
+ "glColor4ubv\0"
+ "\0"
+ /* _mesa_function_pool[4223]: DrawBuffer (offset 202) */
+ "i\0"
+ "glDrawBuffer\0"
+ "\0"
+ /* _mesa_function_pool[4239]: TexCoord2fv (offset 105) */
+ "p\0"
+ "glTexCoord2fv\0"
+ "\0"
+ /* _mesa_function_pool[4256]: GetPointerv (offset 329) */
+ "ip\0"
+ "glGetPointerv\0"
+ "\0"
+ /* _mesa_function_pool[4274]: TexCoord1sv (offset 101) */
+ "p\0"
+ "glTexCoord1sv\0"
+ "\0"
+ /* _mesa_function_pool[4291]: PixelMapfv (offset 251) */
+ "iip\0"
+ "glPixelMapfv\0"
+ "\0"
+ /* _mesa_function_pool[4309]: PixelMapusv (offset 253) */
+ "iip\0"
+ "glPixelMapusv\0"
+ "\0"
+ /* _mesa_function_pool[4328]: MultiTexCoord1dARB (offset 376) */
+ "id\0"
+ "glMultiTexCoord1dARB\0"
+ "\0"
+ /* _mesa_function_pool[4353]: BlendFunc (offset 241) */
+ "ii\0"
+ "glBlendFunc\0"
+ "\0"
+ /* _mesa_function_pool[4369]: Uniform4i (will be remapped) */
+ "iiiii\0"
+ "glUniform4i\0"
+ "\0"
+ /* _mesa_function_pool[4388]: ProgramBinaryOES (will be remapped) */
+ "iipi\0"
+ "glProgramBinaryOES\0"
+ "\0"
+ /* _mesa_function_pool[4413]: CompressedTexImage2D (will be remapped) */
+ "iiiiiiip\0"
+ "glCompressedTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[4446]: MultiTexCoord3dvARB (offset 393) */
+ "ip\0"
+ "glMultiTexCoord3dvARB\0"
+ "\0"
+ /* _mesa_function_pool[4472]: GetShaderPrecisionFormat (will be remapped) */
+ "iipp\0"
+ "glGetShaderPrecisionFormat\0"
+ "\0"
+ /* _mesa_function_pool[4505]: Flush (offset 217) */
+ "\0"
+ "glFlush\0"
+ "\0"
+ /* _mesa_function_pool[4515]: Color4uiv (offset 38) */
+ "p\0"
+ "glColor4uiv\0"
+ "\0"
+ /* _mesa_function_pool[4530]: RasterPos3sv (offset 77) */
+ "p\0"
+ "glRasterPos3sv\0"
+ "\0"
+ /* _mesa_function_pool[4548]: PushAttrib (offset 219) */
+ "i\0"
+ "glPushAttrib\0"
+ "\0"
+ /* _mesa_function_pool[4564]: RasterPos2i (offset 66) */
+ "ii\0"
+ "glRasterPos2i\0"
+ "\0"
+ /* _mesa_function_pool[4582]: Uniform3iv (will be remapped) */
+ "iip\0"
+ "glUniform3iv\0"
+ "\0"
+ /* _mesa_function_pool[4600]: TexParameteriv (offset 181) */
+ "iip\0"
+ "glTexParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[4622]: GetAttribLocation (will be remapped) */
+ "ip\0"
+ "glGetAttribLocation\0"
+ "\0"
+ /* _mesa_function_pool[4646]: RasterPos2f (offset 64) */
+ "ff\0"
+ "glRasterPos2f\0"
+ "\0"
+ /* _mesa_function_pool[4664]: RasterPos2d (offset 62) */
+ "dd\0"
+ "glRasterPos2d\0"
+ "\0"
+ /* _mesa_function_pool[4682]: RasterPos3fv (offset 73) */
+ "p\0"
+ "glRasterPos3fv\0"
+ "\0"
+ /* _mesa_function_pool[4700]: Color4ub (offset 35) */
+ "iiii\0"
+ "glColor4ub\0"
+ "\0"
+ /* _mesa_function_pool[4717]: RasterPos2s (offset 68) */
+ "ii\0"
+ "glRasterPos2s\0"
+ "\0"
+ /* _mesa_function_pool[4735]: GetColorTable (offset 343) */
+ "iiip\0"
+ "glGetColorTable\0"
+ "\0"
+ /* _mesa_function_pool[4757]: Indexiv (offset 49) */
+ "p\0"
+ "glIndexiv\0"
+ "\0"
+ /* _mesa_function_pool[4770]: TexCoord3i (offset 114) */
+ "iii\0"
+ "glTexCoord3i\0"
+ "\0"
+ /* _mesa_function_pool[4788]: CopyColorTable (offset 342) */
+ "iiiii\0"
+ "glCopyColorTable\0"
+ "\0"
+ /* _mesa_function_pool[4812]: GetHistogramParameterfv (offset 362) */
+ "iip\0"
+ "glGetHistogramParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[4843]: Frustum (offset 289) */
+ "dddddd\0"
+ "glFrustum\0"
+ "\0"
+ /* _mesa_function_pool[4861]: GetString (offset 275) */
+ "i\0"
+ "glGetString\0"
+ "\0"
+ /* _mesa_function_pool[4876]: TexEnvf (offset 184) */
+ "iif\0"
+ "glTexEnvf\0"
+ "\0"
+ /* _mesa_function_pool[4891]: TexCoord3d (offset 110) */
+ "ddd\0"
+ "glTexCoord3d\0"
+ "\0"
+ /* _mesa_function_pool[4909]: VertexAttrib3fv (will be remapped) */
+ "ip\0"
+ "glVertexAttrib3fv\0"
+ "\0"
+ /* _mesa_function_pool[4931]: TexCoord3f (offset 112) */
+ "fff\0"
+ "glTexCoord3f\0"
+ "\0"
+ /* _mesa_function_pool[4949]: MultiTexCoord3ivARB (offset 397) */
+ "ip\0"
+ "glMultiTexCoord3ivARB\0"
+ "\0"
+ /* _mesa_function_pool[4975]: MultiTexCoord2sARB (offset 390) */
+ "iii\0"
+ "glMultiTexCoord2sARB\0"
+ "\0"
+ /* _mesa_function_pool[5001]: DeleteTextures (offset 327) */
+ "ip\0"
+ "glDeleteTextures\0"
+ "\0"
+ /* _mesa_function_pool[5022]: TexCoord3s (offset 116) */
+ "iii\0"
+ "glTexCoord3s\0"
+ "\0"
+ /* _mesa_function_pool[5040]: GetTexLevelParameteriv (offset 285) */
+ "iiip\0"
+ "glGetTexLevelParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5071]: ClearAccum (offset 204) */
+ "ffff\0"
+ "glClearAccum\0"
+ "\0"
+ /* _mesa_function_pool[5090]: TexCoord4iv (offset 123) */
+ "p\0"
+ "glTexCoord4iv\0"
+ "\0"
+ /* _mesa_function_pool[5107]: PolygonOffset (offset 319) */
+ "ff\0"
+ "glPolygonOffset\0"
+ "\0"
+ /* _mesa_function_pool[5127]: GetBufferParameteriv (will be remapped) */
+ "iip\0"
+ "glGetBufferParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5155]: Indexfv (offset 47) */
+ "p\0"
+ "glIndexfv\0"
+ "\0"
+ /* _mesa_function_pool[5168]: ColorTableParameteriv (offset 341) */
+ "iip\0"
+ "glColorTableParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5197]: CopyTexImage2D (offset 324) */
+ "iiiiiiii\0"
+ "glCopyTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[5224]: GenVertexArraysAPPLE (will be remapped) */
+ "ip\0"
+ "glGenVertexArraysAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[5251]: Lightfv (offset 160) */
+ "iip\0"
+ "glLightfv\0"
+ "\0"
+ /* _mesa_function_pool[5266]: GetFramebufferAttachmentParameteriv (will be remapped) */
+ "iiip\0"
+ "glGetFramebufferAttachmentParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[5310]: ClearDepth (offset 208) */
+ "d\0"
+ "glClearDepth\0"
+ "\0"
+ /* _mesa_function_pool[5326]: GetVertexAttribPointerv (will be remapped) */
+ "iip\0"
+ "glGetVertexAttribPointerv\0"
+ "\0"
+ /* _mesa_function_pool[5357]: ColorSubTable (offset 346) */
+ "iiiiip\0"
+ "glColorSubTable\0"
+ "\0"
+ /* _mesa_function_pool[5381]: Color4fv (offset 30) */
+ "p\0"
+ "glColor4fv\0"
+ "\0"
+ /* _mesa_function_pool[5395]: MultiTexCoord4ivARB (offset 405) */
+ "ip\0"
+ "glMultiTexCoord4ivARB\0"
+ "\0"
+ /* _mesa_function_pool[5421]: ColorPointer (offset 308) */
+ "iiip\0"
+ "glColorPointer\0"
+ "\0"
+ /* _mesa_function_pool[5442]: GetShaderiv (will be remapped) */
+ "iip\0"
+ "glGetShaderiv\0"
+ "\0"
+ /* _mesa_function_pool[5461]: Lightiv (offset 162) */
+ "iip\0"
+ "glLightiv\0"
+ "\0"
+ /* _mesa_function_pool[5476]: Color3bv (offset 10) */
+ "p\0"
+ "glColor3bv\0"
+ "\0"
+ /* _mesa_function_pool[5490]: GetBufferPointervOES (will be remapped) */
+ "iip\0"
+ "glGetBufferPointervOES\0"
+ "\0"
+ /* _mesa_function_pool[5518]: Rectdv (offset 87) */
+ "pp\0"
+ "glRectdv\0"
+ "\0"
+ /* _mesa_function_pool[5531]: GetAttachedShaders (will be remapped) */
+ "iipp\0"
+ "glGetAttachedShaders\0"
+ "\0"
+ /* _mesa_function_pool[5558]: Materialiv (offset 172) */
+ "iip\0"
+ "glMaterialiv\0"
+ "\0"
+ /* _mesa_function_pool[5576]: PushClientAttrib (offset 335) */
+ "i\0"
+ "glPushClientAttrib\0"
+ "\0"
+ /* _mesa_function_pool[5598]: PolygonMode (offset 174) */
+ "ii\0"
+ "glPolygonMode\0"
+ "\0"
+ /* _mesa_function_pool[5616]: LinkProgram (will be remapped) */
+ "i\0"
+ "glLinkProgram\0"
+ "\0"
+ /* _mesa_function_pool[5633]: Uniform1f (will be remapped) */
+ "if\0"
+ "glUniform1f\0"
+ "\0"
+ /* _mesa_function_pool[5649]: DisableClientState (offset 309) */
+ "i\0"
+ "glDisableClientState\0"
+ "\0"
+ /* _mesa_function_pool[5673]: TexGeni (offset 192) */
+ "iii\0"
+ "glTexGeni\0"
+ "\0"
+ /* _mesa_function_pool[5688]: TexGenf (offset 190) */
+ "iif\0"
+ "glTexGenf\0"
+ "\0"
+ /* _mesa_function_pool[5703]: TexGend (offset 188) */
+ "iid\0"
+ "glTexGend\0"
+ "\0"
+ /* _mesa_function_pool[5718]: Uniform1i (will be remapped) */
+ "ii\0"
+ "glUniform1i\0"
+ "\0"
+ /* _mesa_function_pool[5734]: GetPolygonStipple (offset 274) */
+ "p\0"
+ "glGetPolygonStipple\0"
+ "\0"
+ /* _mesa_function_pool[5757]: VertexAttrib4f (will be remapped) */
+ "iffff\0"
+ "glVertexAttrib4f\0"
+ "\0"
+ /* _mesa_function_pool[5781]: ConvolutionFilter2D (offset 349) */
+ "iiiiiip\0"
+ "glConvolutionFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[5812]: ClientActiveTextureARB (offset 375) */
+ "i\0"
+ "glClientActiveTextureARB\0"
+ "\0"
+ /* _mesa_function_pool[5840]: UseProgram (will be remapped) */
+ "i\0"
+ "glUseProgram\0"
+ "\0"
+ /* _mesa_function_pool[5856]: Color4sv (offset 34) */
+ "p\0"
+ "glColor4sv\0"
+ "\0"
+ /* _mesa_function_pool[5870]: Uniform4f (will be remapped) */
+ "iffff\0"
+ "glUniform4f\0"
+ "\0"
+ /* _mesa_function_pool[5889]: ResetHistogram (offset 369) */
+ "i\0"
+ "glResetHistogram\0"
+ "\0"
+ /* _mesa_function_pool[5909]: PixelZoom (offset 246) */
+ "ff\0"
+ "glPixelZoom\0"
+ "\0"
+ /* _mesa_function_pool[5925]: ColorTableParameterfv (offset 340) */
+ "iip\0"
+ "glColorTableParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[5954]: PixelMapuiv (offset 252) */
+ "iip\0"
+ "glPixelMapuiv\0"
+ "\0"
+ /* _mesa_function_pool[5973]: Color3dv (offset 12) */
+ "p\0"
+ "glColor3dv\0"
+ "\0"
+ /* _mesa_function_pool[5987]: IsTexture (offset 330) */
+ "i\0"
+ "glIsTexture\0"
+ "\0"
+ /* _mesa_function_pool[6002]: Fogfv (offset 154) */
+ "ip\0"
+ "glFogfv\0"
+ "\0"
+ /* _mesa_function_pool[6014]: GetMapdv (offset 266) */
+ "iip\0"
+ "glGetMapdv\0"
+ "\0"
+ /* _mesa_function_pool[6030]: GetUniformLocation (will be remapped) */
+ "ip\0"
+ "glGetUniformLocation\0"
+ "\0"
+ /* _mesa_function_pool[6055]: PixelStoref (offset 249) */
+ "if\0"
+ "glPixelStoref\0"
+ "\0"
+ /* _mesa_function_pool[6073]: PrioritizeTextures (offset 331) */
+ "ipp\0"
+ "glPrioritizeTextures\0"
+ "\0"
+ /* _mesa_function_pool[6099]: PixelStorei (offset 250) */
+ "ii\0"
+ "glPixelStorei\0"
+ "\0"
+ /* _mesa_function_pool[6117]: IsBuffer (will be remapped) */
+ "i\0"
+ "glIsBuffer\0"
+ "\0"
+ /* _mesa_function_pool[6131]: EvalCoord2dv (offset 233) */
+ "p\0"
+ "glEvalCoord2dv\0"
+ "\0"
+ /* _mesa_function_pool[6149]: ColorMaterial (offset 151) */
+ "ii\0"
+ "glColorMaterial\0"
+ "\0"
+ /* _mesa_function_pool[6169]: Minmax (offset 368) */
+ "iii\0"
+ "glMinmax\0"
+ "\0"
+ /* _mesa_function_pool[6183]: GetSeparableFilter (offset 359) */
+ "iiippp\0"
+ "glGetSeparableFilter\0"
+ "\0"
+ /* _mesa_function_pool[6212]: FeedbackBuffer (offset 194) */
+ "iip\0"
+ "glFeedbackBuffer\0"
+ "\0"
+ /* _mesa_function_pool[6234]: RasterPos2iv (offset 67) */
+ "p\0"
+ "glRasterPos2iv\0"
+ "\0"
+ /* _mesa_function_pool[6252]: TexImage1D (offset 182) */
+ "iiiiiiip\0"
+ "glTexImage1D\0"
+ "\0"
+ /* _mesa_function_pool[6275]: MultiDrawElementsEXT (will be remapped) */
+ "ipipi\0"
+ "glMultiDrawElementsEXT\0"
+ "\0"
+ /* _mesa_function_pool[6305]: Color3s (offset 17) */
+ "iii\0"
+ "glColor3s\0"
+ "\0"
+ /* _mesa_function_pool[6320]: CheckFramebufferStatus (will be remapped) */
+ "i\0"
+ "glCheckFramebufferStatus\0"
+ "\0"
+ /* _mesa_function_pool[6348]: TexCoordPointer (offset 320) */
+ "iiip\0"
+ "glTexCoordPointer\0"
+ "\0"
+ /* _mesa_function_pool[6372]: Color3i (offset 15) */
+ "iii\0"
+ "glColor3i\0"
+ "\0"
+ /* _mesa_function_pool[6387]: FrontFace (offset 157) */
+ "i\0"
+ "glFrontFace\0"
+ "\0"
+ /* _mesa_function_pool[6402]: EvalCoord2d (offset 232) */
+ "dd\0"
+ "glEvalCoord2d\0"
+ "\0"
+ /* _mesa_function_pool[6420]: EvalCoord2f (offset 234) */
+ "ff\0"
+ "glEvalCoord2f\0"
+ "\0"
+ /* _mesa_function_pool[6438]: Color3b (offset 9) */
+ "iii\0"
+ "glColor3b\0"
+ "\0"
+ /* _mesa_function_pool[6453]: MultiTexCoord2dARB (offset 384) */
+ "idd\0"
+ "glMultiTexCoord2dARB\0"
+ "\0"
+ /* _mesa_function_pool[6479]: Color3f (offset 13) */
+ "fff\0"
+ "glColor3f\0"
+ "\0"
+ /* _mesa_function_pool[6494]: Color3d (offset 11) */
+ "ddd\0"
+ "glColor3d\0"
+ "\0"
+ /* _mesa_function_pool[6509]: Normal3dv (offset 55) */
+ "p\0"
+ "glNormal3dv\0"
+ "\0"
+ /* _mesa_function_pool[6524]: Lightf (offset 159) */
+ "iif\0"
+ "glLightf\0"
+ "\0"
+ /* _mesa_function_pool[6538]: MatrixMode (offset 293) */
+ "i\0"
+ "glMatrixMode\0"
+ "\0"
+ /* _mesa_function_pool[6554]: Uniform1iv (will be remapped) */
+ "iip\0"
+ "glUniform1iv\0"
+ "\0"
+ /* _mesa_function_pool[6572]: Lighti (offset 161) */
+ "iii\0"
+ "glLighti\0"
+ "\0"
+ /* _mesa_function_pool[6586]: GenFramebuffers (will be remapped) */
+ "ip\0"
+ "glGenFramebuffers\0"
+ "\0"
+ /* _mesa_function_pool[6608]: Color4s (offset 33) */
+ "iiii\0"
+ "glColor4s\0"
+ "\0"
+ /* _mesa_function_pool[6624]: IsFramebuffer (will be remapped) */
+ "i\0"
+ "glIsFramebuffer\0"
+ "\0"
+ /* _mesa_function_pool[6643]: BlendEquationSeparate (will be remapped) */
+ "ii\0"
+ "glBlendEquationSeparate\0"
+ "\0"
+ /* _mesa_function_pool[6671]: GetDoublev (offset 260) */
+ "ip\0"
+ "glGetDoublev\0"
+ "\0"
+ /* _mesa_function_pool[6688]: MultMatrixd (offset 295) */
+ "p\0"
+ "glMultMatrixd\0"
+ "\0"
+ /* _mesa_function_pool[6705]: MultMatrixf (offset 294) */
+ "p\0"
+ "glMultMatrixf\0"
+ "\0"
+ /* _mesa_function_pool[6722]: VertexAttrib1f (will be remapped) */
+ "if\0"
+ "glVertexAttrib1f\0"
+ "\0"
+ /* _mesa_function_pool[6743]: MultiTexCoord4fvARB (offset 403) */
+ "ip\0"
+ "glMultiTexCoord4fvARB\0"
+ "\0"
+ /* _mesa_function_pool[6769]: RasterPos4sv (offset 85) */
+ "p\0"
+ "glRasterPos4sv\0"
+ "\0"
+ /* _mesa_function_pool[6787]: DrawArrays (offset 310) */
+ "iii\0"
+ "glDrawArrays\0"
+ "\0"
+ /* _mesa_function_pool[6805]: TexEnviv (offset 187) */
+ "iip\0"
+ "glTexEnviv\0"
+ "\0"
+ /* _mesa_function_pool[6821]: CreateShader (will be remapped) */
+ "i\0"
+ "glCreateShader\0"
+ "\0"
+ /* _mesa_function_pool[6839]: GetColorTableParameterfv (offset 344) */
+ "iip\0"
+ "glGetColorTableParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[6871]: FramebufferTexture2D (will be remapped) */
+ "iiiii\0"
+ "glFramebufferTexture2D\0"
+ "\0"
+ /* _mesa_function_pool[6901]: Bitmap (offset 8) */
+ "iiffffp\0"
+ "glBitmap\0"
+ "\0"
+ /* _mesa_function_pool[6919]: MultiTexCoord3fARB (offset 394) */
+ "ifff\0"
+ "glMultiTexCoord3fARB\0"
+ "\0"
+ /* _mesa_function_pool[6946]: GetTexLevelParameterfv (offset 284) */
+ "iiip\0"
+ "glGetTexLevelParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[6977]: Vertex2sv (offset 133) */
+ "p\0"
+ "glVertex2sv\0"
+ "\0"
+ /* _mesa_function_pool[6992]: GetIntegerv (offset 263) */
+ "ip\0"
+ "glGetIntegerv\0"
+ "\0"
+ /* _mesa_function_pool[7010]: GetShaderSource (will be remapped) */
+ "iipp\0"
+ "glGetShaderSource\0"
+ "\0"
+ /* _mesa_function_pool[7034]: GetActiveUniform (will be remapped) */
+ "iiipppp\0"
+ "glGetActiveUniform\0"
+ "\0"
+ /* _mesa_function_pool[7062]: DeleteBuffers (will be remapped) */
+ "ip\0"
+ "glDeleteBuffers\0"
+ "\0"
+ /* _mesa_function_pool[7082]: GetTexEnviv (offset 277) */
+ "iip\0"
+ "glGetTexEnviv\0"
+ "\0"
+ /* _mesa_function_pool[7101]: PopClientAttrib (offset 334) */
+ "\0"
+ "glPopClientAttrib\0"
+ "\0"
+ /* _mesa_function_pool[7121]: SeparableFilter2D (offset 360) */
+ "iiiiiipp\0"
+ "glSeparableFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[7151]: VertexAttrib2fv (will be remapped) */
+ "ip\0"
+ "glVertexAttrib2fv\0"
+ "\0"
+ /* _mesa_function_pool[7173]: Map1d (offset 220) */
+ "iddiip\0"
+ "glMap1d\0"
+ "\0"
+ /* _mesa_function_pool[7189]: Map1f (offset 221) */
+ "iffiip\0"
+ "glMap1f\0"
+ "\0"
+ /* _mesa_function_pool[7205]: ArrayElement (offset 306) */
+ "i\0"
+ "glArrayElement\0"
+ "\0"
+ /* _mesa_function_pool[7223]: TexImage2D (offset 183) */
+ "iiiiiiiip\0"
+ "glTexImage2D\0"
+ "\0"
+ /* _mesa_function_pool[7247]: GetMinmaxParameteriv (offset 366) */
+ "iip\0"
+ "glGetMinmaxParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[7275]: PixelTransferf (offset 247) */
+ "if\0"
+ "glPixelTransferf\0"
+ "\0"
+ /* _mesa_function_pool[7296]: CopyTexImage1D (offset 323) */
+ "iiiiiii\0"
+ "glCopyTexImage1D\0"
+ "\0"
+ /* _mesa_function_pool[7322]: RasterPos2dv (offset 63) */
+ "p\0"
+ "glRasterPos2dv\0"
+ "\0"
+ /* _mesa_function_pool[7340]: Fogiv (offset 156) */
+ "ip\0"
+ "glFogiv\0"
+ "\0"
+ /* _mesa_function_pool[7352]: TexCoord1dv (offset 95) */
+ "p\0"
+ "glTexCoord1dv\0"
+ "\0"
+ /* _mesa_function_pool[7369]: PixelTransferi (offset 248) */
+ "ii\0"
+ "glPixelTransferi\0"
+ "\0"
+ /* _mesa_function_pool[7390]: Rotatef (offset 300) */
+ "ffff\0"
+ "glRotatef\0"
+ "\0"
+ /* _mesa_function_pool[7406]: Vertex3i (offset 138) */
+ "iii\0"
+ "glVertex3i\0"
+ "\0"
+ /* _mesa_function_pool[7422]: Vertex3f (offset 136) */
+ "fff\0"
+ "glVertex3f\0"
+ "\0"
+ /* _mesa_function_pool[7438]: Clear (offset 203) */
+ "i\0"
+ "glClear\0"
+ "\0"
+ /* _mesa_function_pool[7449]: Vertex3d (offset 134) */
+ "ddd\0"
+ "glVertex3d\0"
+ "\0"
+ /* _mesa_function_pool[7465]: ReadBuffer (offset 254) */
+ "i\0"
+ "glReadBuffer\0"
+ "\0"
+ /* _mesa_function_pool[7481]: ConvolutionParameteri (offset 352) */
+ "iii\0"
+ "glConvolutionParameteri\0"
+ "\0"
+ /* _mesa_function_pool[7510]: Ortho (offset 296) */
+ "dddddd\0"
+ "glOrtho\0"
+ "\0"
+ /* _mesa_function_pool[7526]: ListBase (offset 6) */
+ "i\0"
+ "glListBase\0"
+ "\0"
+ /* _mesa_function_pool[7540]: Vertex3s (offset 140) */
+ "iii\0"
+ "glVertex3s\0"
+ "\0"
+ /* _mesa_function_pool[7556]: ConvolutionParameterf (offset 350) */
+ "iif\0"
+ "glConvolutionParameterf\0"
+ "\0"
+ /* _mesa_function_pool[7585]: GetColorTableParameteriv (offset 345) */
+ "iip\0"
+ "glGetColorTableParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[7617]: ShadeModel (offset 177) */
+ "i\0"
+ "glShadeModel\0"
+ "\0"
+ /* _mesa_function_pool[7633]: GenerateMipmap (will be remapped) */
+ "i\0"
+ "glGenerateMipmap\0"
+ "\0"
+ /* _mesa_function_pool[7653]: Rectiv (offset 91) */
+ "pp\0"
+ "glRectiv\0"
+ "\0"
+ /* _mesa_function_pool[7666]: TexCoord3fv (offset 113) */
+ "p\0"
+ "glTexCoord3fv\0"
+ "\0"
+ /* _mesa_function_pool[7683]: Vertex2fv (offset 129) */
+ "p\0"
+ "glVertex2fv\0"
+ "\0"
+ /* _mesa_function_pool[7698]: MultiDrawArraysEXT (will be remapped) */
+ "ippi\0"
+ "glMultiDrawArraysEXT\0"
+ "\0"
+ /* _mesa_function_pool[7725]: MultiTexCoord4dARB (offset 400) */
+ "idddd\0"
+ "glMultiTexCoord4dARB\0"
+ "\0"
+ /* _mesa_function_pool[7753]: Vertex3sv (offset 141) */
+ "p\0"
+ "glVertex3sv\0"
+ "\0"
+ /* _mesa_function_pool[7768]: EvalMesh1 (offset 236) */
+ "iii\0"
+ "glEvalMesh1\0"
+ "\0"
+ /* _mesa_function_pool[7785]: DeleteShader (will be remapped) */
+ "i\0"
+ "glDeleteShader\0"
+ "\0"
+ /* _mesa_function_pool[7803]: VertexAttrib2f (will be remapped) */
+ "iff\0"
+ "glVertexAttrib2f\0"
+ "\0"
+ /* _mesa_function_pool[7825]: Uniform2f (will be remapped) */
+ "iff\0"
+ "glUniform2f\0"
+ "\0"
+ /* _mesa_function_pool[7842]: MultiTexCoord1dvARB (offset 377) */
+ "ip\0"
+ "glMultiTexCoord1dvARB\0"
+ "\0"
+ /* _mesa_function_pool[7868]: CompileShader (will be remapped) */
+ "i\0"
+ "glCompileShader\0"
+ "\0"
+ /* _mesa_function_pool[7887]: Vertex2iv (offset 131) */
+ "p\0"
+ "glVertex2iv\0"
+ "\0"
+ /* _mesa_function_pool[7902]: LineWidth (offset 168) */
+ "f\0"
+ "glLineWidth\0"
+ "\0"
+ /* _mesa_function_pool[7917]: MultiTexCoord2ivARB (offset 389) */
+ "ip\0"
+ "glMultiTexCoord2ivARB\0"
+ "\0"
+ /* _mesa_function_pool[7943]: Uniform2i (will be remapped) */
+ "iii\0"
+ "glUniform2i\0"
+ "\0"
+ /* _mesa_function_pool[7960]: TexGendv (offset 189) */
+ "iip\0"
+ "glTexGendv\0"
+ "\0"
+ /* _mesa_function_pool[7976]: Uniform1fv (will be remapped) */
+ "iip\0"
+ "glUniform1fv\0"
+ "\0"
+ /* _mesa_function_pool[7994]: ResetMinmax (offset 370) */
+ "i\0"
+ "glResetMinmax\0"
+ "\0"
+ /* _mesa_function_pool[8011]: EnableClientState (offset 313) */
+ "i\0"
+ "glEnableClientState\0"
+ "\0"
+ /* _mesa_function_pool[8034]: GetConvolutionParameterfv (offset 357) */
+ "iip\0"
+ "glGetConvolutionParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[8067]: GetPixelMapusv (offset 273) */
+ "ip\0"
+ "glGetPixelMapusv\0"
+ "\0"
+ /* _mesa_function_pool[8088]: GetMaterialfv (offset 269) */
+ "iip\0"
+ "glGetMaterialfv\0"
+ "\0"
+ /* _mesa_function_pool[8109]: CallList (offset 2) */
+ "i\0"
+ "glCallList\0"
+ "\0"
+ /* _mesa_function_pool[8123]: Materialfv (offset 170) */
+ "iip\0"
+ "glMaterialfv\0"
+ "\0"
+ /* _mesa_function_pool[8141]: DeleteProgram (will be remapped) */
+ "i\0"
+ "glDeleteProgram\0"
+ "\0"
+ /* _mesa_function_pool[8160]: CompressedTexSubImage3DOES (will be remapped) */
+ "iiiiiiiiiip\0"
+ "glCompressedTexSubImage3DOES\0"
+ "\0"
+ /* _mesa_function_pool[8202]: MultiTexCoord1ivARB (offset 381) */
+ "ip\0"
+ "glMultiTexCoord1ivARB\0"
+ "\0"
+ /* _mesa_function_pool[8228]: DetachShader (will be remapped) */
+ "ii\0"
+ "glDetachShader\0"
+ "\0"
+ /* _mesa_function_pool[8247]: ClearDepthf (will be remapped) */
+ "f\0"
+ "glClearDepthf\0"
+ "\0"
+ /* _mesa_function_pool[8264]: CopyTexSubImage2D (offset 326) */
+ "iiiiiiii\0"
+ "glCopyTexSubImage2D\0"
+ "\0"
+ /* _mesa_function_pool[8294]: SampleCoverage (will be remapped) */
+ "fi\0"
+ "glSampleCoverage\0"
+ "\0"
+ /* _mesa_function_pool[8315]: Color3iv (offset 16) */
+ "p\0"
+ "glColor3iv\0"
+ "\0"
+ /* _mesa_function_pool[8329]: DrawElements (offset 311) */
+ "iiip\0"
+ "glDrawElements\0"
+ "\0"
+ /* _mesa_function_pool[8350]: BindVertexArrayAPPLE (will be remapped) */
+ "i\0"
+ "glBindVertexArrayAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[8376]: GetHistogramParameteriv (offset 363) */
+ "iip\0"
+ "glGetHistogramParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[8407]: MultiTexCoord1iARB (offset 380) */
+ "ii\0"
+ "glMultiTexCoord1iARB\0"
+ "\0"
+ /* _mesa_function_pool[8432]: GetConvolutionFilter (offset 356) */
+ "iiip\0"
+ "glGetConvolutionFilter\0"
+ "\0"
+ /* _mesa_function_pool[8461]: TexSubImage3DOES (offset 372) */
+ "iiiiiiiiiip\0"
+ "glTexSubImage3DOES\0"
+ "glTexSubImage3D\0"
+ "\0"
+ /* _mesa_function_pool[8509]: Uniform2iv (will be remapped) */
+ "iip\0"
+ "glUniform2iv\0"
+ "\0"
+ /* _mesa_function_pool[8527]: BindRenderbuffer (will be remapped) */
+ "ii\0"
+ "glBindRenderbuffer\0"
+ "\0"
+ /* _mesa_function_pool[8550]: EvalPoint2 (offset 239) */
+ "ii\0"
+ "glEvalPoint2\0"
+ "\0"
+ /* _mesa_function_pool[8567]: EvalPoint1 (offset 237) */
+ "i\0"
+ "glEvalPoint1\0"
+ "\0"
+ /* _mesa_function_pool[8583]: PopMatrix (offset 297) */
+ "\0"
+ "glPopMatrix\0"
+ "\0"
+ /* _mesa_function_pool[8597]: DeleteFramebuffers (will be remapped) */
+ "ip\0"
+ "glDeleteFramebuffers\0"
+ "\0"
+ /* _mesa_function_pool[8622]: GetTexGeniv (offset 280) */
+ "iip\0"
+ "glGetTexGeniv\0"
+ "\0"
+ /* _mesa_function_pool[8641]: MultiTexCoord4dvARB (offset 401) */
+ "ip\0"
+ "glMultiTexCoord4dvARB\0"
+ "\0"
+ /* _mesa_function_pool[8667]: FramebufferRenderbuffer (will be remapped) */
+ "iiii\0"
+ "glFramebufferRenderbuffer\0"
+ "\0"
+ /* _mesa_function_pool[8699]: Map2d (offset 222) */
+ "iddiiddiip\0"
+ "glMap2d\0"
+ "\0"
+ /* _mesa_function_pool[8719]: Map2f (offset 223) */
+ "iffiiffiip\0"
+ "glMap2f\0"
+ "\0"
+ /* _mesa_function_pool[8739]: Vertex4s (offset 148) */
+ "iiii\0"
+ "glVertex4s\0"
+ "\0"
+ /* _mesa_function_pool[8756]: Vertex4f (offset 144) */
+ "ffff\0"
+ "glVertex4f\0"
+ "\0"
+ /* _mesa_function_pool[8773]: EvalCoord1d (offset 228) */
+ "d\0"
+ "glEvalCoord1d\0"
+ "\0"
+ /* _mesa_function_pool[8790]: Vertex4d (offset 142) */
+ "dddd\0"
+ "glVertex4d\0"
+ "\0"
+ /* _mesa_function_pool[8807]: RasterPos4dv (offset 79) */
+ "p\0"
+ "glRasterPos4dv\0"
+ "\0"
+ /* _mesa_function_pool[8825]: GetTexGenfv (offset 279) */
+ "iip\0"
+ "glGetTexGenfv\0"
+ "\0"
+ /* _mesa_function_pool[8844]: Vertex4i (offset 146) */
+ "iiii\0"
+ "glVertex4i\0"
+ "\0"
+ /* _mesa_function_pool[8861]: GetHistogram (offset 361) */
+ "iiiip\0"
+ "glGetHistogram\0"
+ "\0"
+ /* _mesa_function_pool[8883]: Materialf (offset 169) */
+ "iif\0"
+ "glMaterialf\0"
+ "\0"
+ /* _mesa_function_pool[8900]: Materiali (offset 171) */
+ "iii\0"
+ "glMateriali\0"
+ "\0"
+ /* _mesa_function_pool[8917]: Indexsv (offset 51) */
+ "p\0"
+ "glIndexsv\0"
+ "\0"
+ /* _mesa_function_pool[8930]: MultiTexCoord4svARB (offset 407) */
+ "ip\0"
+ "glMultiTexCoord4svARB\0"
+ "\0"
+ /* _mesa_function_pool[8956]: LightModelfv (offset 164) */
+ "ip\0"
+ "glLightModelfv\0"
+ "\0"
+ /* _mesa_function_pool[8975]: Vertex4dv (offset 143) */
+ "p\0"
+ "glVertex4dv\0"
+ "\0"
+ /* _mesa_function_pool[8990]: EvalCoord1dv (offset 229) */
+ "p\0"
+ "glEvalCoord1dv\0"
+ "\0"
+ /* _mesa_function_pool[9008]: Translated (offset 303) */
+ "ddd\0"
+ "glTranslated\0"
+ "\0"
+ /* _mesa_function_pool[9026]: Uniform4fv (will be remapped) */
+ "iip\0"
+ "glUniform4fv\0"
+ "\0"
+ /* _mesa_function_pool[9044]: StencilMask (offset 209) */
+ "i\0"
+ "glStencilMask\0"
+ "\0"
+ /* _mesa_function_pool[9061]: GetLightiv (offset 265) */
+ "iip\0"
+ "glGetLightiv\0"
+ "\0"
+ /* _mesa_function_pool[9079]: IsList (offset 287) */
+ "i\0"
+ "glIsList\0"
+ "\0"
+ /* _mesa_function_pool[9091]: RenderMode (offset 196) */
+ "i\0"
+ "glRenderMode\0"
+ "\0"
+ /* _mesa_function_pool[9107]: MultiTexCoord1fARB (offset 378) */
+ "if\0"
+ "glMultiTexCoord1fARB\0"
+ "\0"
+ /* _mesa_function_pool[9132]: BindBuffer (will be remapped) */
+ "ii\0"
+ "glBindBuffer\0"
+ "\0"
+ /* _mesa_function_pool[9149]: CopyTexSubImage1D (offset 325) */
+ "iiiiii\0"
+ "glCopyTexSubImage1D\0"
+ "\0"
+ /* _mesa_function_pool[9177]: CullFace (offset 152) */
+ "i\0"
+ "glCullFace\0"
+ "\0"
+ /* _mesa_function_pool[9191]: BindTexture (offset 307) */
+ "ii\0"
+ "glBindTexture\0"
+ "\0"
+ /* _mesa_function_pool[9209]: MultiTexCoord4fARB (offset 402) */
+ "iffff\0"
+ "glMultiTexCoord4fARB\0"
+ "\0"
+ /* _mesa_function_pool[9237]: StencilFunc (offset 243) */
+ "iii\0"
+ "glStencilFunc\0"
+ "\0"
+ /* _mesa_function_pool[9256]: CopyPixels (offset 255) */
+ "iiiii\0"
+ "glCopyPixels\0"
+ "\0"
+ /* _mesa_function_pool[9276]: Rectsv (offset 93) */
+ "pp\0"
+ "glRectsv\0"
+ "\0"
+ /* _mesa_function_pool[9289]: GetPixelMapuiv (offset 272) */
+ "ip\0"
+ "glGetPixelMapuiv\0"
+ "\0"
+ /* _mesa_function_pool[9310]: CopyConvolutionFilter2D (offset 355) */
+ "iiiiii\0"
+ "glCopyConvolutionFilter2D\0"
+ "\0"
+ /* _mesa_function_pool[9344]: NormalPointer (offset 318) */
+ "iip\0"
+ "glNormalPointer\0"
+ "\0"
+ /* _mesa_function_pool[9365]: TexParameterfv (offset 179) */
+ "iip\0"
+ "glTexParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[9387]: ClipPlane (offset 150) */
+ "ip\0"
+ "glClipPlane\0"
+ "\0"
+ /* _mesa_function_pool[9403]: Recti (offset 90) */
+ "iiii\0"
+ "glRecti\0"
+ "\0"
+ /* _mesa_function_pool[9417]: VertexAttribPointer (will be remapped) */
+ "iiiiip\0"
+ "glVertexAttribPointer\0"
+ "\0"
+ /* _mesa_function_pool[9447]: VertexAttrib1fv (will be remapped) */
+ "ip\0"
+ "glVertexAttrib1fv\0"
+ "\0"
+ /* _mesa_function_pool[9469]: Rectf (offset 88) */
+ "ffff\0"
+ "glRectf\0"
+ "\0"
+ /* _mesa_function_pool[9483]: Rectd (offset 86) */
+ "dddd\0"
+ "glRectd\0"
+ "\0"
+ /* _mesa_function_pool[9497]: Rects (offset 92) */
+ "iiii\0"
+ "glRects\0"
+ "\0"
+ /* _mesa_function_pool[9511]: IndexMask (offset 212) */
+ "i\0"
+ "glIndexMask\0"
+ "\0"
+ /* _mesa_function_pool[9526]: GetFloatv (offset 262) */
+ "ip\0"
+ "glGetFloatv\0"
+ "\0"
+ /* _mesa_function_pool[9542]: FramebufferTexture3DOES (will be remapped) */
+ "iiiiii\0"
+ "glFramebufferTexture3DOES\0"
+ "\0"
+ /* _mesa_function_pool[9576]: TexCoord4s (offset 124) */
+ "iiii\0"
+ "glTexCoord4s\0"
+ "\0"
+ /* _mesa_function_pool[9595]: TexCoord3sv (offset 117) */
+ "p\0"
+ "glTexCoord3sv\0"
+ "\0"
+ /* _mesa_function_pool[9612]: PopAttrib (offset 218) */
+ "\0"
+ "glPopAttrib\0"
+ "\0"
+ /* _mesa_function_pool[9626]: TexCoord4i (offset 122) */
+ "iiii\0"
+ "glTexCoord4i\0"
+ "\0"
+ /* _mesa_function_pool[9645]: InitNames (offset 197) */
+ "\0"
+ "glInitNames\0"
+ "\0"
+ /* _mesa_function_pool[9659]: Normal3sv (offset 61) */
+ "p\0"
+ "glNormal3sv\0"
+ "\0"
+ /* _mesa_function_pool[9674]: UnmapBufferOES (will be remapped) */
+ "i\0"
+ "glUnmapBufferOES\0"
+ "\0"
+ /* _mesa_function_pool[9694]: TexCoord4d (offset 118) */
+ "dddd\0"
+ "glTexCoord4d\0"
+ "\0"
+ /* _mesa_function_pool[9713]: TexCoord4f (offset 120) */
+ "ffff\0"
+ "glTexCoord4f\0"
+ "\0"
+ /* _mesa_function_pool[9732]: GetBooleanv (offset 258) */
+ "ip\0"
+ "glGetBooleanv\0"
+ "\0"
+ /* _mesa_function_pool[9750]: Hint (offset 158) */
+ "ii\0"
+ "glHint\0"
+ "\0"
+ /* _mesa_function_pool[9761]: Color4dv (offset 28) */
+ "p\0"
+ "glColor4dv\0"
+ "\0"
+ /* _mesa_function_pool[9775]: DisableVertexAttribArray (will be remapped) */
+ "i\0"
+ "glDisableVertexAttribArray\0"
+ "\0"
+ /* _mesa_function_pool[9805]: CopyColorSubTable (offset 347) */
+ "iiiii\0"
+ "glCopyColorSubTable\0"
+ "\0"
+ /* _mesa_function_pool[9832]: IsVertexArrayAPPLE (will be remapped) */
+ "i\0"
+ "glIsVertexArrayAPPLE\0"
+ "\0"
+ /* _mesa_function_pool[9856]: Vertex4iv (offset 147) */
+ "p\0"
+ "glVertex4iv\0"
+ "\0"
+ /* _mesa_function_pool[9871]: BufferSubData (will be remapped) */
+ "iiip\0"
+ "glBufferSubData\0"
+ "\0"
+ /* _mesa_function_pool[9893]: TexCoord4dv (offset 119) */
+ "p\0"
+ "glTexCoord4dv\0"
+ "\0"
+ /* _mesa_function_pool[9910]: Begin (offset 7) */
+ "i\0"
+ "glBegin\0"
+ "\0"
+ /* _mesa_function_pool[9921]: LightModeli (offset 165) */
+ "ii\0"
+ "glLightModeli\0"
+ "\0"
+ /* _mesa_function_pool[9939]: Rectfv (offset 89) */
+ "pp\0"
+ "glRectfv\0"
+ "\0"
+ /* _mesa_function_pool[9952]: UniformMatrix2fv (will be remapped) */
+ "iiip\0"
+ "glUniformMatrix2fv\0"
+ "\0"
+ /* _mesa_function_pool[9977]: LightModelf (offset 163) */
+ "if\0"
+ "glLightModelf\0"
+ "\0"
+ /* _mesa_function_pool[9995]: GetTexParameterfv (offset 282) */
+ "iip\0"
+ "glGetTexParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[10020]: GetLightfv (offset 264) */
+ "iip\0"
+ "glGetLightfv\0"
+ "\0"
+ /* _mesa_function_pool[10038]: Disable (offset 214) */
+ "i\0"
+ "glDisable\0"
+ "\0"
+ /* _mesa_function_pool[10051]: MultiTexCoord2fvARB (offset 387) */
+ "ip\0"
+ "glMultiTexCoord2fvARB\0"
+ "\0"
+ /* _mesa_function_pool[10077]: SelectBuffer (offset 195) */
+ "ip\0"
+ "glSelectBuffer\0"
+ "\0"
+ /* _mesa_function_pool[10096]: ColorMask (offset 210) */
+ "iiii\0"
+ "glColorMask\0"
+ "\0"
+ /* _mesa_function_pool[10114]: RasterPos4iv (offset 83) */
+ "p\0"
+ "glRasterPos4iv\0"
+ "\0"
+ /* _mesa_function_pool[10132]: TexGenfv (offset 191) */
+ "iip\0"
+ "glTexGenfv\0"
+ "\0"
+ /* _mesa_function_pool[10148]: GetRenderbufferParameteriv (will be remapped) */
+ "iip\0"
+ "glGetRenderbufferParameteriv\0"
+ "\0"
+ /* _mesa_function_pool[10182]: Indexub (offset 315) */
+ "i\0"
+ "glIndexub\0"
+ "\0"
+ /* _mesa_function_pool[10195]: GenRenderbuffers (will be remapped) */
+ "ip\0"
+ "glGenRenderbuffers\0"
+ "\0"
+ /* _mesa_function_pool[10218]: UniformMatrix4fv (will be remapped) */
+ "iiip\0"
+ "glUniformMatrix4fv\0"
+ "\0"
+ /* _mesa_function_pool[10243]: GetMinmaxParameterfv (offset 365) */
+ "iip\0"
+ "glGetMinmaxParameterfv\0"
+ "\0"
+ /* _mesa_function_pool[10271]: Vertex3fv (offset 137) */
+ "p\0"
+ "glVertex3fv\0"
+ "\0"
+ /* _mesa_function_pool[10286]: Uniform4iv (will be remapped) */
+ "iip\0"
+ "glUniform4iv\0"
+ "\0"
+ ;
+
+/* these functions need to be remapped */
+static const struct gl_function_pool_remap MESA_remap_table_functions[] = {
+ { 5490, GetBufferPointervOES_remap_index },
+ { 2374, MapBufferOES_remap_index },
+ { 9674, UnmapBufferOES_remap_index },
+ { 1271, CompressedTexImage3DOES_remap_index },
+ { 8160, CompressedTexSubImage3DOES_remap_index },
+ { 9542, FramebufferTexture3DOES_remap_index },
+ { 1413, GetProgramBinaryOES_remap_index },
+ { 4388, ProgramBinaryOES_remap_index },
+ { 7698, MultiDrawArraysEXT_remap_index },
+ { 6275, MultiDrawElementsEXT_remap_index },
+ { 8350, BindVertexArrayAPPLE_remap_index },
+ { 848, DeleteVertexArraysAPPLE_remap_index },
+ { 5224, GenVertexArraysAPPLE_remap_index },
+ { 9832, IsVertexArrayAPPLE_remap_index },
+ { 3905, EGLImageTargetRenderbufferStorageOES_remap_index },
+ { 3678, EGLImageTargetTexture2DOES_remap_index },
+ { 4413, CompressedTexImage2D_remap_index },
+ { 1037, CompressedTexSubImage2D_remap_index },
+ { 8294, SampleCoverage_remap_index },
+ { 9132, BindBuffer_remap_index },
+ { 3205, BufferData_remap_index },
+ { 9871, BufferSubData_remap_index },
+ { 7062, DeleteBuffers_remap_index },
+ { 2566, GenBuffers_remap_index },
+ { 5127, GetBufferParameteriv_remap_index },
+ { 6117, IsBuffer_remap_index },
+ { 540, AttachShader_remap_index },
+ { 1387, BindAttribLocation_remap_index },
+ { 6643, BlendEquationSeparate_remap_index },
+ { 7868, CompileShader_remap_index },
+ { 1843, CreateProgram_remap_index },
+ { 6821, CreateShader_remap_index },
+ { 8141, DeleteProgram_remap_index },
+ { 7785, DeleteShader_remap_index },
+ { 8228, DetachShader_remap_index },
+ { 9775, DisableVertexAttribArray_remap_index },
+ { 2668, EnableVertexAttribArray_remap_index },
+ { 2061, GetActiveAttrib_remap_index },
+ { 7034, GetActiveUniform_remap_index },
+ { 5531, GetAttachedShaders_remap_index },
+ { 4622, GetAttribLocation_remap_index },
+ { 345, GetProgramInfoLog_remap_index },
+ { 173, GetProgramiv_remap_index },
+ { 3824, GetShaderInfoLog_remap_index },
+ { 7010, GetShaderSource_remap_index },
+ { 5442, GetShaderiv_remap_index },
+ { 6030, GetUniformLocation_remap_index },
+ { 1525, GetUniformfv_remap_index },
+ { 1725, GetUniformiv_remap_index },
+ { 5326, GetVertexAttribPointerv_remap_index },
+ { 660, GetVertexAttribfv_remap_index },
+ { 3279, GetVertexAttribiv_remap_index },
+ { 4157, IsProgram_remap_index },
+ { 3746, IsShader_remap_index },
+ { 5616, LinkProgram_remap_index },
+ { 3103, ShaderSource_remap_index },
+ { 3075, StencilFuncSeparate_remap_index },
+ { 1108, StencilMaskSeparate_remap_index },
+ { 2287, StencilOpSeparate_remap_index },
+ { 5633, Uniform1f_remap_index },
+ { 7976, Uniform1fv_remap_index },
+ { 5718, Uniform1i_remap_index },
+ { 6554, Uniform1iv_remap_index },
+ { 7825, Uniform2f_remap_index },
+ { 371, Uniform2fv_remap_index },
+ { 7943, Uniform2i_remap_index },
+ { 8509, Uniform2iv_remap_index },
+ { 892, Uniform3f_remap_index },
+ { 1879, Uniform3fv_remap_index },
+ { 811, Uniform3i_remap_index },
+ { 4582, Uniform3iv_remap_index },
+ { 5870, Uniform4f_remap_index },
+ { 9026, Uniform4fv_remap_index },
+ { 4369, Uniform4i_remap_index },
+ { 10286, Uniform4iv_remap_index },
+ { 9952, UniformMatrix2fv_remap_index },
+ { 955, UniformMatrix3fv_remap_index },
+ { 10218, UniformMatrix4fv_remap_index },
+ { 5840, UseProgram_remap_index },
+ { 1917, ValidateProgram_remap_index },
+ { 6722, VertexAttrib1f_remap_index },
+ { 9447, VertexAttrib1fv_remap_index },
+ { 7803, VertexAttrib2f_remap_index },
+ { 7151, VertexAttrib2fv_remap_index },
+ { 1014, VertexAttrib3f_remap_index },
+ { 4909, VertexAttrib3fv_remap_index },
+ { 5757, VertexAttrib4f_remap_index },
+ { 450, VertexAttrib4fv_remap_index },
+ { 9417, VertexAttribPointer_remap_index },
+ { 3049, BlendFuncSeparate_remap_index },
+ { 2968, BindFramebuffer_remap_index },
+ { 8527, BindRenderbuffer_remap_index },
+ { 6320, CheckFramebufferStatus_remap_index },
+ { 8247, ClearDepthf_remap_index },
+ { 8597, DeleteFramebuffers_remap_index },
+ { 3512, DeleteRenderbuffers_remap_index },
+ { 1861, DepthRangef_remap_index },
+ { 8667, FramebufferRenderbuffer_remap_index },
+ { 6871, FramebufferTexture2D_remap_index },
+ { 6586, GenFramebuffers_remap_index },
+ { 10195, GenRenderbuffers_remap_index },
+ { 7633, GenerateMipmap_remap_index },
+ { 5266, GetFramebufferAttachmentParameteriv_remap_index },
+ { 10148, GetRenderbufferParameteriv_remap_index },
+ { 4472, GetShaderPrecisionFormat_remap_index },
+ { 6624, IsFramebuffer_remap_index },
+ { 3711, IsRenderbuffer_remap_index },
+ { 3004, ReleaseShaderCompiler_remap_index },
+ { 731, RenderbufferStorage_remap_index },
+ { 3304, ShaderBinary_remap_index },
+ { -1, -1 }
+};
+
+/* these functions are in the ABI, but have alternative names */
+static const struct gl_function_remap MESA_alt_functions[] = {
+ { -1, -1 }
+};
+
+#endif /* need_MESA_remap_table */
+
+#if defined(need_GL_APPLE_vertex_array_object)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_APPLE_vertex_array_object_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_EXT_multi_draw_arrays)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_EXT_multi_draw_arrays_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_EGL_image)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_EGL_image_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_get_program_binary)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_get_program_binary_functions[] = {
+ { -1, -1 }
+};
+#endif
+
+#if defined(need_GL_OES_mapbuffer)
+/* functions defined in MESA_remap_table_functions are excluded */
+static const struct gl_function_remap GL_OES_mapbuffer_functions[] = {
+ { -1, -1 }
+};
+#endif
+
diff --git a/src/mapi/shared-glapi/glapi_mapi_tmp.h b/src/mapi/shared-glapi/glapi_mapi_tmp.h
new file mode 100644
index 0000000000..340b765757
--- /dev/null
+++ b/src/mapi/shared-glapi/glapi_mapi_tmp.h
@@ -0,0 +1,22410 @@
+/* This file is automatically generated by mapi_abi.py. Do not modify. */
+
+#ifndef _GLAPI_TMP_H_
+#define _GLAPI_TMP_H_
+typedef int GLfixed;
+typedef int GLclampx;
+#endif /* _GLAPI_TMP_H_ */
+
+#ifdef MAPI_TMP_DEFINES
+#define GL_GLEXT_PROTOTYPES
+#include "GL/gl.h"
+#include "GL/glext.h"
+
+void APIENTRY shared_dispatch_stub_0(GLuint list, GLenum mode);
+void APIENTRY shared_dispatch_stub_1(void);
+void APIENTRY shared_dispatch_stub_2(GLuint list);
+void APIENTRY shared_dispatch_stub_3(GLsizei n, GLenum type, const GLvoid *lists);
+void APIENTRY shared_dispatch_stub_4(GLuint list, GLsizei range);
+GLuint APIENTRY shared_dispatch_stub_5(GLsizei range);
+void APIENTRY shared_dispatch_stub_6(GLuint base);
+void APIENTRY shared_dispatch_stub_7(GLenum mode);
+void APIENTRY shared_dispatch_stub_8(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+void APIENTRY shared_dispatch_stub_9(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY shared_dispatch_stub_10(const GLbyte *v);
+void APIENTRY shared_dispatch_stub_11(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY shared_dispatch_stub_12(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_13(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY shared_dispatch_stub_14(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_15(GLint red, GLint green, GLint blue);
+void APIENTRY shared_dispatch_stub_16(const GLint *v);
+void APIENTRY shared_dispatch_stub_17(GLshort red, GLshort green, GLshort blue);
+void APIENTRY shared_dispatch_stub_18(const GLshort *v);
+void APIENTRY shared_dispatch_stub_19(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY shared_dispatch_stub_20(const GLubyte *v);
+void APIENTRY shared_dispatch_stub_21(GLuint red, GLuint green, GLuint blue);
+void APIENTRY shared_dispatch_stub_22(const GLuint *v);
+void APIENTRY shared_dispatch_stub_23(GLushort red, GLushort green, GLushort blue);
+void APIENTRY shared_dispatch_stub_24(const GLushort *v);
+void APIENTRY shared_dispatch_stub_25(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+void APIENTRY shared_dispatch_stub_26(const GLbyte *v);
+void APIENTRY shared_dispatch_stub_27(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+void APIENTRY shared_dispatch_stub_28(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_29(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY shared_dispatch_stub_30(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_31(GLint red, GLint green, GLint blue, GLint alpha);
+void APIENTRY shared_dispatch_stub_32(const GLint *v);
+void APIENTRY shared_dispatch_stub_33(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+void APIENTRY shared_dispatch_stub_34(const GLshort *v);
+void APIENTRY shared_dispatch_stub_35(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+void APIENTRY shared_dispatch_stub_36(const GLubyte *v);
+void APIENTRY shared_dispatch_stub_37(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+void APIENTRY shared_dispatch_stub_38(const GLuint *v);
+void APIENTRY shared_dispatch_stub_39(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+void APIENTRY shared_dispatch_stub_40(const GLushort *v);
+void APIENTRY shared_dispatch_stub_41(GLboolean flag);
+void APIENTRY shared_dispatch_stub_42(const GLboolean *flag);
+void APIENTRY shared_dispatch_stub_43(void);
+void APIENTRY shared_dispatch_stub_44(GLdouble c);
+void APIENTRY shared_dispatch_stub_45(const GLdouble *c);
+void APIENTRY shared_dispatch_stub_46(GLfloat c);
+void APIENTRY shared_dispatch_stub_47(const GLfloat *c);
+void APIENTRY shared_dispatch_stub_48(GLint c);
+void APIENTRY shared_dispatch_stub_49(const GLint *c);
+void APIENTRY shared_dispatch_stub_50(GLshort c);
+void APIENTRY shared_dispatch_stub_51(const GLshort *c);
+void APIENTRY shared_dispatch_stub_52(GLbyte nx, GLbyte ny, GLbyte nz);
+void APIENTRY shared_dispatch_stub_53(const GLbyte *v);
+void APIENTRY shared_dispatch_stub_54(GLdouble nx, GLdouble ny, GLdouble nz);
+void APIENTRY shared_dispatch_stub_55(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_56(GLfloat nx, GLfloat ny, GLfloat nz);
+void APIENTRY shared_dispatch_stub_57(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_58(GLint nx, GLint ny, GLint nz);
+void APIENTRY shared_dispatch_stub_59(const GLint *v);
+void APIENTRY shared_dispatch_stub_60(GLshort nx, GLshort ny, GLshort nz);
+void APIENTRY shared_dispatch_stub_61(const GLshort *v);
+void APIENTRY shared_dispatch_stub_62(GLdouble x, GLdouble y);
+void APIENTRY shared_dispatch_stub_63(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_64(GLfloat x, GLfloat y);
+void APIENTRY shared_dispatch_stub_65(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_66(GLint x, GLint y);
+void APIENTRY shared_dispatch_stub_67(const GLint *v);
+void APIENTRY shared_dispatch_stub_68(GLshort x, GLshort y);
+void APIENTRY shared_dispatch_stub_69(const GLshort *v);
+void APIENTRY shared_dispatch_stub_70(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_71(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_72(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_73(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_74(GLint x, GLint y, GLint z);
+void APIENTRY shared_dispatch_stub_75(const GLint *v);
+void APIENTRY shared_dispatch_stub_76(GLshort x, GLshort y, GLshort z);
+void APIENTRY shared_dispatch_stub_77(const GLshort *v);
+void APIENTRY shared_dispatch_stub_78(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_79(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_80(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_81(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_82(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY shared_dispatch_stub_83(const GLint *v);
+void APIENTRY shared_dispatch_stub_84(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY shared_dispatch_stub_85(const GLshort *v);
+void APIENTRY shared_dispatch_stub_86(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+void APIENTRY shared_dispatch_stub_87(const GLdouble *v1, const GLdouble *v2);
+void APIENTRY shared_dispatch_stub_88(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+void APIENTRY shared_dispatch_stub_89(const GLfloat *v1, const GLfloat *v2);
+void APIENTRY shared_dispatch_stub_90(GLint x1, GLint y1, GLint x2, GLint y2);
+void APIENTRY shared_dispatch_stub_91(const GLint *v1, const GLint *v2);
+void APIENTRY shared_dispatch_stub_92(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+void APIENTRY shared_dispatch_stub_93(const GLshort *v1, const GLshort *v2);
+void APIENTRY shared_dispatch_stub_94(GLdouble s);
+void APIENTRY shared_dispatch_stub_95(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_96(GLfloat s);
+void APIENTRY shared_dispatch_stub_97(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_98(GLint s);
+void APIENTRY shared_dispatch_stub_99(const GLint *v);
+void APIENTRY shared_dispatch_stub_100(GLshort s);
+void APIENTRY shared_dispatch_stub_101(const GLshort *v);
+void APIENTRY shared_dispatch_stub_102(GLdouble s, GLdouble t);
+void APIENTRY shared_dispatch_stub_103(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_104(GLfloat s, GLfloat t);
+void APIENTRY shared_dispatch_stub_105(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_106(GLint s, GLint t);
+void APIENTRY shared_dispatch_stub_107(const GLint *v);
+void APIENTRY shared_dispatch_stub_108(GLshort s, GLshort t);
+void APIENTRY shared_dispatch_stub_109(const GLshort *v);
+void APIENTRY shared_dispatch_stub_110(GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY shared_dispatch_stub_111(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_112(GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY shared_dispatch_stub_113(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_114(GLint s, GLint t, GLint r);
+void APIENTRY shared_dispatch_stub_115(const GLint *v);
+void APIENTRY shared_dispatch_stub_116(GLshort s, GLshort t, GLshort r);
+void APIENTRY shared_dispatch_stub_117(const GLshort *v);
+void APIENTRY shared_dispatch_stub_118(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY shared_dispatch_stub_119(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_120(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY shared_dispatch_stub_121(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_122(GLint s, GLint t, GLint r, GLint q);
+void APIENTRY shared_dispatch_stub_123(const GLint *v);
+void APIENTRY shared_dispatch_stub_124(GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY shared_dispatch_stub_125(const GLshort *v);
+void APIENTRY shared_dispatch_stub_126(GLdouble x, GLdouble y);
+void APIENTRY shared_dispatch_stub_127(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_128(GLfloat x, GLfloat y);
+void APIENTRY shared_dispatch_stub_129(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_130(GLint x, GLint y);
+void APIENTRY shared_dispatch_stub_131(const GLint *v);
+void APIENTRY shared_dispatch_stub_132(GLshort x, GLshort y);
+void APIENTRY shared_dispatch_stub_133(const GLshort *v);
+void APIENTRY shared_dispatch_stub_134(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_135(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_136(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_137(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_138(GLint x, GLint y, GLint z);
+void APIENTRY shared_dispatch_stub_139(const GLint *v);
+void APIENTRY shared_dispatch_stub_140(GLshort x, GLshort y, GLshort z);
+void APIENTRY shared_dispatch_stub_141(const GLshort *v);
+void APIENTRY shared_dispatch_stub_142(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_143(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_144(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_145(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_146(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY shared_dispatch_stub_147(const GLint *v);
+void APIENTRY shared_dispatch_stub_148(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY shared_dispatch_stub_149(const GLshort *v);
+void APIENTRY shared_dispatch_stub_150(GLenum plane, const GLdouble *equation);
+void APIENTRY shared_dispatch_stub_151(GLenum face, GLenum mode);
+void APIENTRY shared_dispatch_stub_152(GLenum mode);
+void APIENTRY shared_dispatch_stub_153(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_154(GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_155(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_156(GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_157(GLenum mode);
+void APIENTRY shared_dispatch_stub_158(GLenum target, GLenum mode);
+void APIENTRY shared_dispatch_stub_159(GLenum light, GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_160(GLenum light, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_161(GLenum light, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_162(GLenum light, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_163(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_164(GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_165(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_166(GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_167(GLint factor, GLushort pattern);
+void APIENTRY shared_dispatch_stub_168(GLfloat width);
+void APIENTRY shared_dispatch_stub_169(GLenum face, GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_170(GLenum face, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_171(GLenum face, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_172(GLenum face, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_173(GLfloat size);
+void APIENTRY shared_dispatch_stub_174(GLenum face, GLenum mode);
+void APIENTRY shared_dispatch_stub_175(const GLubyte *mask);
+void APIENTRY shared_dispatch_stub_176(GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_177(GLenum mode);
+void APIENTRY shared_dispatch_stub_178(GLenum target, GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_179(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_180(GLenum target, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_181(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_182(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_183(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_184(GLenum target, GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_185(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_186(GLenum target, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_187(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_188(GLenum coord, GLenum pname, GLdouble param);
+void APIENTRY shared_dispatch_stub_189(GLenum coord, GLenum pname, const GLdouble *params);
+void APIENTRY shared_dispatch_stub_190(GLenum coord, GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_191(GLenum coord, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_192(GLenum coord, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_193(GLenum coord, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_194(GLsizei size, GLenum type, GLfloat *buffer);
+void APIENTRY shared_dispatch_stub_195(GLsizei size, GLuint *buffer);
+GLint APIENTRY shared_dispatch_stub_196(GLenum mode);
+void APIENTRY shared_dispatch_stub_197(void);
+void APIENTRY shared_dispatch_stub_198(GLuint name);
+void APIENTRY shared_dispatch_stub_199(GLfloat token);
+void APIENTRY shared_dispatch_stub_200(void);
+void APIENTRY shared_dispatch_stub_201(GLuint name);
+void APIENTRY shared_dispatch_stub_202(GLenum mode);
+void APIENTRY shared_dispatch_stub_203(GLbitfield mask);
+void APIENTRY shared_dispatch_stub_204(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+void APIENTRY shared_dispatch_stub_205(GLfloat c);
+void APIENTRY shared_dispatch_stub_206(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+void APIENTRY shared_dispatch_stub_207(GLint s);
+void APIENTRY shared_dispatch_stub_208(GLclampd depth);
+void APIENTRY shared_dispatch_stub_209(GLuint mask);
+void APIENTRY shared_dispatch_stub_210(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+void APIENTRY shared_dispatch_stub_211(GLboolean flag);
+void APIENTRY shared_dispatch_stub_212(GLuint mask);
+void APIENTRY shared_dispatch_stub_213(GLenum op, GLfloat value);
+void APIENTRY shared_dispatch_stub_214(GLenum cap);
+void APIENTRY shared_dispatch_stub_215(GLenum cap);
+void APIENTRY shared_dispatch_stub_216(void);
+void APIENTRY shared_dispatch_stub_217(void);
+void APIENTRY shared_dispatch_stub_218(void);
+void APIENTRY shared_dispatch_stub_219(GLbitfield mask);
+void APIENTRY shared_dispatch_stub_220(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+void APIENTRY shared_dispatch_stub_221(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+void APIENTRY shared_dispatch_stub_222(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+void APIENTRY shared_dispatch_stub_223(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+void APIENTRY shared_dispatch_stub_224(GLint un, GLdouble u1, GLdouble u2);
+void APIENTRY shared_dispatch_stub_225(GLint un, GLfloat u1, GLfloat u2);
+void APIENTRY shared_dispatch_stub_226(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+void APIENTRY shared_dispatch_stub_227(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+void APIENTRY shared_dispatch_stub_228(GLdouble u);
+void APIENTRY shared_dispatch_stub_229(const GLdouble *u);
+void APIENTRY shared_dispatch_stub_230(GLfloat u);
+void APIENTRY shared_dispatch_stub_231(const GLfloat *u);
+void APIENTRY shared_dispatch_stub_232(GLdouble u, GLdouble v);
+void APIENTRY shared_dispatch_stub_233(const GLdouble *u);
+void APIENTRY shared_dispatch_stub_234(GLfloat u, GLfloat v);
+void APIENTRY shared_dispatch_stub_235(const GLfloat *u);
+void APIENTRY shared_dispatch_stub_236(GLenum mode, GLint i1, GLint i2);
+void APIENTRY shared_dispatch_stub_237(GLint i);
+void APIENTRY shared_dispatch_stub_238(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+void APIENTRY shared_dispatch_stub_239(GLint i, GLint j);
+void APIENTRY shared_dispatch_stub_240(GLenum func, GLclampf ref);
+void APIENTRY shared_dispatch_stub_241(GLenum sfactor, GLenum dfactor);
+void APIENTRY shared_dispatch_stub_242(GLenum opcode);
+void APIENTRY shared_dispatch_stub_243(GLenum func, GLint ref, GLuint mask);
+void APIENTRY shared_dispatch_stub_244(GLenum fail, GLenum zfail, GLenum zpass);
+void APIENTRY shared_dispatch_stub_245(GLenum func);
+void APIENTRY shared_dispatch_stub_246(GLfloat xfactor, GLfloat yfactor);
+void APIENTRY shared_dispatch_stub_247(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_248(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_249(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_250(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_251(GLenum map, GLsizei mapsize, const GLfloat *values);
+void APIENTRY shared_dispatch_stub_252(GLenum map, GLsizei mapsize, const GLuint *values);
+void APIENTRY shared_dispatch_stub_253(GLenum map, GLsizei mapsize, const GLushort *values);
+void APIENTRY shared_dispatch_stub_254(GLenum mode);
+void APIENTRY shared_dispatch_stub_255(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+void APIENTRY shared_dispatch_stub_256(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_257(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_258(GLenum pname, GLboolean *params);
+void APIENTRY shared_dispatch_stub_259(GLenum plane, GLdouble *equation);
+void APIENTRY shared_dispatch_stub_260(GLenum pname, GLdouble *params);
+GLenum APIENTRY shared_dispatch_stub_261(void);
+void APIENTRY shared_dispatch_stub_262(GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_263(GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_264(GLenum light, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_265(GLenum light, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_266(GLenum target, GLenum query, GLdouble *v);
+void APIENTRY shared_dispatch_stub_267(GLenum target, GLenum query, GLfloat *v);
+void APIENTRY shared_dispatch_stub_268(GLenum target, GLenum query, GLint *v);
+void APIENTRY shared_dispatch_stub_269(GLenum face, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_270(GLenum face, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_271(GLenum map, GLfloat *values);
+void APIENTRY shared_dispatch_stub_272(GLenum map, GLuint *values);
+void APIENTRY shared_dispatch_stub_273(GLenum map, GLushort *values);
+void APIENTRY shared_dispatch_stub_274(GLubyte *mask);
+const GLubyte * APIENTRY shared_dispatch_stub_275(GLenum name);
+void APIENTRY shared_dispatch_stub_276(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_277(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_278(GLenum coord, GLenum pname, GLdouble *params);
+void APIENTRY shared_dispatch_stub_279(GLenum coord, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_280(GLenum coord, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_281(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_282(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_283(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_284(GLenum target, GLint level, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_285(GLenum target, GLint level, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_286(GLenum cap);
+GLboolean APIENTRY shared_dispatch_stub_287(GLuint list);
+void APIENTRY shared_dispatch_stub_288(GLclampd zNear, GLclampd zFar);
+void APIENTRY shared_dispatch_stub_289(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+void APIENTRY shared_dispatch_stub_290(void);
+void APIENTRY shared_dispatch_stub_291(const GLfloat *m);
+void APIENTRY shared_dispatch_stub_292(const GLdouble *m);
+void APIENTRY shared_dispatch_stub_293(GLenum mode);
+void APIENTRY shared_dispatch_stub_294(const GLfloat *m);
+void APIENTRY shared_dispatch_stub_295(const GLdouble *m);
+void APIENTRY shared_dispatch_stub_296(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+void APIENTRY shared_dispatch_stub_297(void);
+void APIENTRY shared_dispatch_stub_298(void);
+void APIENTRY shared_dispatch_stub_299(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_300(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_301(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_302(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_303(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_304(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_305(GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_306(GLint i);
+void APIENTRY shared_dispatch_stub_307(GLenum target, GLuint texture);
+void APIENTRY shared_dispatch_stub_308(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_309(GLenum array);
+void APIENTRY shared_dispatch_stub_310(GLenum mode, GLint first, GLsizei count);
+void APIENTRY shared_dispatch_stub_311(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY shared_dispatch_stub_312(GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_313(GLenum array);
+void APIENTRY shared_dispatch_stub_314(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_315(GLubyte c);
+void APIENTRY shared_dispatch_stub_316(const GLubyte *c);
+void APIENTRY shared_dispatch_stub_317(GLenum format, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_318(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_319(GLfloat factor, GLfloat units);
+void APIENTRY shared_dispatch_stub_320(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_321(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLboolean APIENTRY shared_dispatch_stub_322(GLsizei n, const GLuint *textures, GLboolean *residences);
+void APIENTRY shared_dispatch_stub_323(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+void APIENTRY shared_dispatch_stub_324(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+void APIENTRY shared_dispatch_stub_325(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+void APIENTRY shared_dispatch_stub_326(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_327(GLsizei n, const GLuint *textures);
+void APIENTRY shared_dispatch_stub_328(GLsizei n, GLuint *textures);
+void APIENTRY shared_dispatch_stub_329(GLenum pname, GLvoid **params);
+GLboolean APIENTRY shared_dispatch_stub_330(GLuint texture);
+void APIENTRY shared_dispatch_stub_331(GLsizei n, const GLuint *textures, const GLclampf *priorities);
+void APIENTRY shared_dispatch_stub_332(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_333(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_334(void);
+void APIENTRY shared_dispatch_stub_335(GLbitfield mask);
+void APIENTRY shared_dispatch_stub_336(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+void APIENTRY shared_dispatch_stub_337(GLenum mode);
+void APIENTRY shared_dispatch_stub_338(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+void APIENTRY shared_dispatch_stub_339(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+void APIENTRY shared_dispatch_stub_340(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_341(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_342(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY shared_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid *table);
+void APIENTRY shared_dispatch_stub_344(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_345(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_346(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_347(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+void APIENTRY shared_dispatch_stub_348(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY shared_dispatch_stub_349(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+void APIENTRY shared_dispatch_stub_350(GLenum target, GLenum pname, GLfloat params);
+void APIENTRY shared_dispatch_stub_351(GLenum target, GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_352(GLenum target, GLenum pname, GLint params);
+void APIENTRY shared_dispatch_stub_353(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_354(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+void APIENTRY shared_dispatch_stub_355(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid *image);
+void APIENTRY shared_dispatch_stub_357(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_358(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+void APIENTRY shared_dispatch_stub_360(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+void APIENTRY shared_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY shared_dispatch_stub_362(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_363(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+void APIENTRY shared_dispatch_stub_365(GLenum target, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_366(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_367(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+void APIENTRY shared_dispatch_stub_368(GLenum target, GLenum internalformat, GLboolean sink);
+void APIENTRY shared_dispatch_stub_369(GLenum target);
+void APIENTRY shared_dispatch_stub_370(GLenum target);
+void APIENTRY shared_dispatch_stub_371(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_372(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+void APIENTRY shared_dispatch_stub_373(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_374(GLenum texture);
+void APIENTRY shared_dispatch_stub_375(GLenum texture);
+void APIENTRY shared_dispatch_stub_376(GLenum target, GLdouble s);
+void APIENTRY shared_dispatch_stub_377(GLenum target, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_378(GLenum target, GLfloat s);
+void APIENTRY shared_dispatch_stub_379(GLenum target, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_380(GLenum target, GLint s);
+void APIENTRY shared_dispatch_stub_381(GLenum target, const GLint *v);
+void APIENTRY shared_dispatch_stub_382(GLenum target, GLshort s);
+void APIENTRY shared_dispatch_stub_383(GLenum target, const GLshort *v);
+void APIENTRY shared_dispatch_stub_384(GLenum target, GLdouble s, GLdouble t);
+void APIENTRY shared_dispatch_stub_385(GLenum target, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_386(GLenum target, GLfloat s, GLfloat t);
+void APIENTRY shared_dispatch_stub_387(GLenum target, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_388(GLenum target, GLint s, GLint t);
+void APIENTRY shared_dispatch_stub_389(GLenum target, const GLint *v);
+void APIENTRY shared_dispatch_stub_390(GLenum target, GLshort s, GLshort t);
+void APIENTRY shared_dispatch_stub_391(GLenum target, const GLshort *v);
+void APIENTRY shared_dispatch_stub_392(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+void APIENTRY shared_dispatch_stub_393(GLenum target, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_394(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+void APIENTRY shared_dispatch_stub_395(GLenum target, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_396(GLenum target, GLint s, GLint t, GLint r);
+void APIENTRY shared_dispatch_stub_397(GLenum target, const GLint *v);
+void APIENTRY shared_dispatch_stub_398(GLenum target, GLshort s, GLshort t, GLshort r);
+void APIENTRY shared_dispatch_stub_399(GLenum target, const GLshort *v);
+void APIENTRY shared_dispatch_stub_400(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+void APIENTRY shared_dispatch_stub_401(GLenum target, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_402(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+void APIENTRY shared_dispatch_stub_403(GLenum target, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_404(GLenum target, GLint s, GLint t, GLint r, GLint q);
+void APIENTRY shared_dispatch_stub_405(GLenum target, const GLint *v);
+void APIENTRY shared_dispatch_stub_406(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+void APIENTRY shared_dispatch_stub_407(GLenum target, const GLshort *v);
+void APIENTRY shared_dispatch_stub_408(GLuint program, GLuint shader);
+GLuint APIENTRY shared_dispatch_stub_409(void);
+GLuint APIENTRY shared_dispatch_stub_410(GLenum type);
+void APIENTRY shared_dispatch_stub_411(GLuint program);
+void APIENTRY shared_dispatch_stub_412(GLuint program);
+void APIENTRY shared_dispatch_stub_413(GLuint program, GLuint shader);
+void APIENTRY shared_dispatch_stub_414(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+void APIENTRY shared_dispatch_stub_415(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+void APIENTRY shared_dispatch_stub_416(GLuint program, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_417(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+void APIENTRY shared_dispatch_stub_418(GLuint shader, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_419(GLuint program);
+GLboolean APIENTRY shared_dispatch_stub_420(GLuint shader);
+void APIENTRY shared_dispatch_stub_421(GLenum face, GLenum func, GLint ref, GLuint mask);
+void APIENTRY shared_dispatch_stub_422(GLenum face, GLuint mask);
+void APIENTRY shared_dispatch_stub_423(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
+void APIENTRY shared_dispatch_stub_424(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_425(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_426(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_427(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_428(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_429(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_430(GLenum target, GLenum clamp);
+void APIENTRY shared_dispatch_stub_431(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil);
+void APIENTRY shared_dispatch_stub_432(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_433(GLenum buffer, GLint drawbuffer, const GLint *value);
+void APIENTRY shared_dispatch_stub_434(GLenum buffer, GLint drawbuffer, const GLuint *value);
+const GLubyte * APIENTRY shared_dispatch_stub_435(GLenum name, GLuint index);
+void APIENTRY shared_dispatch_stub_436(GLenum target, GLenum internalFormat, GLuint buffer);
+void APIENTRY shared_dispatch_stub_437(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY shared_dispatch_stub_438(GLenum target, GLenum pname, GLint64 *params);
+void APIENTRY shared_dispatch_stub_439(GLenum cap, GLuint index, GLint64 *data);
+void APIENTRY shared_dispatch_stub_440(GLuint index, GLuint divisor);
+void APIENTRY shared_dispatch_stub_441(const GLdouble *m);
+void APIENTRY shared_dispatch_stub_442(const GLfloat *m);
+void APIENTRY shared_dispatch_stub_443(const GLdouble *m);
+void APIENTRY shared_dispatch_stub_444(const GLfloat *m);
+void APIENTRY shared_dispatch_stub_445(GLclampf value, GLboolean invert);
+void APIENTRY shared_dispatch_stub_446(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_447(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_448(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_449(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_450(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_451(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_452(GLenum target, GLint level, GLvoid *img);
+void APIENTRY shared_dispatch_stub_453(GLuint index);
+void APIENTRY shared_dispatch_stub_454(GLuint index);
+void APIENTRY shared_dispatch_stub_455(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY shared_dispatch_stub_456(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY shared_dispatch_stub_457(GLenum target, GLuint index, GLdouble *params);
+void APIENTRY shared_dispatch_stub_458(GLenum target, GLuint index, GLfloat *params);
+void APIENTRY shared_dispatch_stub_459(GLenum target, GLenum pname, GLvoid *string);
+void APIENTRY shared_dispatch_stub_460(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_461(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY shared_dispatch_stub_462(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_463(GLuint index, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_464(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_465(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY shared_dispatch_stub_466(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_467(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_468(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_469(GLenum target, GLuint index, const GLdouble *params);
+void APIENTRY shared_dispatch_stub_470(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_471(GLenum target, GLuint index, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_472(GLenum target, GLenum format, GLsizei len, const GLvoid *string);
+void APIENTRY shared_dispatch_stub_473(GLuint index, GLdouble x);
+void APIENTRY shared_dispatch_stub_474(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_475(GLuint index, GLfloat x);
+void APIENTRY shared_dispatch_stub_476(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_477(GLuint index, GLshort x);
+void APIENTRY shared_dispatch_stub_478(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_479(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY shared_dispatch_stub_480(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_481(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY shared_dispatch_stub_482(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_483(GLuint index, GLshort x, GLshort y);
+void APIENTRY shared_dispatch_stub_484(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_485(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_486(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_487(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_488(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_489(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY shared_dispatch_stub_490(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_491(GLuint index, const GLbyte *v);
+void APIENTRY shared_dispatch_stub_492(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_493(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_494(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY shared_dispatch_stub_495(GLuint index, const GLubyte *v);
+void APIENTRY shared_dispatch_stub_496(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_497(GLuint index, const GLushort *v);
+void APIENTRY shared_dispatch_stub_498(GLuint index, const GLbyte *v);
+void APIENTRY shared_dispatch_stub_499(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_500(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_501(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_502(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_503(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_504(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY shared_dispatch_stub_505(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_506(GLuint index, const GLubyte *v);
+void APIENTRY shared_dispatch_stub_507(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_508(GLuint index, const GLushort *v);
+void APIENTRY shared_dispatch_stub_509(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_510(GLenum target, GLuint buffer);
+void APIENTRY shared_dispatch_stub_511(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
+void APIENTRY shared_dispatch_stub_512(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
+void APIENTRY shared_dispatch_stub_513(GLsizei n, const GLuint *buffer);
+void APIENTRY shared_dispatch_stub_514(GLsizei n, GLuint *buffer);
+void APIENTRY shared_dispatch_stub_515(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_516(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY shared_dispatch_stub_517(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
+GLboolean APIENTRY shared_dispatch_stub_518(GLuint buffer);
+GLvoid * APIENTRY shared_dispatch_stub_519(GLenum target, GLenum access);
+GLboolean APIENTRY shared_dispatch_stub_520(GLenum target);
+void APIENTRY shared_dispatch_stub_521(GLenum target, GLuint id);
+void APIENTRY shared_dispatch_stub_522(GLsizei n, const GLuint *ids);
+void APIENTRY shared_dispatch_stub_523(GLenum target);
+void APIENTRY shared_dispatch_stub_524(GLsizei n, GLuint *ids);
+void APIENTRY shared_dispatch_stub_525(GLuint id, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_526(GLuint id, GLenum pname, GLuint *params);
+void APIENTRY shared_dispatch_stub_527(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_528(GLuint id);
+void APIENTRY shared_dispatch_stub_529(GLhandleARB containerObj, GLhandleARB obj);
+void APIENTRY shared_dispatch_stub_530(GLhandleARB shader);
+GLhandleARB APIENTRY shared_dispatch_stub_531(void);
+GLhandleARB APIENTRY shared_dispatch_stub_532(GLenum shaderType);
+void APIENTRY shared_dispatch_stub_533(GLhandleARB obj);
+void APIENTRY shared_dispatch_stub_534(GLhandleARB containerObj, GLhandleARB attachedObj);
+void APIENTRY shared_dispatch_stub_535(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+void APIENTRY shared_dispatch_stub_536(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog);
+GLhandleARB APIENTRY shared_dispatch_stub_537(GLenum pname);
+void APIENTRY shared_dispatch_stub_538(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
+void APIENTRY shared_dispatch_stub_539(GLhandleARB obj, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_540(GLhandleARB obj, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_541(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source);
+GLint APIENTRY shared_dispatch_stub_542(GLhandleARB program, const GLcharARB *name);
+void APIENTRY shared_dispatch_stub_543(GLhandleARB program, GLint location, GLfloat *params);
+void APIENTRY shared_dispatch_stub_544(GLhandleARB program, GLint location, GLint *params);
+void APIENTRY shared_dispatch_stub_545(GLhandleARB program);
+void APIENTRY shared_dispatch_stub_546(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length);
+void APIENTRY shared_dispatch_stub_547(GLint location, GLfloat v0);
+void APIENTRY shared_dispatch_stub_548(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_549(GLint location, GLint v0);
+void APIENTRY shared_dispatch_stub_550(GLint location, GLsizei count, const GLint *value);
+void APIENTRY shared_dispatch_stub_551(GLint location, GLfloat v0, GLfloat v1);
+void APIENTRY shared_dispatch_stub_552(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_553(GLint location, GLint v0, GLint v1);
+void APIENTRY shared_dispatch_stub_554(GLint location, GLsizei count, const GLint *value);
+void APIENTRY shared_dispatch_stub_555(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+void APIENTRY shared_dispatch_stub_556(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_557(GLint location, GLint v0, GLint v1, GLint v2);
+void APIENTRY shared_dispatch_stub_558(GLint location, GLsizei count, const GLint *value);
+void APIENTRY shared_dispatch_stub_559(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+void APIENTRY shared_dispatch_stub_560(GLint location, GLsizei count, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_561(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+void APIENTRY shared_dispatch_stub_562(GLint location, GLsizei count, const GLint *value);
+void APIENTRY shared_dispatch_stub_563(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_564(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_565(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_566(GLhandleARB program);
+void APIENTRY shared_dispatch_stub_567(GLhandleARB program);
+void APIENTRY shared_dispatch_stub_568(GLhandleARB program, GLuint index, const GLcharARB *name);
+void APIENTRY shared_dispatch_stub_569(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
+GLint APIENTRY shared_dispatch_stub_570(GLhandleARB program, const GLcharARB *name);
+void APIENTRY shared_dispatch_stub_571(GLsizei n, const GLenum *bufs);
+void APIENTRY shared_dispatch_stub_572(GLenum mode, GLint first, GLsizei count, GLsizei primcount);
+void APIENTRY shared_dispatch_stub_573(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
+void APIENTRY shared_dispatch_stub_574(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_575(GLenum target, GLenum attachment, GLuint texture, GLint level);
+void APIENTRY shared_dispatch_stub_576(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
+void APIENTRY shared_dispatch_stub_577(GLuint program, GLenum pname, GLint value);
+void APIENTRY shared_dispatch_stub_578(GLuint index, GLuint divisor);
+void APIENTRY shared_dispatch_stub_579(GLenum target, GLintptr offset, GLsizeiptr length);
+GLvoid * APIENTRY shared_dispatch_stub_580(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+void APIENTRY shared_dispatch_stub_581(GLuint array);
+void APIENTRY shared_dispatch_stub_582(GLsizei n, GLuint *arrays);
+void APIENTRY shared_dispatch_stub_583(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+GLenum APIENTRY shared_dispatch_stub_584(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY shared_dispatch_stub_585(GLsync sync);
+GLsync APIENTRY shared_dispatch_stub_586(GLenum condition, GLbitfield flags);
+void APIENTRY shared_dispatch_stub_587(GLenum pname, GLint64 *params);
+void APIENTRY shared_dispatch_stub_588(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+GLboolean APIENTRY shared_dispatch_stub_589(GLsync sync);
+void APIENTRY shared_dispatch_stub_590(GLsync sync, GLbitfield flags, GLuint64 timeout);
+void APIENTRY shared_dispatch_stub_591(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY shared_dispatch_stub_592(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+void APIENTRY shared_dispatch_stub_593(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex);
+void APIENTRY shared_dispatch_stub_594(GLuint buf, GLenum modeRGB, GLenum modeA);
+void APIENTRY shared_dispatch_stub_595(GLuint buf, GLenum mode);
+void APIENTRY shared_dispatch_stub_596(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA);
+void APIENTRY shared_dispatch_stub_597(GLuint buf, GLenum src, GLenum dst);
+void APIENTRY shared_dispatch_stub_598(GLenum target, GLuint id);
+void APIENTRY shared_dispatch_stub_599(GLsizei n, const GLuint *ids);
+void APIENTRY shared_dispatch_stub_600(GLenum mode, GLuint id);
+void APIENTRY shared_dispatch_stub_601(GLsizei n, GLuint *ids);
+GLboolean APIENTRY shared_dispatch_stub_602(GLuint id);
+void APIENTRY shared_dispatch_stub_603(void);
+void APIENTRY shared_dispatch_stub_604(void);
+void APIENTRY shared_dispatch_stub_605(GLclampf depth);
+void APIENTRY shared_dispatch_stub_606(GLclampf zNear, GLclampf zFar);
+void APIENTRY shared_dispatch_stub_607(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+void APIENTRY shared_dispatch_stub_608(void);
+void APIENTRY shared_dispatch_stub_609(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+void APIENTRY shared_dispatch_stub_610(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+void APIENTRY shared_dispatch_stub_611(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+void APIENTRY shared_dispatch_stub_612(GLuint program, GLenum pname, GLint value);
+void APIENTRY shared_dispatch_stub_613(GLfloat factor, GLfloat bias);
+void APIENTRY shared_dispatch_stub_614(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
+void APIENTRY shared_dispatch_stub_615(const GLfloat *coords);
+void APIENTRY shared_dispatch_stub_616(GLint x, GLint y, GLint z, GLint width, GLint height);
+void APIENTRY shared_dispatch_stub_617(const GLint *coords);
+void APIENTRY shared_dispatch_stub_618(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
+void APIENTRY shared_dispatch_stub_619(const GLshort *coords);
+void APIENTRY shared_dispatch_stub_620(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
+void APIENTRY shared_dispatch_stub_621(const GLfixed *coords);
+void APIENTRY shared_dispatch_stub_622(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_623(GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_624(GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_625(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_626(GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_627(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_628(GLenum pname, const GLint *params);
+GLbitfield APIENTRY shared_dispatch_stub_629(GLfixed *mantissa, GLint *exponent);
+void APIENTRY shared_dispatch_stub_630(GLclampf value, GLboolean invert);
+void APIENTRY shared_dispatch_stub_631(GLenum pattern);
+void APIENTRY shared_dispatch_stub_632(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_633(GLsizei stride, GLsizei count, const GLboolean *pointer);
+void APIENTRY shared_dispatch_stub_634(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_635(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_636(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_637(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_638(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_639(GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_640(GLint first, GLsizei count);
+void APIENTRY shared_dispatch_stub_641(void);
+void APIENTRY shared_dispatch_stub_642(GLbyte red, GLbyte green, GLbyte blue);
+void APIENTRY shared_dispatch_stub_643(const GLbyte *v);
+void APIENTRY shared_dispatch_stub_644(GLdouble red, GLdouble green, GLdouble blue);
+void APIENTRY shared_dispatch_stub_645(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_646(GLfloat red, GLfloat green, GLfloat blue);
+void APIENTRY shared_dispatch_stub_647(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_648(GLint red, GLint green, GLint blue);
+void APIENTRY shared_dispatch_stub_649(const GLint *v);
+void APIENTRY shared_dispatch_stub_650(GLshort red, GLshort green, GLshort blue);
+void APIENTRY shared_dispatch_stub_651(const GLshort *v);
+void APIENTRY shared_dispatch_stub_652(GLubyte red, GLubyte green, GLubyte blue);
+void APIENTRY shared_dispatch_stub_653(const GLubyte *v);
+void APIENTRY shared_dispatch_stub_654(GLuint red, GLuint green, GLuint blue);
+void APIENTRY shared_dispatch_stub_655(const GLuint *v);
+void APIENTRY shared_dispatch_stub_656(GLushort red, GLushort green, GLushort blue);
+void APIENTRY shared_dispatch_stub_657(const GLushort *v);
+void APIENTRY shared_dispatch_stub_658(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_659(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
+void APIENTRY shared_dispatch_stub_660(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
+void APIENTRY shared_dispatch_stub_661(GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_662(GLdouble coord);
+void APIENTRY shared_dispatch_stub_663(const GLdouble *coord);
+void APIENTRY shared_dispatch_stub_664(GLfloat coord);
+void APIENTRY shared_dispatch_stub_665(const GLfloat *coord);
+void APIENTRY shared_dispatch_stub_666(GLenum mode);
+void APIENTRY shared_dispatch_stub_667(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+void APIENTRY shared_dispatch_stub_668(void);
+void APIENTRY shared_dispatch_stub_669(GLsizei length, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_670(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY shared_dispatch_stub_671(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
+void APIENTRY shared_dispatch_stub_672(GLenum pname, GLfloat param);
+void APIENTRY shared_dispatch_stub_673(GLenum pname, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_674(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_675(GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_676(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
+void APIENTRY shared_dispatch_stub_677(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_678(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_679(GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_680(GLenum stage, GLenum portion, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_681(GLenum variable, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_682(GLenum variable, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_683(void);
+void APIENTRY shared_dispatch_stub_684(GLdouble x, GLdouble y);
+void APIENTRY shared_dispatch_stub_685(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_686(GLfloat x, GLfloat y);
+void APIENTRY shared_dispatch_stub_687(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_688(GLint x, GLint y);
+void APIENTRY shared_dispatch_stub_689(const GLint *v);
+void APIENTRY shared_dispatch_stub_690(GLshort x, GLshort y);
+void APIENTRY shared_dispatch_stub_691(const GLshort *v);
+void APIENTRY shared_dispatch_stub_692(GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_693(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_694(GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_695(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_696(GLint x, GLint y, GLint z);
+void APIENTRY shared_dispatch_stub_697(const GLint *v);
+void APIENTRY shared_dispatch_stub_698(GLshort x, GLshort y, GLshort z);
+void APIENTRY shared_dispatch_stub_699(const GLshort *v);
+void APIENTRY shared_dispatch_stub_700(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_701(const GLdouble *v);
+void APIENTRY shared_dispatch_stub_702(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_703(const GLfloat *v);
+void APIENTRY shared_dispatch_stub_704(GLint x, GLint y, GLint z, GLint w);
+void APIENTRY shared_dispatch_stub_705(const GLint *v);
+void APIENTRY shared_dispatch_stub_706(GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY shared_dispatch_stub_707(const GLshort *v);
+void APIENTRY shared_dispatch_stub_708(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
+void APIENTRY shared_dispatch_stub_709(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride);
+void APIENTRY shared_dispatch_stub_710(GLsizei n, const GLuint *fences);
+void APIENTRY shared_dispatch_stub_711(GLuint fence);
+void APIENTRY shared_dispatch_stub_712(GLsizei n, GLuint *fences);
+void APIENTRY shared_dispatch_stub_713(GLuint fence, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_714(GLuint fence);
+void APIENTRY shared_dispatch_stub_715(GLuint fence, GLenum condition);
+GLboolean APIENTRY shared_dispatch_stub_716(GLuint fence);
+GLboolean APIENTRY shared_dispatch_stub_717(GLsizei n, const GLuint *ids, GLboolean *residences);
+void APIENTRY shared_dispatch_stub_718(GLenum target, GLuint program);
+void APIENTRY shared_dispatch_stub_719(GLsizei n, const GLuint *programs);
+void APIENTRY shared_dispatch_stub_720(GLenum target, GLuint id, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_721(GLsizei n, GLuint *programs);
+void APIENTRY shared_dispatch_stub_722(GLenum target, GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY shared_dispatch_stub_723(GLenum target, GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_724(GLuint id, GLenum pname, GLubyte *program);
+void APIENTRY shared_dispatch_stub_725(GLuint id, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_726(GLenum target, GLuint address, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_727(GLuint index, GLenum pname, GLvoid **pointer);
+void APIENTRY shared_dispatch_stub_728(GLuint index, GLenum pname, GLdouble *params);
+void APIENTRY shared_dispatch_stub_729(GLuint index, GLenum pname, GLfloat *params);
+void APIENTRY shared_dispatch_stub_730(GLuint index, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_731(GLuint program);
+void APIENTRY shared_dispatch_stub_732(GLenum target, GLuint id, GLsizei len, const GLubyte *program);
+void APIENTRY shared_dispatch_stub_733(GLenum target, GLuint index, GLsizei num, const GLdouble *params);
+void APIENTRY shared_dispatch_stub_734(GLenum target, GLuint index, GLsizei num, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_735(GLsizei n, const GLuint *ids);
+void APIENTRY shared_dispatch_stub_736(GLenum target, GLuint address, GLenum matrix, GLenum transform);
+void APIENTRY shared_dispatch_stub_737(GLuint index, GLdouble x);
+void APIENTRY shared_dispatch_stub_738(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_739(GLuint index, GLfloat x);
+void APIENTRY shared_dispatch_stub_740(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_741(GLuint index, GLshort x);
+void APIENTRY shared_dispatch_stub_742(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_743(GLuint index, GLdouble x, GLdouble y);
+void APIENTRY shared_dispatch_stub_744(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_745(GLuint index, GLfloat x, GLfloat y);
+void APIENTRY shared_dispatch_stub_746(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_747(GLuint index, GLshort x, GLshort y);
+void APIENTRY shared_dispatch_stub_748(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_749(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+void APIENTRY shared_dispatch_stub_750(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_751(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+void APIENTRY shared_dispatch_stub_752(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_753(GLuint index, GLshort x, GLshort y, GLshort z);
+void APIENTRY shared_dispatch_stub_754(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_755(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_756(GLuint index, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_757(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_758(GLuint index, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_759(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+void APIENTRY shared_dispatch_stub_760(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_761(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+void APIENTRY shared_dispatch_stub_762(GLuint index, const GLubyte *v);
+void APIENTRY shared_dispatch_stub_763(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_764(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_765(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_766(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY shared_dispatch_stub_767(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_768(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_769(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY shared_dispatch_stub_770(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_771(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_772(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY shared_dispatch_stub_773(GLuint index, GLsizei n, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_774(GLuint index, GLsizei n, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_775(GLuint index, GLsizei n, const GLshort *v);
+void APIENTRY shared_dispatch_stub_776(GLuint index, GLsizei n, const GLubyte *v);
+void APIENTRY shared_dispatch_stub_777(GLenum pname, GLfloat *param);
+void APIENTRY shared_dispatch_stub_778(GLenum pname, GLint *param);
+void APIENTRY shared_dispatch_stub_779(GLenum pname, const GLfloat *param);
+void APIENTRY shared_dispatch_stub_780(GLenum pname, const GLint *param);
+void APIENTRY shared_dispatch_stub_781(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY shared_dispatch_stub_782(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY shared_dispatch_stub_783(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY shared_dispatch_stub_784(void);
+void APIENTRY shared_dispatch_stub_785(GLuint id);
+void APIENTRY shared_dispatch_stub_786(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
+void APIENTRY shared_dispatch_stub_787(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
+void APIENTRY shared_dispatch_stub_788(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
+void APIENTRY shared_dispatch_stub_789(GLuint id);
+void APIENTRY shared_dispatch_stub_790(void);
+GLuint APIENTRY shared_dispatch_stub_791(GLuint range);
+void APIENTRY shared_dispatch_stub_792(GLuint dst, GLuint coord, GLenum swizzle);
+void APIENTRY shared_dispatch_stub_793(GLuint dst, GLuint interp, GLenum swizzle);
+void APIENTRY shared_dispatch_stub_794(GLuint dst, const GLfloat *value);
+void APIENTRY shared_dispatch_stub_795(GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_796(GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_797(GLenum face);
+void APIENTRY shared_dispatch_stub_798(GLuint array);
+void APIENTRY shared_dispatch_stub_799(GLsizei n, const GLuint *arrays);
+void APIENTRY shared_dispatch_stub_800(GLsizei n, GLuint *arrays);
+GLboolean APIENTRY shared_dispatch_stub_801(GLuint array);
+void APIENTRY shared_dispatch_stub_802(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
+void APIENTRY shared_dispatch_stub_803(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
+void APIENTRY shared_dispatch_stub_804(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+void APIENTRY shared_dispatch_stub_805(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
+void APIENTRY shared_dispatch_stub_806(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+void APIENTRY shared_dispatch_stub_807(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
+void APIENTRY shared_dispatch_stub_808(GLuint index);
+void APIENTRY shared_dispatch_stub_809(void);
+void APIENTRY shared_dispatch_stub_810(GLenum func, GLclampx ref);
+void APIENTRY shared_dispatch_stub_811(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
+void APIENTRY shared_dispatch_stub_812(GLclampx depth);
+void APIENTRY shared_dispatch_stub_813(GLenum plane, const GLfixed *equation);
+void APIENTRY shared_dispatch_stub_814(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+void APIENTRY shared_dispatch_stub_815(GLclampx zNear, GLclampx zFar);
+void APIENTRY shared_dispatch_stub_816(GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_817(GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_818(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+void APIENTRY shared_dispatch_stub_819(GLenum plane, GLfixed *equation);
+void APIENTRY shared_dispatch_stub_820(GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_821(GLenum light, GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_822(GLenum face, GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_823(GLenum target, GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_824(GLenum coord, GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_825(GLenum target, GLenum pname, GLfixed *params);
+void APIENTRY shared_dispatch_stub_826(GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_827(GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_828(GLenum light, GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_829(GLenum light, GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_830(GLfixed width);
+void APIENTRY shared_dispatch_stub_831(const GLfixed *m);
+void APIENTRY shared_dispatch_stub_832(GLenum face, GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_833(GLenum face, GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_834(const GLfixed *m);
+void APIENTRY shared_dispatch_stub_835(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+void APIENTRY shared_dispatch_stub_836(GLfixed nx, GLfixed ny, GLfixed nz);
+void APIENTRY shared_dispatch_stub_837(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
+void APIENTRY shared_dispatch_stub_838(GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_839(GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_840(GLfixed size);
+void APIENTRY shared_dispatch_stub_841(GLfixed factor, GLfixed units);
+void APIENTRY shared_dispatch_stub_842(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY shared_dispatch_stub_843(GLclampx value, GLboolean invert);
+void APIENTRY shared_dispatch_stub_844(GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY shared_dispatch_stub_845(GLenum target, GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_846(GLenum target, GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_847(GLenum coord, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_848(GLenum coord, GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_849(GLenum target, GLenum pname, GLfixed param);
+void APIENTRY shared_dispatch_stub_850(GLenum target, GLenum pname, const GLfixed *params);
+void APIENTRY shared_dispatch_stub_851(GLfixed x, GLfixed y, GLfixed z);
+void APIENTRY shared_dispatch_stub_852(GLenum plane, const GLfloat *equation);
+void APIENTRY shared_dispatch_stub_853(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+void APIENTRY shared_dispatch_stub_854(GLenum plane, GLfloat *equation);
+void APIENTRY shared_dispatch_stub_855(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
+void APIENTRY shared_dispatch_stub_856(GLclampd zmin, GLclampd zmax);
+void APIENTRY shared_dispatch_stub_857(GLenum modeRGB, GLenum modeA);
+void APIENTRY shared_dispatch_stub_858(GLenum target, GLuint framebuffer);
+void APIENTRY shared_dispatch_stub_859(GLenum target, GLuint renderbuffer);
+GLenum APIENTRY shared_dispatch_stub_860(GLenum target);
+void APIENTRY shared_dispatch_stub_861(GLsizei n, const GLuint *framebuffers);
+void APIENTRY shared_dispatch_stub_862(GLsizei n, const GLuint *renderbuffers);
+void APIENTRY shared_dispatch_stub_863(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+void APIENTRY shared_dispatch_stub_864(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY shared_dispatch_stub_865(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+void APIENTRY shared_dispatch_stub_866(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+void APIENTRY shared_dispatch_stub_867(GLsizei n, GLuint *framebuffers);
+void APIENTRY shared_dispatch_stub_868(GLsizei n, GLuint *renderbuffers);
+void APIENTRY shared_dispatch_stub_869(GLenum target);
+void APIENTRY shared_dispatch_stub_870(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_871(GLenum target, GLenum pname, GLint *params);
+GLboolean APIENTRY shared_dispatch_stub_872(GLuint framebuffer);
+GLboolean APIENTRY shared_dispatch_stub_873(GLuint renderbuffer);
+void APIENTRY shared_dispatch_stub_874(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+void APIENTRY shared_dispatch_stub_875(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+void APIENTRY shared_dispatch_stub_876(GLenum target, GLenum pname, GLint param);
+void APIENTRY shared_dispatch_stub_877(GLenum target, GLintptr offset, GLsizeiptr size);
+void APIENTRY shared_dispatch_stub_878(GLuint program, GLuint colorNumber, const GLchar *name);
+GLint APIENTRY shared_dispatch_stub_879(GLuint program, const GLchar *name);
+void APIENTRY shared_dispatch_stub_880(GLuint program, GLint location, GLuint *params);
+void APIENTRY shared_dispatch_stub_881(GLuint index, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_882(GLuint index, GLenum pname, GLuint *params);
+void APIENTRY shared_dispatch_stub_883(GLint location, GLuint x);
+void APIENTRY shared_dispatch_stub_884(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY shared_dispatch_stub_885(GLint location, GLuint x, GLuint y);
+void APIENTRY shared_dispatch_stub_886(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY shared_dispatch_stub_887(GLint location, GLuint x, GLuint y, GLuint z);
+void APIENTRY shared_dispatch_stub_888(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY shared_dispatch_stub_889(GLint location, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY shared_dispatch_stub_890(GLint location, GLsizei count, const GLuint *value);
+void APIENTRY shared_dispatch_stub_891(GLuint index, GLint x);
+void APIENTRY shared_dispatch_stub_892(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_893(GLuint index, GLuint x);
+void APIENTRY shared_dispatch_stub_894(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_895(GLuint index, GLint x, GLint y);
+void APIENTRY shared_dispatch_stub_896(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_897(GLuint index, GLuint x, GLuint y);
+void APIENTRY shared_dispatch_stub_898(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_899(GLuint index, GLint x, GLint y, GLint z);
+void APIENTRY shared_dispatch_stub_900(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_901(GLuint index, GLuint x, GLuint y, GLuint z);
+void APIENTRY shared_dispatch_stub_902(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_903(GLuint index, const GLbyte *v);
+void APIENTRY shared_dispatch_stub_904(GLuint index, GLint x, GLint y, GLint z, GLint w);
+void APIENTRY shared_dispatch_stub_905(GLuint index, const GLint *v);
+void APIENTRY shared_dispatch_stub_906(GLuint index, const GLshort *v);
+void APIENTRY shared_dispatch_stub_907(GLuint index, const GLubyte *v);
+void APIENTRY shared_dispatch_stub_908(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+void APIENTRY shared_dispatch_stub_909(GLuint index, const GLuint *v);
+void APIENTRY shared_dispatch_stub_910(GLuint index, const GLushort *v);
+void APIENTRY shared_dispatch_stub_911(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_912(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+void APIENTRY shared_dispatch_stub_913(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+void APIENTRY shared_dispatch_stub_914(GLenum target, GLuint index);
+void APIENTRY shared_dispatch_stub_915(GLenum target, GLuint index);
+void APIENTRY shared_dispatch_stub_916(GLenum value, GLuint index, GLboolean *data);
+void APIENTRY shared_dispatch_stub_917(GLenum value, GLuint index, GLint *data);
+GLboolean APIENTRY shared_dispatch_stub_918(GLenum target, GLuint index);
+void APIENTRY shared_dispatch_stub_919(GLint r, GLint g, GLint b, GLint a);
+void APIENTRY shared_dispatch_stub_920(GLuint r, GLuint g, GLuint b, GLuint a);
+void APIENTRY shared_dispatch_stub_921(GLenum target, GLenum pname, GLint *params);
+void APIENTRY shared_dispatch_stub_922(GLenum target, GLenum pname, GLuint *params);
+void APIENTRY shared_dispatch_stub_923(GLenum target, GLenum pname, const GLint *params);
+void APIENTRY shared_dispatch_stub_924(GLenum target, GLenum pname, const GLuint *params);
+void APIENTRY shared_dispatch_stub_925(GLuint query, GLenum mode);
+void APIENTRY shared_dispatch_stub_926(void);
+void APIENTRY shared_dispatch_stub_927(GLenum mode);
+void APIENTRY shared_dispatch_stub_928(GLenum target, GLuint index, GLuint buffer);
+void APIENTRY shared_dispatch_stub_929(GLenum target, GLuint index, GLuint buffer, GLintptr offset);
+void APIENTRY shared_dispatch_stub_930(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+void APIENTRY shared_dispatch_stub_931(void);
+void APIENTRY shared_dispatch_stub_932(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+void APIENTRY shared_dispatch_stub_933(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode);
+void APIENTRY shared_dispatch_stub_934(GLenum mode);
+void APIENTRY shared_dispatch_stub_935(GLenum target, GLenum pname, GLvoid **params);
+void APIENTRY shared_dispatch_stub_936(GLenum target, GLsizei length, GLvoid *pointer);
+void APIENTRY shared_dispatch_stub_937(GLenum objectType, GLuint name, GLenum pname, GLint *value);
+GLenum APIENTRY shared_dispatch_stub_938(GLenum objectType, GLuint name, GLenum option);
+GLenum APIENTRY shared_dispatch_stub_939(GLenum objectType, GLuint name, GLenum option);
+void APIENTRY shared_dispatch_stub_940(GLuint program);
+GLuint APIENTRY shared_dispatch_stub_941(GLenum type, const GLchar *string);
+void APIENTRY shared_dispatch_stub_942(GLenum type, GLuint program);
+void APIENTRY shared_dispatch_stub_943(void);
+void APIENTRY shared_dispatch_stub_944(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+void APIENTRY shared_dispatch_stub_945(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_946(GLenum target, GLuint index, GLsizei count, const GLfloat *params);
+void APIENTRY shared_dispatch_stub_947(GLuint id, GLenum pname, GLint64EXT *params);
+void APIENTRY shared_dispatch_stub_948(GLuint id, GLenum pname, GLuint64EXT *params);
+void APIENTRY shared_dispatch_stub_949(GLenum target, GLvoid *writeOffset);
+void APIENTRY shared_dispatch_stub_950(GLenum target, GLvoid *writeOffset);
+#undef MAPI_TMP_DEFINES
+#endif /* MAPI_TMP_DEFINES */
+
+#ifdef MAPI_TMP_TABLE
+#define MAPI_TABLE_NUM_STATIC 951
+#define MAPI_TABLE_NUM_DYNAMIC 256
+#undef MAPI_TMP_TABLE
+#endif /* MAPI_TMP_TABLE */
+
+#ifdef MAPI_TMP_NOOP_ARRAY
+#ifdef DEBUG
+
+static void APIENTRY noopNewList(GLuint list, GLenum mode)
+{
+ noop_warn("glNewList");
+}
+
+static void APIENTRY noopEndList(void)
+{
+ noop_warn("glEndList");
+}
+
+static void APIENTRY noopCallList(GLuint list)
+{
+ noop_warn("glCallList");
+}
+
+static void APIENTRY noopCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ noop_warn("glCallLists");
+}
+
+static void APIENTRY noopDeleteLists(GLuint list, GLsizei range)
+{
+ noop_warn("glDeleteLists");
+}
+
+static GLuint APIENTRY noopGenLists(GLsizei range)
+{
+ noop_warn("glGenLists");
+ return (GLuint) 0;
+}
+
+static void APIENTRY noopListBase(GLuint base)
+{
+ noop_warn("glListBase");
+}
+
+static void APIENTRY noopBegin(GLenum mode)
+{
+ noop_warn("glBegin");
+}
+
+static void APIENTRY noopBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ noop_warn("glBitmap");
+}
+
+static void APIENTRY noopColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ noop_warn("glColor3b");
+}
+
+static void APIENTRY noopColor3bv(const GLbyte *v)
+{
+ noop_warn("glColor3bv");
+}
+
+static void APIENTRY noopColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ noop_warn("glColor3d");
+}
+
+static void APIENTRY noopColor3dv(const GLdouble *v)
+{
+ noop_warn("glColor3dv");
+}
+
+static void APIENTRY noopColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ noop_warn("glColor3f");
+}
+
+static void APIENTRY noopColor3fv(const GLfloat *v)
+{
+ noop_warn("glColor3fv");
+}
+
+static void APIENTRY noopColor3i(GLint red, GLint green, GLint blue)
+{
+ noop_warn("glColor3i");
+}
+
+static void APIENTRY noopColor3iv(const GLint *v)
+{
+ noop_warn("glColor3iv");
+}
+
+static void APIENTRY noopColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ noop_warn("glColor3s");
+}
+
+static void APIENTRY noopColor3sv(const GLshort *v)
+{
+ noop_warn("glColor3sv");
+}
+
+static void APIENTRY noopColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ noop_warn("glColor3ub");
+}
+
+static void APIENTRY noopColor3ubv(const GLubyte *v)
+{
+ noop_warn("glColor3ubv");
+}
+
+static void APIENTRY noopColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ noop_warn("glColor3ui");
+}
+
+static void APIENTRY noopColor3uiv(const GLuint *v)
+{
+ noop_warn("glColor3uiv");
+}
+
+static void APIENTRY noopColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ noop_warn("glColor3us");
+}
+
+static void APIENTRY noopColor3usv(const GLushort *v)
+{
+ noop_warn("glColor3usv");
+}
+
+static void APIENTRY noopColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ noop_warn("glColor4b");
+}
+
+static void APIENTRY noopColor4bv(const GLbyte *v)
+{
+ noop_warn("glColor4bv");
+}
+
+static void APIENTRY noopColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ noop_warn("glColor4d");
+}
+
+static void APIENTRY noopColor4dv(const GLdouble *v)
+{
+ noop_warn("glColor4dv");
+}
+
+static void APIENTRY noopColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ noop_warn("glColor4f");
+}
+
+static void APIENTRY noopColor4fv(const GLfloat *v)
+{
+ noop_warn("glColor4fv");
+}
+
+static void APIENTRY noopColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ noop_warn("glColor4i");
+}
+
+static void APIENTRY noopColor4iv(const GLint *v)
+{
+ noop_warn("glColor4iv");
+}
+
+static void APIENTRY noopColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ noop_warn("glColor4s");
+}
+
+static void APIENTRY noopColor4sv(const GLshort *v)
+{
+ noop_warn("glColor4sv");
+}
+
+static void APIENTRY noopColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ noop_warn("glColor4ub");
+}
+
+static void APIENTRY noopColor4ubv(const GLubyte *v)
+{
+ noop_warn("glColor4ubv");
+}
+
+static void APIENTRY noopColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ noop_warn("glColor4ui");
+}
+
+static void APIENTRY noopColor4uiv(const GLuint *v)
+{
+ noop_warn("glColor4uiv");
+}
+
+static void APIENTRY noopColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ noop_warn("glColor4us");
+}
+
+static void APIENTRY noopColor4usv(const GLushort *v)
+{
+ noop_warn("glColor4usv");
+}
+
+static void APIENTRY noopEdgeFlag(GLboolean flag)
+{
+ noop_warn("glEdgeFlag");
+}
+
+static void APIENTRY noopEdgeFlagv(const GLboolean *flag)
+{
+ noop_warn("glEdgeFlagv");
+}
+
+static void APIENTRY noopEnd(void)
+{
+ noop_warn("glEnd");
+}
+
+static void APIENTRY noopIndexd(GLdouble c)
+{
+ noop_warn("glIndexd");
+}
+
+static void APIENTRY noopIndexdv(const GLdouble *c)
+{
+ noop_warn("glIndexdv");
+}
+
+static void APIENTRY noopIndexf(GLfloat c)
+{
+ noop_warn("glIndexf");
+}
+
+static void APIENTRY noopIndexfv(const GLfloat *c)
+{
+ noop_warn("glIndexfv");
+}
+
+static void APIENTRY noopIndexi(GLint c)
+{
+ noop_warn("glIndexi");
+}
+
+static void APIENTRY noopIndexiv(const GLint *c)
+{
+ noop_warn("glIndexiv");
+}
+
+static void APIENTRY noopIndexs(GLshort c)
+{
+ noop_warn("glIndexs");
+}
+
+static void APIENTRY noopIndexsv(const GLshort *c)
+{
+ noop_warn("glIndexsv");
+}
+
+static void APIENTRY noopNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ noop_warn("glNormal3b");
+}
+
+static void APIENTRY noopNormal3bv(const GLbyte *v)
+{
+ noop_warn("glNormal3bv");
+}
+
+static void APIENTRY noopNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ noop_warn("glNormal3d");
+}
+
+static void APIENTRY noopNormal3dv(const GLdouble *v)
+{
+ noop_warn("glNormal3dv");
+}
+
+static void APIENTRY noopNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ noop_warn("glNormal3f");
+}
+
+static void APIENTRY noopNormal3fv(const GLfloat *v)
+{
+ noop_warn("glNormal3fv");
+}
+
+static void APIENTRY noopNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ noop_warn("glNormal3i");
+}
+
+static void APIENTRY noopNormal3iv(const GLint *v)
+{
+ noop_warn("glNormal3iv");
+}
+
+static void APIENTRY noopNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ noop_warn("glNormal3s");
+}
+
+static void APIENTRY noopNormal3sv(const GLshort *v)
+{
+ noop_warn("glNormal3sv");
+}
+
+static void APIENTRY noopRasterPos2d(GLdouble x, GLdouble y)
+{
+ noop_warn("glRasterPos2d");
+}
+
+static void APIENTRY noopRasterPos2dv(const GLdouble *v)
+{
+ noop_warn("glRasterPos2dv");
+}
+
+static void APIENTRY noopRasterPos2f(GLfloat x, GLfloat y)
+{
+ noop_warn("glRasterPos2f");
+}
+
+static void APIENTRY noopRasterPos2fv(const GLfloat *v)
+{
+ noop_warn("glRasterPos2fv");
+}
+
+static void APIENTRY noopRasterPos2i(GLint x, GLint y)
+{
+ noop_warn("glRasterPos2i");
+}
+
+static void APIENTRY noopRasterPos2iv(const GLint *v)
+{
+ noop_warn("glRasterPos2iv");
+}
+
+static void APIENTRY noopRasterPos2s(GLshort x, GLshort y)
+{
+ noop_warn("glRasterPos2s");
+}
+
+static void APIENTRY noopRasterPos2sv(const GLshort *v)
+{
+ noop_warn("glRasterPos2sv");
+}
+
+static void APIENTRY noopRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glRasterPos3d");
+}
+
+static void APIENTRY noopRasterPos3dv(const GLdouble *v)
+{
+ noop_warn("glRasterPos3dv");
+}
+
+static void APIENTRY noopRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glRasterPos3f");
+}
+
+static void APIENTRY noopRasterPos3fv(const GLfloat *v)
+{
+ noop_warn("glRasterPos3fv");
+}
+
+static void APIENTRY noopRasterPos3i(GLint x, GLint y, GLint z)
+{
+ noop_warn("glRasterPos3i");
+}
+
+static void APIENTRY noopRasterPos3iv(const GLint *v)
+{
+ noop_warn("glRasterPos3iv");
+}
+
+static void APIENTRY noopRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ noop_warn("glRasterPos3s");
+}
+
+static void APIENTRY noopRasterPos3sv(const GLshort *v)
+{
+ noop_warn("glRasterPos3sv");
+}
+
+static void APIENTRY noopRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glRasterPos4d");
+}
+
+static void APIENTRY noopRasterPos4dv(const GLdouble *v)
+{
+ noop_warn("glRasterPos4dv");
+}
+
+static void APIENTRY noopRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glRasterPos4f");
+}
+
+static void APIENTRY noopRasterPos4fv(const GLfloat *v)
+{
+ noop_warn("glRasterPos4fv");
+}
+
+static void APIENTRY noopRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ noop_warn("glRasterPos4i");
+}
+
+static void APIENTRY noopRasterPos4iv(const GLint *v)
+{
+ noop_warn("glRasterPos4iv");
+}
+
+static void APIENTRY noopRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ noop_warn("glRasterPos4s");
+}
+
+static void APIENTRY noopRasterPos4sv(const GLshort *v)
+{
+ noop_warn("glRasterPos4sv");
+}
+
+static void APIENTRY noopRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ noop_warn("glRectd");
+}
+
+static void APIENTRY noopRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ noop_warn("glRectdv");
+}
+
+static void APIENTRY noopRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ noop_warn("glRectf");
+}
+
+static void APIENTRY noopRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ noop_warn("glRectfv");
+}
+
+static void APIENTRY noopRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ noop_warn("glRecti");
+}
+
+static void APIENTRY noopRectiv(const GLint *v1, const GLint *v2)
+{
+ noop_warn("glRectiv");
+}
+
+static void APIENTRY noopRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ noop_warn("glRects");
+}
+
+static void APIENTRY noopRectsv(const GLshort *v1, const GLshort *v2)
+{
+ noop_warn("glRectsv");
+}
+
+static void APIENTRY noopTexCoord1d(GLdouble s)
+{
+ noop_warn("glTexCoord1d");
+}
+
+static void APIENTRY noopTexCoord1dv(const GLdouble *v)
+{
+ noop_warn("glTexCoord1dv");
+}
+
+static void APIENTRY noopTexCoord1f(GLfloat s)
+{
+ noop_warn("glTexCoord1f");
+}
+
+static void APIENTRY noopTexCoord1fv(const GLfloat *v)
+{
+ noop_warn("glTexCoord1fv");
+}
+
+static void APIENTRY noopTexCoord1i(GLint s)
+{
+ noop_warn("glTexCoord1i");
+}
+
+static void APIENTRY noopTexCoord1iv(const GLint *v)
+{
+ noop_warn("glTexCoord1iv");
+}
+
+static void APIENTRY noopTexCoord1s(GLshort s)
+{
+ noop_warn("glTexCoord1s");
+}
+
+static void APIENTRY noopTexCoord1sv(const GLshort *v)
+{
+ noop_warn("glTexCoord1sv");
+}
+
+static void APIENTRY noopTexCoord2d(GLdouble s, GLdouble t)
+{
+ noop_warn("glTexCoord2d");
+}
+
+static void APIENTRY noopTexCoord2dv(const GLdouble *v)
+{
+ noop_warn("glTexCoord2dv");
+}
+
+static void APIENTRY noopTexCoord2f(GLfloat s, GLfloat t)
+{
+ noop_warn("glTexCoord2f");
+}
+
+static void APIENTRY noopTexCoord2fv(const GLfloat *v)
+{
+ noop_warn("glTexCoord2fv");
+}
+
+static void APIENTRY noopTexCoord2i(GLint s, GLint t)
+{
+ noop_warn("glTexCoord2i");
+}
+
+static void APIENTRY noopTexCoord2iv(const GLint *v)
+{
+ noop_warn("glTexCoord2iv");
+}
+
+static void APIENTRY noopTexCoord2s(GLshort s, GLshort t)
+{
+ noop_warn("glTexCoord2s");
+}
+
+static void APIENTRY noopTexCoord2sv(const GLshort *v)
+{
+ noop_warn("glTexCoord2sv");
+}
+
+static void APIENTRY noopTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ noop_warn("glTexCoord3d");
+}
+
+static void APIENTRY noopTexCoord3dv(const GLdouble *v)
+{
+ noop_warn("glTexCoord3dv");
+}
+
+static void APIENTRY noopTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ noop_warn("glTexCoord3f");
+}
+
+static void APIENTRY noopTexCoord3fv(const GLfloat *v)
+{
+ noop_warn("glTexCoord3fv");
+}
+
+static void APIENTRY noopTexCoord3i(GLint s, GLint t, GLint r)
+{
+ noop_warn("glTexCoord3i");
+}
+
+static void APIENTRY noopTexCoord3iv(const GLint *v)
+{
+ noop_warn("glTexCoord3iv");
+}
+
+static void APIENTRY noopTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ noop_warn("glTexCoord3s");
+}
+
+static void APIENTRY noopTexCoord3sv(const GLshort *v)
+{
+ noop_warn("glTexCoord3sv");
+}
+
+static void APIENTRY noopTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ noop_warn("glTexCoord4d");
+}
+
+static void APIENTRY noopTexCoord4dv(const GLdouble *v)
+{
+ noop_warn("glTexCoord4dv");
+}
+
+static void APIENTRY noopTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ noop_warn("glTexCoord4f");
+}
+
+static void APIENTRY noopTexCoord4fv(const GLfloat *v)
+{
+ noop_warn("glTexCoord4fv");
+}
+
+static void APIENTRY noopTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ noop_warn("glTexCoord4i");
+}
+
+static void APIENTRY noopTexCoord4iv(const GLint *v)
+{
+ noop_warn("glTexCoord4iv");
+}
+
+static void APIENTRY noopTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ noop_warn("glTexCoord4s");
+}
+
+static void APIENTRY noopTexCoord4sv(const GLshort *v)
+{
+ noop_warn("glTexCoord4sv");
+}
+
+static void APIENTRY noopVertex2d(GLdouble x, GLdouble y)
+{
+ noop_warn("glVertex2d");
+}
+
+static void APIENTRY noopVertex2dv(const GLdouble *v)
+{
+ noop_warn("glVertex2dv");
+}
+
+static void APIENTRY noopVertex2f(GLfloat x, GLfloat y)
+{
+ noop_warn("glVertex2f");
+}
+
+static void APIENTRY noopVertex2fv(const GLfloat *v)
+{
+ noop_warn("glVertex2fv");
+}
+
+static void APIENTRY noopVertex2i(GLint x, GLint y)
+{
+ noop_warn("glVertex2i");
+}
+
+static void APIENTRY noopVertex2iv(const GLint *v)
+{
+ noop_warn("glVertex2iv");
+}
+
+static void APIENTRY noopVertex2s(GLshort x, GLshort y)
+{
+ noop_warn("glVertex2s");
+}
+
+static void APIENTRY noopVertex2sv(const GLshort *v)
+{
+ noop_warn("glVertex2sv");
+}
+
+static void APIENTRY noopVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glVertex3d");
+}
+
+static void APIENTRY noopVertex3dv(const GLdouble *v)
+{
+ noop_warn("glVertex3dv");
+}
+
+static void APIENTRY noopVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glVertex3f");
+}
+
+static void APIENTRY noopVertex3fv(const GLfloat *v)
+{
+ noop_warn("glVertex3fv");
+}
+
+static void APIENTRY noopVertex3i(GLint x, GLint y, GLint z)
+{
+ noop_warn("glVertex3i");
+}
+
+static void APIENTRY noopVertex3iv(const GLint *v)
+{
+ noop_warn("glVertex3iv");
+}
+
+static void APIENTRY noopVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ noop_warn("glVertex3s");
+}
+
+static void APIENTRY noopVertex3sv(const GLshort *v)
+{
+ noop_warn("glVertex3sv");
+}
+
+static void APIENTRY noopVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glVertex4d");
+}
+
+static void APIENTRY noopVertex4dv(const GLdouble *v)
+{
+ noop_warn("glVertex4dv");
+}
+
+static void APIENTRY noopVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glVertex4f");
+}
+
+static void APIENTRY noopVertex4fv(const GLfloat *v)
+{
+ noop_warn("glVertex4fv");
+}
+
+static void APIENTRY noopVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ noop_warn("glVertex4i");
+}
+
+static void APIENTRY noopVertex4iv(const GLint *v)
+{
+ noop_warn("glVertex4iv");
+}
+
+static void APIENTRY noopVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ noop_warn("glVertex4s");
+}
+
+static void APIENTRY noopVertex4sv(const GLshort *v)
+{
+ noop_warn("glVertex4sv");
+}
+
+static void APIENTRY noopClipPlane(GLenum plane, const GLdouble *equation)
+{
+ noop_warn("glClipPlane");
+}
+
+static void APIENTRY noopColorMaterial(GLenum face, GLenum mode)
+{
+ noop_warn("glColorMaterial");
+}
+
+static void APIENTRY noopCullFace(GLenum mode)
+{
+ noop_warn("glCullFace");
+}
+
+static void APIENTRY noopFogf(GLenum pname, GLfloat param)
+{
+ noop_warn("glFogf");
+}
+
+static void APIENTRY noopFogfv(GLenum pname, const GLfloat *params)
+{
+ noop_warn("glFogfv");
+}
+
+static void APIENTRY noopFogi(GLenum pname, GLint param)
+{
+ noop_warn("glFogi");
+}
+
+static void APIENTRY noopFogiv(GLenum pname, const GLint *params)
+{
+ noop_warn("glFogiv");
+}
+
+static void APIENTRY noopFrontFace(GLenum mode)
+{
+ noop_warn("glFrontFace");
+}
+
+static void APIENTRY noopHint(GLenum target, GLenum mode)
+{
+ noop_warn("glHint");
+}
+
+static void APIENTRY noopLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ noop_warn("glLightf");
+}
+
+static void APIENTRY noopLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glLightfv");
+}
+
+static void APIENTRY noopLighti(GLenum light, GLenum pname, GLint param)
+{
+ noop_warn("glLighti");
+}
+
+static void APIENTRY noopLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ noop_warn("glLightiv");
+}
+
+static void APIENTRY noopLightModelf(GLenum pname, GLfloat param)
+{
+ noop_warn("glLightModelf");
+}
+
+static void APIENTRY noopLightModelfv(GLenum pname, const GLfloat *params)
+{
+ noop_warn("glLightModelfv");
+}
+
+static void APIENTRY noopLightModeli(GLenum pname, GLint param)
+{
+ noop_warn("glLightModeli");
+}
+
+static void APIENTRY noopLightModeliv(GLenum pname, const GLint *params)
+{
+ noop_warn("glLightModeliv");
+}
+
+static void APIENTRY noopLineStipple(GLint factor, GLushort pattern)
+{
+ noop_warn("glLineStipple");
+}
+
+static void APIENTRY noopLineWidth(GLfloat width)
+{
+ noop_warn("glLineWidth");
+}
+
+static void APIENTRY noopMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ noop_warn("glMaterialf");
+}
+
+static void APIENTRY noopMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glMaterialfv");
+}
+
+static void APIENTRY noopMateriali(GLenum face, GLenum pname, GLint param)
+{
+ noop_warn("glMateriali");
+}
+
+static void APIENTRY noopMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ noop_warn("glMaterialiv");
+}
+
+static void APIENTRY noopPointSize(GLfloat size)
+{
+ noop_warn("glPointSize");
+}
+
+static void APIENTRY noopPolygonMode(GLenum face, GLenum mode)
+{
+ noop_warn("glPolygonMode");
+}
+
+static void APIENTRY noopPolygonStipple(const GLubyte *mask)
+{
+ noop_warn("glPolygonStipple");
+}
+
+static void APIENTRY noopScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ noop_warn("glScissor");
+}
+
+static void APIENTRY noopShadeModel(GLenum mode)
+{
+ noop_warn("glShadeModel");
+}
+
+static void APIENTRY noopTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ noop_warn("glTexParameterf");
+}
+
+static void APIENTRY noopTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glTexParameterfv");
+}
+
+static void APIENTRY noopTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ noop_warn("glTexParameteri");
+}
+
+static void APIENTRY noopTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ noop_warn("glTexParameteriv");
+}
+
+static void APIENTRY noopTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexImage1D");
+}
+
+static void APIENTRY noopTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexImage2D");
+}
+
+static void APIENTRY noopTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ noop_warn("glTexEnvf");
+}
+
+static void APIENTRY noopTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glTexEnvfv");
+}
+
+static void APIENTRY noopTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ noop_warn("glTexEnvi");
+}
+
+static void APIENTRY noopTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ noop_warn("glTexEnviv");
+}
+
+static void APIENTRY noopTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ noop_warn("glTexGend");
+}
+
+static void APIENTRY noopTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ noop_warn("glTexGendv");
+}
+
+static void APIENTRY noopTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ noop_warn("glTexGenf");
+}
+
+static void APIENTRY noopTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glTexGenfv");
+}
+
+static void APIENTRY noopTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ noop_warn("glTexGeni");
+}
+
+static void APIENTRY noopTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ noop_warn("glTexGeniv");
+}
+
+static void APIENTRY noopFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ noop_warn("glFeedbackBuffer");
+}
+
+static void APIENTRY noopSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ noop_warn("glSelectBuffer");
+}
+
+static GLint APIENTRY noopRenderMode(GLenum mode)
+{
+ noop_warn("glRenderMode");
+ return (GLint) 0;
+}
+
+static void APIENTRY noopInitNames(void)
+{
+ noop_warn("glInitNames");
+}
+
+static void APIENTRY noopLoadName(GLuint name)
+{
+ noop_warn("glLoadName");
+}
+
+static void APIENTRY noopPassThrough(GLfloat token)
+{
+ noop_warn("glPassThrough");
+}
+
+static void APIENTRY noopPopName(void)
+{
+ noop_warn("glPopName");
+}
+
+static void APIENTRY noopPushName(GLuint name)
+{
+ noop_warn("glPushName");
+}
+
+static void APIENTRY noopDrawBuffer(GLenum mode)
+{
+ noop_warn("glDrawBuffer");
+}
+
+static void APIENTRY noopClear(GLbitfield mask)
+{
+ noop_warn("glClear");
+}
+
+static void APIENTRY noopClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ noop_warn("glClearAccum");
+}
+
+static void APIENTRY noopClearIndex(GLfloat c)
+{
+ noop_warn("glClearIndex");
+}
+
+static void APIENTRY noopClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ noop_warn("glClearColor");
+}
+
+static void APIENTRY noopClearStencil(GLint s)
+{
+ noop_warn("glClearStencil");
+}
+
+static void APIENTRY noopClearDepth(GLclampd depth)
+{
+ noop_warn("glClearDepth");
+}
+
+static void APIENTRY noopStencilMask(GLuint mask)
+{
+ noop_warn("glStencilMask");
+}
+
+static void APIENTRY noopColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ noop_warn("glColorMask");
+}
+
+static void APIENTRY noopDepthMask(GLboolean flag)
+{
+ noop_warn("glDepthMask");
+}
+
+static void APIENTRY noopIndexMask(GLuint mask)
+{
+ noop_warn("glIndexMask");
+}
+
+static void APIENTRY noopAccum(GLenum op, GLfloat value)
+{
+ noop_warn("glAccum");
+}
+
+static void APIENTRY noopDisable(GLenum cap)
+{
+ noop_warn("glDisable");
+}
+
+static void APIENTRY noopEnable(GLenum cap)
+{
+ noop_warn("glEnable");
+}
+
+static void APIENTRY noopFinish(void)
+{
+ noop_warn("glFinish");
+}
+
+static void APIENTRY noopFlush(void)
+{
+ noop_warn("glFlush");
+}
+
+static void APIENTRY noopPopAttrib(void)
+{
+ noop_warn("glPopAttrib");
+}
+
+static void APIENTRY noopPushAttrib(GLbitfield mask)
+{
+ noop_warn("glPushAttrib");
+}
+
+static void APIENTRY noopMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ noop_warn("glMap1d");
+}
+
+static void APIENTRY noopMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ noop_warn("glMap1f");
+}
+
+static void APIENTRY noopMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ noop_warn("glMap2d");
+}
+
+static void APIENTRY noopMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ noop_warn("glMap2f");
+}
+
+static void APIENTRY noopMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ noop_warn("glMapGrid1d");
+}
+
+static void APIENTRY noopMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ noop_warn("glMapGrid1f");
+}
+
+static void APIENTRY noopMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ noop_warn("glMapGrid2d");
+}
+
+static void APIENTRY noopMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ noop_warn("glMapGrid2f");
+}
+
+static void APIENTRY noopEvalCoord1d(GLdouble u)
+{
+ noop_warn("glEvalCoord1d");
+}
+
+static void APIENTRY noopEvalCoord1dv(const GLdouble *u)
+{
+ noop_warn("glEvalCoord1dv");
+}
+
+static void APIENTRY noopEvalCoord1f(GLfloat u)
+{
+ noop_warn("glEvalCoord1f");
+}
+
+static void APIENTRY noopEvalCoord1fv(const GLfloat *u)
+{
+ noop_warn("glEvalCoord1fv");
+}
+
+static void APIENTRY noopEvalCoord2d(GLdouble u, GLdouble v)
+{
+ noop_warn("glEvalCoord2d");
+}
+
+static void APIENTRY noopEvalCoord2dv(const GLdouble *u)
+{
+ noop_warn("glEvalCoord2dv");
+}
+
+static void APIENTRY noopEvalCoord2f(GLfloat u, GLfloat v)
+{
+ noop_warn("glEvalCoord2f");
+}
+
+static void APIENTRY noopEvalCoord2fv(const GLfloat *u)
+{
+ noop_warn("glEvalCoord2fv");
+}
+
+static void APIENTRY noopEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ noop_warn("glEvalMesh1");
+}
+
+static void APIENTRY noopEvalPoint1(GLint i)
+{
+ noop_warn("glEvalPoint1");
+}
+
+static void APIENTRY noopEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ noop_warn("glEvalMesh2");
+}
+
+static void APIENTRY noopEvalPoint2(GLint i, GLint j)
+{
+ noop_warn("glEvalPoint2");
+}
+
+static void APIENTRY noopAlphaFunc(GLenum func, GLclampf ref)
+{
+ noop_warn("glAlphaFunc");
+}
+
+static void APIENTRY noopBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ noop_warn("glBlendFunc");
+}
+
+static void APIENTRY noopLogicOp(GLenum opcode)
+{
+ noop_warn("glLogicOp");
+}
+
+static void APIENTRY noopStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ noop_warn("glStencilFunc");
+}
+
+static void APIENTRY noopStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ noop_warn("glStencilOp");
+}
+
+static void APIENTRY noopDepthFunc(GLenum func)
+{
+ noop_warn("glDepthFunc");
+}
+
+static void APIENTRY noopPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ noop_warn("glPixelZoom");
+}
+
+static void APIENTRY noopPixelTransferf(GLenum pname, GLfloat param)
+{
+ noop_warn("glPixelTransferf");
+}
+
+static void APIENTRY noopPixelTransferi(GLenum pname, GLint param)
+{
+ noop_warn("glPixelTransferi");
+}
+
+static void APIENTRY noopPixelStoref(GLenum pname, GLfloat param)
+{
+ noop_warn("glPixelStoref");
+}
+
+static void APIENTRY noopPixelStorei(GLenum pname, GLint param)
+{
+ noop_warn("glPixelStorei");
+}
+
+static void APIENTRY noopPixelMapfv(GLenum map, GLsizei mapsize, const GLfloat *values)
+{
+ noop_warn("glPixelMapfv");
+}
+
+static void APIENTRY noopPixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values)
+{
+ noop_warn("glPixelMapuiv");
+}
+
+static void APIENTRY noopPixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values)
+{
+ noop_warn("glPixelMapusv");
+}
+
+static void APIENTRY noopReadBuffer(GLenum mode)
+{
+ noop_warn("glReadBuffer");
+}
+
+static void APIENTRY noopCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ noop_warn("glCopyPixels");
+}
+
+static void APIENTRY noopReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ noop_warn("glReadPixels");
+}
+
+static void APIENTRY noopDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glDrawPixels");
+}
+
+static void APIENTRY noopGetBooleanv(GLenum pname, GLboolean *params)
+{
+ noop_warn("glGetBooleanv");
+}
+
+static void APIENTRY noopGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ noop_warn("glGetClipPlane");
+}
+
+static void APIENTRY noopGetDoublev(GLenum pname, GLdouble *params)
+{
+ noop_warn("glGetDoublev");
+}
+
+static GLenum APIENTRY noopGetError(void)
+{
+ noop_warn("glGetError");
+ return (GLenum) 0;
+}
+
+static void APIENTRY noopGetFloatv(GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetFloatv");
+}
+
+static void APIENTRY noopGetIntegerv(GLenum pname, GLint *params)
+{
+ noop_warn("glGetIntegerv");
+}
+
+static void APIENTRY noopGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetLightfv");
+}
+
+static void APIENTRY noopGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ noop_warn("glGetLightiv");
+}
+
+static void APIENTRY noopGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ noop_warn("glGetMapdv");
+}
+
+static void APIENTRY noopGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ noop_warn("glGetMapfv");
+}
+
+static void APIENTRY noopGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ noop_warn("glGetMapiv");
+}
+
+static void APIENTRY noopGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetMaterialfv");
+}
+
+static void APIENTRY noopGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ noop_warn("glGetMaterialiv");
+}
+
+static void APIENTRY noopGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ noop_warn("glGetPixelMapfv");
+}
+
+static void APIENTRY noopGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ noop_warn("glGetPixelMapuiv");
+}
+
+static void APIENTRY noopGetPixelMapusv(GLenum map, GLushort *values)
+{
+ noop_warn("glGetPixelMapusv");
+}
+
+static void APIENTRY noopGetPolygonStipple(GLubyte *mask)
+{
+ noop_warn("glGetPolygonStipple");
+}
+
+static const GLubyte * APIENTRY noopGetString(GLenum name)
+{
+ noop_warn("glGetString");
+ return (const GLubyte *) 0;
+}
+
+static void APIENTRY noopGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetTexEnvfv");
+}
+
+static void APIENTRY noopGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTexEnviv");
+}
+
+static void APIENTRY noopGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ noop_warn("glGetTexGendv");
+}
+
+static void APIENTRY noopGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetTexGenfv");
+}
+
+static void APIENTRY noopGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTexGeniv");
+}
+
+static void APIENTRY noopGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ noop_warn("glGetTexImage");
+}
+
+static void APIENTRY noopGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetTexParameterfv");
+}
+
+static void APIENTRY noopGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTexParameteriv");
+}
+
+static void APIENTRY noopGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetTexLevelParameterfv");
+}
+
+static void APIENTRY noopGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTexLevelParameteriv");
+}
+
+static GLboolean APIENTRY noopIsEnabled(GLenum cap)
+{
+ noop_warn("glIsEnabled");
+ return (GLboolean) 0;
+}
+
+static GLboolean APIENTRY noopIsList(GLuint list)
+{
+ noop_warn("glIsList");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopDepthRange(GLclampd zNear, GLclampd zFar)
+{
+ noop_warn("glDepthRange");
+}
+
+static void APIENTRY noopFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ noop_warn("glFrustum");
+}
+
+static void APIENTRY noopLoadIdentity(void)
+{
+ noop_warn("glLoadIdentity");
+}
+
+static void APIENTRY noopLoadMatrixf(const GLfloat *m)
+{
+ noop_warn("glLoadMatrixf");
+}
+
+static void APIENTRY noopLoadMatrixd(const GLdouble *m)
+{
+ noop_warn("glLoadMatrixd");
+}
+
+static void APIENTRY noopMatrixMode(GLenum mode)
+{
+ noop_warn("glMatrixMode");
+}
+
+static void APIENTRY noopMultMatrixf(const GLfloat *m)
+{
+ noop_warn("glMultMatrixf");
+}
+
+static void APIENTRY noopMultMatrixd(const GLdouble *m)
+{
+ noop_warn("glMultMatrixd");
+}
+
+static void APIENTRY noopOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ noop_warn("glOrtho");
+}
+
+static void APIENTRY noopPopMatrix(void)
+{
+ noop_warn("glPopMatrix");
+}
+
+static void APIENTRY noopPushMatrix(void)
+{
+ noop_warn("glPushMatrix");
+}
+
+static void APIENTRY noopRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glRotated");
+}
+
+static void APIENTRY noopRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glRotatef");
+}
+
+static void APIENTRY noopScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glScaled");
+}
+
+static void APIENTRY noopScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glScalef");
+}
+
+static void APIENTRY noopTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glTranslated");
+}
+
+static void APIENTRY noopTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glTranslatef");
+}
+
+static void APIENTRY noopViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ noop_warn("glViewport");
+}
+
+static void APIENTRY noopArrayElement(GLint i)
+{
+ noop_warn("glArrayElement");
+}
+
+static void APIENTRY noopBindTexture(GLenum target, GLuint texture)
+{
+ noop_warn("glBindTexture");
+}
+
+static void APIENTRY noopColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glColorPointer");
+}
+
+static void APIENTRY noopDisableClientState(GLenum array)
+{
+ noop_warn("glDisableClientState");
+}
+
+static void APIENTRY noopDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ noop_warn("glDrawArrays");
+}
+
+static void APIENTRY noopDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ noop_warn("glDrawElements");
+}
+
+static void APIENTRY noopEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glEdgeFlagPointer");
+}
+
+static void APIENTRY noopEnableClientState(GLenum array)
+{
+ noop_warn("glEnableClientState");
+}
+
+static void APIENTRY noopIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glIndexPointer");
+}
+
+static void APIENTRY noopIndexub(GLubyte c)
+{
+ noop_warn("glIndexub");
+}
+
+static void APIENTRY noopIndexubv(const GLubyte *c)
+{
+ noop_warn("glIndexubv");
+}
+
+static void APIENTRY noopInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glInterleavedArrays");
+}
+
+static void APIENTRY noopNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glNormalPointer");
+}
+
+static void APIENTRY noopPolygonOffset(GLfloat factor, GLfloat units)
+{
+ noop_warn("glPolygonOffset");
+}
+
+static void APIENTRY noopTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glTexCoordPointer");
+}
+
+static void APIENTRY noopVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glVertexPointer");
+}
+
+static GLboolean APIENTRY noopAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ noop_warn("glAreTexturesResident");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ noop_warn("glCopyTexImage1D");
+}
+
+static void APIENTRY noopCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ noop_warn("glCopyTexImage2D");
+}
+
+static void APIENTRY noopCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ noop_warn("glCopyTexSubImage1D");
+}
+
+static void APIENTRY noopCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ noop_warn("glCopyTexSubImage2D");
+}
+
+static void APIENTRY noopDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ noop_warn("glDeleteTextures");
+}
+
+static void APIENTRY noopGenTextures(GLsizei n, GLuint *textures)
+{
+ noop_warn("glGenTextures");
+}
+
+static void APIENTRY noopGetPointerv(GLenum pname, GLvoid **params)
+{
+ noop_warn("glGetPointerv");
+}
+
+static GLboolean APIENTRY noopIsTexture(GLuint texture)
+{
+ noop_warn("glIsTexture");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopPrioritizeTextures(GLsizei n, const GLuint *textures, const GLclampf *priorities)
+{
+ noop_warn("glPrioritizeTextures");
+}
+
+static void APIENTRY noopTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexSubImage1D");
+}
+
+static void APIENTRY noopTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexSubImage2D");
+}
+
+static void APIENTRY noopPopClientAttrib(void)
+{
+ noop_warn("glPopClientAttrib");
+}
+
+static void APIENTRY noopPushClientAttrib(GLbitfield mask)
+{
+ noop_warn("glPushClientAttrib");
+}
+
+static void APIENTRY noopBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ noop_warn("glBlendColor");
+}
+
+static void APIENTRY noopBlendEquation(GLenum mode)
+{
+ noop_warn("glBlendEquation");
+}
+
+static void APIENTRY noopDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ noop_warn("glDrawRangeElements");
+}
+
+static void APIENTRY noopColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ noop_warn("glColorTable");
+}
+
+static void APIENTRY noopColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glColorTableParameterfv");
+}
+
+static void APIENTRY noopColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ noop_warn("glColorTableParameteriv");
+}
+
+static void APIENTRY noopCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ noop_warn("glCopyColorTable");
+}
+
+static void APIENTRY noopGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ noop_warn("glGetColorTable");
+}
+
+static void APIENTRY noopGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetColorTableParameterfv");
+}
+
+static void APIENTRY noopGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetColorTableParameteriv");
+}
+
+static void APIENTRY noopColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ noop_warn("glColorSubTable");
+}
+
+static void APIENTRY noopCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ noop_warn("glCopyColorSubTable");
+}
+
+static void APIENTRY noopConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ noop_warn("glConvolutionFilter1D");
+}
+
+static void APIENTRY noopConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ noop_warn("glConvolutionFilter2D");
+}
+
+static void APIENTRY noopConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ noop_warn("glConvolutionParameterf");
+}
+
+static void APIENTRY noopConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ noop_warn("glConvolutionParameterfv");
+}
+
+static void APIENTRY noopConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ noop_warn("glConvolutionParameteri");
+}
+
+static void APIENTRY noopConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ noop_warn("glConvolutionParameteriv");
+}
+
+static void APIENTRY noopCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ noop_warn("glCopyConvolutionFilter1D");
+}
+
+static void APIENTRY noopCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ noop_warn("glCopyConvolutionFilter2D");
+}
+
+static void APIENTRY noopGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ noop_warn("glGetConvolutionFilter");
+}
+
+static void APIENTRY noopGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetConvolutionParameterfv");
+}
+
+static void APIENTRY noopGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetConvolutionParameteriv");
+}
+
+static void APIENTRY noopGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ noop_warn("glGetSeparableFilter");
+}
+
+static void APIENTRY noopSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ noop_warn("glSeparableFilter2D");
+}
+
+static void APIENTRY noopGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ noop_warn("glGetHistogram");
+}
+
+static void APIENTRY noopGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetHistogramParameterfv");
+}
+
+static void APIENTRY noopGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetHistogramParameteriv");
+}
+
+static void APIENTRY noopGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ noop_warn("glGetMinmax");
+}
+
+static void APIENTRY noopGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetMinmaxParameterfv");
+}
+
+static void APIENTRY noopGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetMinmaxParameteriv");
+}
+
+static void APIENTRY noopHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ noop_warn("glHistogram");
+}
+
+static void APIENTRY noopMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ noop_warn("glMinmax");
+}
+
+static void APIENTRY noopResetHistogram(GLenum target)
+{
+ noop_warn("glResetHistogram");
+}
+
+static void APIENTRY noopResetMinmax(GLenum target)
+{
+ noop_warn("glResetMinmax");
+}
+
+static void APIENTRY noopTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexImage3D");
+}
+
+static void APIENTRY noopTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ noop_warn("glTexSubImage3D");
+}
+
+static void APIENTRY noopCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ noop_warn("glCopyTexSubImage3D");
+}
+
+static void APIENTRY noopActiveTextureARB(GLenum texture)
+{
+ noop_warn("glActiveTextureARB");
+}
+
+static void APIENTRY noopClientActiveTextureARB(GLenum texture)
+{
+ noop_warn("glClientActiveTextureARB");
+}
+
+static void APIENTRY noopMultiTexCoord1dARB(GLenum target, GLdouble s)
+{
+ noop_warn("glMultiTexCoord1dARB");
+}
+
+static void APIENTRY noopMultiTexCoord1dvARB(GLenum target, const GLdouble *v)
+{
+ noop_warn("glMultiTexCoord1dvARB");
+}
+
+static void APIENTRY noopMultiTexCoord1fARB(GLenum target, GLfloat s)
+{
+ noop_warn("glMultiTexCoord1fARB");
+}
+
+static void APIENTRY noopMultiTexCoord1fvARB(GLenum target, const GLfloat *v)
+{
+ noop_warn("glMultiTexCoord1fvARB");
+}
+
+static void APIENTRY noopMultiTexCoord1iARB(GLenum target, GLint s)
+{
+ noop_warn("glMultiTexCoord1iARB");
+}
+
+static void APIENTRY noopMultiTexCoord1ivARB(GLenum target, const GLint *v)
+{
+ noop_warn("glMultiTexCoord1ivARB");
+}
+
+static void APIENTRY noopMultiTexCoord1sARB(GLenum target, GLshort s)
+{
+ noop_warn("glMultiTexCoord1sARB");
+}
+
+static void APIENTRY noopMultiTexCoord1svARB(GLenum target, const GLshort *v)
+{
+ noop_warn("glMultiTexCoord1svARB");
+}
+
+static void APIENTRY noopMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t)
+{
+ noop_warn("glMultiTexCoord2dARB");
+}
+
+static void APIENTRY noopMultiTexCoord2dvARB(GLenum target, const GLdouble *v)
+{
+ noop_warn("glMultiTexCoord2dvARB");
+}
+
+static void APIENTRY noopMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t)
+{
+ noop_warn("glMultiTexCoord2fARB");
+}
+
+static void APIENTRY noopMultiTexCoord2fvARB(GLenum target, const GLfloat *v)
+{
+ noop_warn("glMultiTexCoord2fvARB");
+}
+
+static void APIENTRY noopMultiTexCoord2iARB(GLenum target, GLint s, GLint t)
+{
+ noop_warn("glMultiTexCoord2iARB");
+}
+
+static void APIENTRY noopMultiTexCoord2ivARB(GLenum target, const GLint *v)
+{
+ noop_warn("glMultiTexCoord2ivARB");
+}
+
+static void APIENTRY noopMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t)
+{
+ noop_warn("glMultiTexCoord2sARB");
+}
+
+static void APIENTRY noopMultiTexCoord2svARB(GLenum target, const GLshort *v)
+{
+ noop_warn("glMultiTexCoord2svARB");
+}
+
+static void APIENTRY noopMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ noop_warn("glMultiTexCoord3dARB");
+}
+
+static void APIENTRY noopMultiTexCoord3dvARB(GLenum target, const GLdouble *v)
+{
+ noop_warn("glMultiTexCoord3dvARB");
+}
+
+static void APIENTRY noopMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ noop_warn("glMultiTexCoord3fARB");
+}
+
+static void APIENTRY noopMultiTexCoord3fvARB(GLenum target, const GLfloat *v)
+{
+ noop_warn("glMultiTexCoord3fvARB");
+}
+
+static void APIENTRY noopMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r)
+{
+ noop_warn("glMultiTexCoord3iARB");
+}
+
+static void APIENTRY noopMultiTexCoord3ivARB(GLenum target, const GLint *v)
+{
+ noop_warn("glMultiTexCoord3ivARB");
+}
+
+static void APIENTRY noopMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ noop_warn("glMultiTexCoord3sARB");
+}
+
+static void APIENTRY noopMultiTexCoord3svARB(GLenum target, const GLshort *v)
+{
+ noop_warn("glMultiTexCoord3svARB");
+}
+
+static void APIENTRY noopMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ noop_warn("glMultiTexCoord4dARB");
+}
+
+static void APIENTRY noopMultiTexCoord4dvARB(GLenum target, const GLdouble *v)
+{
+ noop_warn("glMultiTexCoord4dvARB");
+}
+
+static void APIENTRY noopMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ noop_warn("glMultiTexCoord4fARB");
+}
+
+static void APIENTRY noopMultiTexCoord4fvARB(GLenum target, const GLfloat *v)
+{
+ noop_warn("glMultiTexCoord4fvARB");
+}
+
+static void APIENTRY noopMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ noop_warn("glMultiTexCoord4iARB");
+}
+
+static void APIENTRY noopMultiTexCoord4ivARB(GLenum target, const GLint *v)
+{
+ noop_warn("glMultiTexCoord4ivARB");
+}
+
+static void APIENTRY noopMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ noop_warn("glMultiTexCoord4sARB");
+}
+
+static void APIENTRY noopMultiTexCoord4svARB(GLenum target, const GLshort *v)
+{
+ noop_warn("glMultiTexCoord4svARB");
+}
+
+static void APIENTRY noopAttachShader(GLuint program, GLuint shader)
+{
+ noop_warn("glAttachShader");
+}
+
+static GLuint APIENTRY noopCreateProgram(void)
+{
+ noop_warn("glCreateProgram");
+ return (GLuint) 0;
+}
+
+static GLuint APIENTRY noopCreateShader(GLenum type)
+{
+ noop_warn("glCreateShader");
+ return (GLuint) 0;
+}
+
+static void APIENTRY noopDeleteProgram(GLuint program)
+{
+ noop_warn("glDeleteProgram");
+}
+
+static void APIENTRY noopDeleteShader(GLuint program)
+{
+ noop_warn("glDeleteShader");
+}
+
+static void APIENTRY noopDetachShader(GLuint program, GLuint shader)
+{
+ noop_warn("glDetachShader");
+}
+
+static void APIENTRY noopGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ noop_warn("glGetAttachedShaders");
+}
+
+static void APIENTRY noopGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ noop_warn("glGetProgramInfoLog");
+}
+
+static void APIENTRY noopGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ noop_warn("glGetProgramiv");
+}
+
+static void APIENTRY noopGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ noop_warn("glGetShaderInfoLog");
+}
+
+static void APIENTRY noopGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ noop_warn("glGetShaderiv");
+}
+
+static GLboolean APIENTRY noopIsProgram(GLuint program)
+{
+ noop_warn("glIsProgram");
+ return (GLboolean) 0;
+}
+
+static GLboolean APIENTRY noopIsShader(GLuint shader)
+{
+ noop_warn("glIsShader");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ noop_warn("glStencilFuncSeparate");
+}
+
+static void APIENTRY noopStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ noop_warn("glStencilMaskSeparate");
+}
+
+static void APIENTRY noopStencilOpSeparate(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+ noop_warn("glStencilOpSeparate");
+}
+
+static void APIENTRY noopUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix2x3fv");
+}
+
+static void APIENTRY noopUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix2x4fv");
+}
+
+static void APIENTRY noopUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix3x2fv");
+}
+
+static void APIENTRY noopUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix3x4fv");
+}
+
+static void APIENTRY noopUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix4x2fv");
+}
+
+static void APIENTRY noopUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix4x3fv");
+}
+
+static void APIENTRY noopClampColor(GLenum target, GLenum clamp)
+{
+ noop_warn("glClampColor");
+}
+
+static void APIENTRY noopClearBufferfi(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil)
+{
+ noop_warn("glClearBufferfi");
+}
+
+static void APIENTRY noopClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ noop_warn("glClearBufferfv");
+}
+
+static void APIENTRY noopClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ noop_warn("glClearBufferiv");
+}
+
+static void APIENTRY noopClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ noop_warn("glClearBufferuiv");
+}
+
+static const GLubyte * APIENTRY noopGetStringi(GLenum name, GLuint index)
+{
+ noop_warn("glGetStringi");
+ return (const GLubyte *) 0;
+}
+
+static void APIENTRY noopTexBuffer(GLenum target, GLenum internalFormat, GLuint buffer)
+{
+ noop_warn("glTexBuffer");
+}
+
+static void APIENTRY noopFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ noop_warn("glFramebufferTexture");
+}
+
+static void APIENTRY noopGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ noop_warn("glGetBufferParameteri64v");
+}
+
+static void APIENTRY noopGetInteger64i_v(GLenum cap, GLuint index, GLint64 *data)
+{
+ noop_warn("glGetInteger64i_v");
+}
+
+static void APIENTRY noopVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ noop_warn("glVertexAttribDivisor");
+}
+
+static void APIENTRY noopLoadTransposeMatrixdARB(const GLdouble *m)
+{
+ noop_warn("glLoadTransposeMatrixdARB");
+}
+
+static void APIENTRY noopLoadTransposeMatrixfARB(const GLfloat *m)
+{
+ noop_warn("glLoadTransposeMatrixfARB");
+}
+
+static void APIENTRY noopMultTransposeMatrixdARB(const GLdouble *m)
+{
+ noop_warn("glMultTransposeMatrixdARB");
+}
+
+static void APIENTRY noopMultTransposeMatrixfARB(const GLfloat *m)
+{
+ noop_warn("glMultTransposeMatrixfARB");
+}
+
+static void APIENTRY noopSampleCoverageARB(GLclampf value, GLboolean invert)
+{
+ noop_warn("glSampleCoverageARB");
+}
+
+static void APIENTRY noopCompressedTexImage1DARB(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexImage1DARB");
+}
+
+static void APIENTRY noopCompressedTexImage2DARB(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexImage2DARB");
+}
+
+static void APIENTRY noopCompressedTexImage3DARB(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexImage3DARB");
+}
+
+static void APIENTRY noopCompressedTexSubImage1DARB(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexSubImage1DARB");
+}
+
+static void APIENTRY noopCompressedTexSubImage2DARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexSubImage2DARB");
+}
+
+static void APIENTRY noopCompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ noop_warn("glCompressedTexSubImage3DARB");
+}
+
+static void APIENTRY noopGetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img)
+{
+ noop_warn("glGetCompressedTexImageARB");
+}
+
+static void APIENTRY noopDisableVertexAttribArrayARB(GLuint index)
+{
+ noop_warn("glDisableVertexAttribArrayARB");
+}
+
+static void APIENTRY noopEnableVertexAttribArrayARB(GLuint index)
+{
+ noop_warn("glEnableVertexAttribArrayARB");
+}
+
+static void APIENTRY noopGetProgramEnvParameterdvARB(GLenum target, GLuint index, GLdouble *params)
+{
+ noop_warn("glGetProgramEnvParameterdvARB");
+}
+
+static void APIENTRY noopGetProgramEnvParameterfvARB(GLenum target, GLuint index, GLfloat *params)
+{
+ noop_warn("glGetProgramEnvParameterfvARB");
+}
+
+static void APIENTRY noopGetProgramLocalParameterdvARB(GLenum target, GLuint index, GLdouble *params)
+{
+ noop_warn("glGetProgramLocalParameterdvARB");
+}
+
+static void APIENTRY noopGetProgramLocalParameterfvARB(GLenum target, GLuint index, GLfloat *params)
+{
+ noop_warn("glGetProgramLocalParameterfvARB");
+}
+
+static void APIENTRY noopGetProgramStringARB(GLenum target, GLenum pname, GLvoid *string)
+{
+ noop_warn("glGetProgramStringARB");
+}
+
+static void APIENTRY noopGetProgramivARB(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetProgramivARB");
+}
+
+static void APIENTRY noopGetVertexAttribdvARB(GLuint index, GLenum pname, GLdouble *params)
+{
+ noop_warn("glGetVertexAttribdvARB");
+}
+
+static void APIENTRY noopGetVertexAttribfvARB(GLuint index, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetVertexAttribfvARB");
+}
+
+static void APIENTRY noopGetVertexAttribivARB(GLuint index, GLenum pname, GLint *params)
+{
+ noop_warn("glGetVertexAttribivARB");
+}
+
+static void APIENTRY noopProgramEnvParameter4dARB(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glProgramEnvParameter4dARB");
+}
+
+static void APIENTRY noopProgramEnvParameter4dvARB(GLenum target, GLuint index, const GLdouble *params)
+{
+ noop_warn("glProgramEnvParameter4dvARB");
+}
+
+static void APIENTRY noopProgramEnvParameter4fARB(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glProgramEnvParameter4fARB");
+}
+
+static void APIENTRY noopProgramEnvParameter4fvARB(GLenum target, GLuint index, const GLfloat *params)
+{
+ noop_warn("glProgramEnvParameter4fvARB");
+}
+
+static void APIENTRY noopProgramLocalParameter4dARB(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glProgramLocalParameter4dARB");
+}
+
+static void APIENTRY noopProgramLocalParameter4dvARB(GLenum target, GLuint index, const GLdouble *params)
+{
+ noop_warn("glProgramLocalParameter4dvARB");
+}
+
+static void APIENTRY noopProgramLocalParameter4fARB(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glProgramLocalParameter4fARB");
+}
+
+static void APIENTRY noopProgramLocalParameter4fvARB(GLenum target, GLuint index, const GLfloat *params)
+{
+ noop_warn("glProgramLocalParameter4fvARB");
+}
+
+static void APIENTRY noopProgramStringARB(GLenum target, GLenum format, GLsizei len, const GLvoid *string)
+{
+ noop_warn("glProgramStringARB");
+}
+
+static void APIENTRY noopVertexAttrib1dARB(GLuint index, GLdouble x)
+{
+ noop_warn("glVertexAttrib1dARB");
+}
+
+static void APIENTRY noopVertexAttrib1dvARB(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib1dvARB");
+}
+
+static void APIENTRY noopVertexAttrib1fARB(GLuint index, GLfloat x)
+{
+ noop_warn("glVertexAttrib1fARB");
+}
+
+static void APIENTRY noopVertexAttrib1fvARB(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib1fvARB");
+}
+
+static void APIENTRY noopVertexAttrib1sARB(GLuint index, GLshort x)
+{
+ noop_warn("glVertexAttrib1sARB");
+}
+
+static void APIENTRY noopVertexAttrib1svARB(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib1svARB");
+}
+
+static void APIENTRY noopVertexAttrib2dARB(GLuint index, GLdouble x, GLdouble y)
+{
+ noop_warn("glVertexAttrib2dARB");
+}
+
+static void APIENTRY noopVertexAttrib2dvARB(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib2dvARB");
+}
+
+static void APIENTRY noopVertexAttrib2fARB(GLuint index, GLfloat x, GLfloat y)
+{
+ noop_warn("glVertexAttrib2fARB");
+}
+
+static void APIENTRY noopVertexAttrib2fvARB(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib2fvARB");
+}
+
+static void APIENTRY noopVertexAttrib2sARB(GLuint index, GLshort x, GLshort y)
+{
+ noop_warn("glVertexAttrib2sARB");
+}
+
+static void APIENTRY noopVertexAttrib2svARB(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib2svARB");
+}
+
+static void APIENTRY noopVertexAttrib3dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glVertexAttrib3dARB");
+}
+
+static void APIENTRY noopVertexAttrib3dvARB(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib3dvARB");
+}
+
+static void APIENTRY noopVertexAttrib3fARB(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glVertexAttrib3fARB");
+}
+
+static void APIENTRY noopVertexAttrib3fvARB(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib3fvARB");
+}
+
+static void APIENTRY noopVertexAttrib3sARB(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ noop_warn("glVertexAttrib3sARB");
+}
+
+static void APIENTRY noopVertexAttrib3svARB(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib3svARB");
+}
+
+static void APIENTRY noopVertexAttrib4NbvARB(GLuint index, const GLbyte *v)
+{
+ noop_warn("glVertexAttrib4NbvARB");
+}
+
+static void APIENTRY noopVertexAttrib4NivARB(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttrib4NivARB");
+}
+
+static void APIENTRY noopVertexAttrib4NsvARB(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib4NsvARB");
+}
+
+static void APIENTRY noopVertexAttrib4NubARB(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ noop_warn("glVertexAttrib4NubARB");
+}
+
+static void APIENTRY noopVertexAttrib4NubvARB(GLuint index, const GLubyte *v)
+{
+ noop_warn("glVertexAttrib4NubvARB");
+}
+
+static void APIENTRY noopVertexAttrib4NuivARB(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttrib4NuivARB");
+}
+
+static void APIENTRY noopVertexAttrib4NusvARB(GLuint index, const GLushort *v)
+{
+ noop_warn("glVertexAttrib4NusvARB");
+}
+
+static void APIENTRY noopVertexAttrib4bvARB(GLuint index, const GLbyte *v)
+{
+ noop_warn("glVertexAttrib4bvARB");
+}
+
+static void APIENTRY noopVertexAttrib4dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glVertexAttrib4dARB");
+}
+
+static void APIENTRY noopVertexAttrib4dvARB(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib4dvARB");
+}
+
+static void APIENTRY noopVertexAttrib4fARB(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glVertexAttrib4fARB");
+}
+
+static void APIENTRY noopVertexAttrib4fvARB(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib4fvARB");
+}
+
+static void APIENTRY noopVertexAttrib4ivARB(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttrib4ivARB");
+}
+
+static void APIENTRY noopVertexAttrib4sARB(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ noop_warn("glVertexAttrib4sARB");
+}
+
+static void APIENTRY noopVertexAttrib4svARB(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib4svARB");
+}
+
+static void APIENTRY noopVertexAttrib4ubvARB(GLuint index, const GLubyte *v)
+{
+ noop_warn("glVertexAttrib4ubvARB");
+}
+
+static void APIENTRY noopVertexAttrib4uivARB(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttrib4uivARB");
+}
+
+static void APIENTRY noopVertexAttrib4usvARB(GLuint index, const GLushort *v)
+{
+ noop_warn("glVertexAttrib4usvARB");
+}
+
+static void APIENTRY noopVertexAttribPointerARB(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glVertexAttribPointerARB");
+}
+
+static void APIENTRY noopBindBufferARB(GLenum target, GLuint buffer)
+{
+ noop_warn("glBindBufferARB");
+}
+
+static void APIENTRY noopBufferDataARB(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage)
+{
+ noop_warn("glBufferDataARB");
+}
+
+static void APIENTRY noopBufferSubDataARB(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data)
+{
+ noop_warn("glBufferSubDataARB");
+}
+
+static void APIENTRY noopDeleteBuffersARB(GLsizei n, const GLuint *buffer)
+{
+ noop_warn("glDeleteBuffersARB");
+}
+
+static void APIENTRY noopGenBuffersARB(GLsizei n, GLuint *buffer)
+{
+ noop_warn("glGenBuffersARB");
+}
+
+static void APIENTRY noopGetBufferParameterivARB(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetBufferParameterivARB");
+}
+
+static void APIENTRY noopGetBufferPointervARB(GLenum target, GLenum pname, GLvoid **params)
+{
+ noop_warn("glGetBufferPointervARB");
+}
+
+static void APIENTRY noopGetBufferSubDataARB(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data)
+{
+ noop_warn("glGetBufferSubDataARB");
+}
+
+static GLboolean APIENTRY noopIsBufferARB(GLuint buffer)
+{
+ noop_warn("glIsBufferARB");
+ return (GLboolean) 0;
+}
+
+static GLvoid * APIENTRY noopMapBufferARB(GLenum target, GLenum access)
+{
+ noop_warn("glMapBufferARB");
+ return (GLvoid *) 0;
+}
+
+static GLboolean APIENTRY noopUnmapBufferARB(GLenum target)
+{
+ noop_warn("glUnmapBufferARB");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopBeginQueryARB(GLenum target, GLuint id)
+{
+ noop_warn("glBeginQueryARB");
+}
+
+static void APIENTRY noopDeleteQueriesARB(GLsizei n, const GLuint *ids)
+{
+ noop_warn("glDeleteQueriesARB");
+}
+
+static void APIENTRY noopEndQueryARB(GLenum target)
+{
+ noop_warn("glEndQueryARB");
+}
+
+static void APIENTRY noopGenQueriesARB(GLsizei n, GLuint *ids)
+{
+ noop_warn("glGenQueriesARB");
+}
+
+static void APIENTRY noopGetQueryObjectivARB(GLuint id, GLenum pname, GLint *params)
+{
+ noop_warn("glGetQueryObjectivARB");
+}
+
+static void APIENTRY noopGetQueryObjectuivARB(GLuint id, GLenum pname, GLuint *params)
+{
+ noop_warn("glGetQueryObjectuivARB");
+}
+
+static void APIENTRY noopGetQueryivARB(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetQueryivARB");
+}
+
+static GLboolean APIENTRY noopIsQueryARB(GLuint id)
+{
+ noop_warn("glIsQueryARB");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopAttachObjectARB(GLhandleARB containerObj, GLhandleARB obj)
+{
+ noop_warn("glAttachObjectARB");
+}
+
+static void APIENTRY noopCompileShaderARB(GLhandleARB shader)
+{
+ noop_warn("glCompileShaderARB");
+}
+
+static GLhandleARB APIENTRY noopCreateProgramObjectARB(void)
+{
+ noop_warn("glCreateProgramObjectARB");
+ return (GLhandleARB) 0;
+}
+
+static GLhandleARB APIENTRY noopCreateShaderObjectARB(GLenum shaderType)
+{
+ noop_warn("glCreateShaderObjectARB");
+ return (GLhandleARB) 0;
+}
+
+static void APIENTRY noopDeleteObjectARB(GLhandleARB obj)
+{
+ noop_warn("glDeleteObjectARB");
+}
+
+static void APIENTRY noopDetachObjectARB(GLhandleARB containerObj, GLhandleARB attachedObj)
+{
+ noop_warn("glDetachObjectARB");
+}
+
+static void APIENTRY noopGetActiveUniformARB(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)
+{
+ noop_warn("glGetActiveUniformARB");
+}
+
+static void APIENTRY noopGetAttachedObjectsARB(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog)
+{
+ noop_warn("glGetAttachedObjectsARB");
+}
+
+static GLhandleARB APIENTRY noopGetHandleARB(GLenum pname)
+{
+ noop_warn("glGetHandleARB");
+ return (GLhandleARB) 0;
+}
+
+static void APIENTRY noopGetInfoLogARB(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog)
+{
+ noop_warn("glGetInfoLogARB");
+}
+
+static void APIENTRY noopGetObjectParameterfvARB(GLhandleARB obj, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetObjectParameterfvARB");
+}
+
+static void APIENTRY noopGetObjectParameterivARB(GLhandleARB obj, GLenum pname, GLint *params)
+{
+ noop_warn("glGetObjectParameterivARB");
+}
+
+static void APIENTRY noopGetShaderSourceARB(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source)
+{
+ noop_warn("glGetShaderSourceARB");
+}
+
+static GLint APIENTRY noopGetUniformLocationARB(GLhandleARB program, const GLcharARB *name)
+{
+ noop_warn("glGetUniformLocationARB");
+ return (GLint) 0;
+}
+
+static void APIENTRY noopGetUniformfvARB(GLhandleARB program, GLint location, GLfloat *params)
+{
+ noop_warn("glGetUniformfvARB");
+}
+
+static void APIENTRY noopGetUniformivARB(GLhandleARB program, GLint location, GLint *params)
+{
+ noop_warn("glGetUniformivARB");
+}
+
+static void APIENTRY noopLinkProgramARB(GLhandleARB program)
+{
+ noop_warn("glLinkProgramARB");
+}
+
+static void APIENTRY noopShaderSourceARB(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length)
+{
+ noop_warn("glShaderSourceARB");
+}
+
+static void APIENTRY noopUniform1fARB(GLint location, GLfloat v0)
+{
+ noop_warn("glUniform1fARB");
+}
+
+static void APIENTRY noopUniform1fvARB(GLint location, GLsizei count, const GLfloat *value)
+{
+ noop_warn("glUniform1fvARB");
+}
+
+static void APIENTRY noopUniform1iARB(GLint location, GLint v0)
+{
+ noop_warn("glUniform1iARB");
+}
+
+static void APIENTRY noopUniform1ivARB(GLint location, GLsizei count, const GLint *value)
+{
+ noop_warn("glUniform1ivARB");
+}
+
+static void APIENTRY noopUniform2fARB(GLint location, GLfloat v0, GLfloat v1)
+{
+ noop_warn("glUniform2fARB");
+}
+
+static void APIENTRY noopUniform2fvARB(GLint location, GLsizei count, const GLfloat *value)
+{
+ noop_warn("glUniform2fvARB");
+}
+
+static void APIENTRY noopUniform2iARB(GLint location, GLint v0, GLint v1)
+{
+ noop_warn("glUniform2iARB");
+}
+
+static void APIENTRY noopUniform2ivARB(GLint location, GLsizei count, const GLint *value)
+{
+ noop_warn("glUniform2ivARB");
+}
+
+static void APIENTRY noopUniform3fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ noop_warn("glUniform3fARB");
+}
+
+static void APIENTRY noopUniform3fvARB(GLint location, GLsizei count, const GLfloat *value)
+{
+ noop_warn("glUniform3fvARB");
+}
+
+static void APIENTRY noopUniform3iARB(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ noop_warn("glUniform3iARB");
+}
+
+static void APIENTRY noopUniform3ivARB(GLint location, GLsizei count, const GLint *value)
+{
+ noop_warn("glUniform3ivARB");
+}
+
+static void APIENTRY noopUniform4fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ noop_warn("glUniform4fARB");
+}
+
+static void APIENTRY noopUniform4fvARB(GLint location, GLsizei count, const GLfloat *value)
+{
+ noop_warn("glUniform4fvARB");
+}
+
+static void APIENTRY noopUniform4iARB(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ noop_warn("glUniform4iARB");
+}
+
+static void APIENTRY noopUniform4ivARB(GLint location, GLsizei count, const GLint *value)
+{
+ noop_warn("glUniform4ivARB");
+}
+
+static void APIENTRY noopUniformMatrix2fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix2fvARB");
+}
+
+static void APIENTRY noopUniformMatrix3fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix3fvARB");
+}
+
+static void APIENTRY noopUniformMatrix4fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ noop_warn("glUniformMatrix4fvARB");
+}
+
+static void APIENTRY noopUseProgramObjectARB(GLhandleARB program)
+{
+ noop_warn("glUseProgramObjectARB");
+}
+
+static void APIENTRY noopValidateProgramARB(GLhandleARB program)
+{
+ noop_warn("glValidateProgramARB");
+}
+
+static void APIENTRY noopBindAttribLocationARB(GLhandleARB program, GLuint index, const GLcharARB *name)
+{
+ noop_warn("glBindAttribLocationARB");
+}
+
+static void APIENTRY noopGetActiveAttribARB(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)
+{
+ noop_warn("glGetActiveAttribARB");
+}
+
+static GLint APIENTRY noopGetAttribLocationARB(GLhandleARB program, const GLcharARB *name)
+{
+ noop_warn("glGetAttribLocationARB");
+ return (GLint) 0;
+}
+
+static void APIENTRY noopDrawBuffersARB(GLsizei n, const GLenum *bufs)
+{
+ noop_warn("glDrawBuffersARB");
+}
+
+static void APIENTRY noopDrawArraysInstancedARB(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
+{
+ noop_warn("glDrawArraysInstancedARB");
+}
+
+static void APIENTRY noopDrawElementsInstancedARB(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)
+{
+ noop_warn("glDrawElementsInstancedARB");
+}
+
+static void APIENTRY noopRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ noop_warn("glRenderbufferStorageMultisample");
+}
+
+static void APIENTRY noopFramebufferTextureARB(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ noop_warn("glFramebufferTextureARB");
+}
+
+static void APIENTRY noopFramebufferTextureFaceARB(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)
+{
+ noop_warn("glFramebufferTextureFaceARB");
+}
+
+static void APIENTRY noopProgramParameteriARB(GLuint program, GLenum pname, GLint value)
+{
+ noop_warn("glProgramParameteriARB");
+}
+
+static void APIENTRY noopVertexAttribDivisorARB(GLuint index, GLuint divisor)
+{
+ noop_warn("glVertexAttribDivisorARB");
+}
+
+static void APIENTRY noopFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ noop_warn("glFlushMappedBufferRange");
+}
+
+static GLvoid * APIENTRY noopMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ noop_warn("glMapBufferRange");
+ return (GLvoid *) 0;
+}
+
+static void APIENTRY noopBindVertexArray(GLuint array)
+{
+ noop_warn("glBindVertexArray");
+}
+
+static void APIENTRY noopGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ noop_warn("glGenVertexArrays");
+}
+
+static void APIENTRY noopCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ noop_warn("glCopyBufferSubData");
+}
+
+static GLenum APIENTRY noopClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ noop_warn("glClientWaitSync");
+ return (GLenum) 0;
+}
+
+static void APIENTRY noopDeleteSync(GLsync sync)
+{
+ noop_warn("glDeleteSync");
+}
+
+static GLsync APIENTRY noopFenceSync(GLenum condition, GLbitfield flags)
+{
+ noop_warn("glFenceSync");
+ return (GLsync) 0;
+}
+
+static void APIENTRY noopGetInteger64v(GLenum pname, GLint64 *params)
+{
+ noop_warn("glGetInteger64v");
+}
+
+static void APIENTRY noopGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ noop_warn("glGetSynciv");
+}
+
+static GLboolean APIENTRY noopIsSync(GLsync sync)
+{
+ noop_warn("glIsSync");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ noop_warn("glWaitSync");
+}
+
+static void APIENTRY noopDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ noop_warn("glDrawElementsBaseVertex");
+}
+
+static void APIENTRY noopDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ noop_warn("glDrawRangeElementsBaseVertex");
+}
+
+static void APIENTRY noopMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex)
+{
+ noop_warn("glMultiDrawElementsBaseVertex");
+}
+
+static void APIENTRY noopBlendEquationSeparateiARB(GLuint buf, GLenum modeRGB, GLenum modeA)
+{
+ noop_warn("glBlendEquationSeparateiARB");
+}
+
+static void APIENTRY noopBlendEquationiARB(GLuint buf, GLenum mode)
+{
+ noop_warn("glBlendEquationiARB");
+}
+
+static void APIENTRY noopBlendFuncSeparateiARB(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)
+{
+ noop_warn("glBlendFuncSeparateiARB");
+}
+
+static void APIENTRY noopBlendFunciARB(GLuint buf, GLenum src, GLenum dst)
+{
+ noop_warn("glBlendFunciARB");
+}
+
+static void APIENTRY noopBindTransformFeedback(GLenum target, GLuint id)
+{
+ noop_warn("glBindTransformFeedback");
+}
+
+static void APIENTRY noopDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ noop_warn("glDeleteTransformFeedbacks");
+}
+
+static void APIENTRY noopDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ noop_warn("glDrawTransformFeedback");
+}
+
+static void APIENTRY noopGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ noop_warn("glGenTransformFeedbacks");
+}
+
+static GLboolean APIENTRY noopIsTransformFeedback(GLuint id)
+{
+ noop_warn("glIsTransformFeedback");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopPauseTransformFeedback(void)
+{
+ noop_warn("glPauseTransformFeedback");
+}
+
+static void APIENTRY noopResumeTransformFeedback(void)
+{
+ noop_warn("glResumeTransformFeedback");
+}
+
+static void APIENTRY noopClearDepthf(GLclampf depth)
+{
+ noop_warn("glClearDepthf");
+}
+
+static void APIENTRY noopDepthRangef(GLclampf zNear, GLclampf zFar)
+{
+ noop_warn("glDepthRangef");
+}
+
+static void APIENTRY noopGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ noop_warn("glGetShaderPrecisionFormat");
+}
+
+static void APIENTRY noopReleaseShaderCompiler(void)
+{
+ noop_warn("glReleaseShaderCompiler");
+}
+
+static void APIENTRY noopShaderBinary(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ noop_warn("glShaderBinary");
+}
+
+static void APIENTRY noopGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ noop_warn("glGetProgramBinary");
+}
+
+static void APIENTRY noopProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ noop_warn("glProgramBinary");
+}
+
+static void APIENTRY noopProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ noop_warn("glProgramParameteri");
+}
+
+static void APIENTRY noopPolygonOffsetEXT(GLfloat factor, GLfloat bias)
+{
+ noop_warn("glPolygonOffsetEXT");
+}
+
+static void APIENTRY noopDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+{
+ noop_warn("glDrawTexfOES");
+}
+
+static void APIENTRY noopDrawTexfvOES(const GLfloat *coords)
+{
+ noop_warn("glDrawTexfvOES");
+}
+
+static void APIENTRY noopDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ noop_warn("glDrawTexiOES");
+}
+
+static void APIENTRY noopDrawTexivOES(const GLint *coords)
+{
+ noop_warn("glDrawTexivOES");
+}
+
+static void APIENTRY noopDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+{
+ noop_warn("glDrawTexsOES");
+}
+
+static void APIENTRY noopDrawTexsvOES(const GLshort *coords)
+{
+ noop_warn("glDrawTexsvOES");
+}
+
+static void APIENTRY noopDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
+{
+ noop_warn("glDrawTexxOES");
+}
+
+static void APIENTRY noopDrawTexxvOES(const GLfixed *coords)
+{
+ noop_warn("glDrawTexxvOES");
+}
+
+static void APIENTRY noopPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glPointSizePointerOES");
+}
+
+static void APIENTRY noopGetPixelTexGenParameterfvSGIS(GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetPixelTexGenParameterfvSGIS");
+}
+
+static void APIENTRY noopGetPixelTexGenParameterivSGIS(GLenum pname, GLint *params)
+{
+ noop_warn("glGetPixelTexGenParameterivSGIS");
+}
+
+static void APIENTRY noopPixelTexGenParameterfSGIS(GLenum pname, GLfloat param)
+{
+ noop_warn("glPixelTexGenParameterfSGIS");
+}
+
+static void APIENTRY noopPixelTexGenParameterfvSGIS(GLenum pname, const GLfloat *params)
+{
+ noop_warn("glPixelTexGenParameterfvSGIS");
+}
+
+static void APIENTRY noopPixelTexGenParameteriSGIS(GLenum pname, GLint param)
+{
+ noop_warn("glPixelTexGenParameteriSGIS");
+}
+
+static void APIENTRY noopPixelTexGenParameterivSGIS(GLenum pname, const GLint *params)
+{
+ noop_warn("glPixelTexGenParameterivSGIS");
+}
+
+static GLbitfield APIENTRY noopQueryMatrixxOES(GLfixed *mantissa, GLint *exponent)
+{
+ noop_warn("glQueryMatrixxOES");
+ return (GLbitfield) 0;
+}
+
+static void APIENTRY noopSampleMaskSGIS(GLclampf value, GLboolean invert)
+{
+ noop_warn("glSampleMaskSGIS");
+}
+
+static void APIENTRY noopSamplePatternSGIS(GLenum pattern)
+{
+ noop_warn("glSamplePatternSGIS");
+}
+
+static void APIENTRY noopColorPointerEXT(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ noop_warn("glColorPointerEXT");
+}
+
+static void APIENTRY noopEdgeFlagPointerEXT(GLsizei stride, GLsizei count, const GLboolean *pointer)
+{
+ noop_warn("glEdgeFlagPointerEXT");
+}
+
+static void APIENTRY noopIndexPointerEXT(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ noop_warn("glIndexPointerEXT");
+}
+
+static void APIENTRY noopNormalPointerEXT(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ noop_warn("glNormalPointerEXT");
+}
+
+static void APIENTRY noopTexCoordPointerEXT(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ noop_warn("glTexCoordPointerEXT");
+}
+
+static void APIENTRY noopVertexPointerEXT(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ noop_warn("glVertexPointerEXT");
+}
+
+static void APIENTRY noopPointParameterfEXT(GLenum pname, GLfloat param)
+{
+ noop_warn("glPointParameterfEXT");
+}
+
+static void APIENTRY noopPointParameterfvEXT(GLenum pname, const GLfloat *params)
+{
+ noop_warn("glPointParameterfvEXT");
+}
+
+static void APIENTRY noopLockArraysEXT(GLint first, GLsizei count)
+{
+ noop_warn("glLockArraysEXT");
+}
+
+static void APIENTRY noopUnlockArraysEXT(void)
+{
+ noop_warn("glUnlockArraysEXT");
+}
+
+static void APIENTRY noopSecondaryColor3bEXT(GLbyte red, GLbyte green, GLbyte blue)
+{
+ noop_warn("glSecondaryColor3bEXT");
+}
+
+static void APIENTRY noopSecondaryColor3bvEXT(const GLbyte *v)
+{
+ noop_warn("glSecondaryColor3bvEXT");
+}
+
+static void APIENTRY noopSecondaryColor3dEXT(GLdouble red, GLdouble green, GLdouble blue)
+{
+ noop_warn("glSecondaryColor3dEXT");
+}
+
+static void APIENTRY noopSecondaryColor3dvEXT(const GLdouble *v)
+{
+ noop_warn("glSecondaryColor3dvEXT");
+}
+
+static void APIENTRY noopSecondaryColor3fEXT(GLfloat red, GLfloat green, GLfloat blue)
+{
+ noop_warn("glSecondaryColor3fEXT");
+}
+
+static void APIENTRY noopSecondaryColor3fvEXT(const GLfloat *v)
+{
+ noop_warn("glSecondaryColor3fvEXT");
+}
+
+static void APIENTRY noopSecondaryColor3iEXT(GLint red, GLint green, GLint blue)
+{
+ noop_warn("glSecondaryColor3iEXT");
+}
+
+static void APIENTRY noopSecondaryColor3ivEXT(const GLint *v)
+{
+ noop_warn("glSecondaryColor3ivEXT");
+}
+
+static void APIENTRY noopSecondaryColor3sEXT(GLshort red, GLshort green, GLshort blue)
+{
+ noop_warn("glSecondaryColor3sEXT");
+}
+
+static void APIENTRY noopSecondaryColor3svEXT(const GLshort *v)
+{
+ noop_warn("glSecondaryColor3svEXT");
+}
+
+static void APIENTRY noopSecondaryColor3ubEXT(GLubyte red, GLubyte green, GLubyte blue)
+{
+ noop_warn("glSecondaryColor3ubEXT");
+}
+
+static void APIENTRY noopSecondaryColor3ubvEXT(const GLubyte *v)
+{
+ noop_warn("glSecondaryColor3ubvEXT");
+}
+
+static void APIENTRY noopSecondaryColor3uiEXT(GLuint red, GLuint green, GLuint blue)
+{
+ noop_warn("glSecondaryColor3uiEXT");
+}
+
+static void APIENTRY noopSecondaryColor3uivEXT(const GLuint *v)
+{
+ noop_warn("glSecondaryColor3uivEXT");
+}
+
+static void APIENTRY noopSecondaryColor3usEXT(GLushort red, GLushort green, GLushort blue)
+{
+ noop_warn("glSecondaryColor3usEXT");
+}
+
+static void APIENTRY noopSecondaryColor3usvEXT(const GLushort *v)
+{
+ noop_warn("glSecondaryColor3usvEXT");
+}
+
+static void APIENTRY noopSecondaryColorPointerEXT(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glSecondaryColorPointerEXT");
+}
+
+static void APIENTRY noopMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ noop_warn("glMultiDrawArraysEXT");
+}
+
+static void APIENTRY noopMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ noop_warn("glMultiDrawElementsEXT");
+}
+
+static void APIENTRY noopFogCoordPointerEXT(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glFogCoordPointerEXT");
+}
+
+static void APIENTRY noopFogCoorddEXT(GLdouble coord)
+{
+ noop_warn("glFogCoorddEXT");
+}
+
+static void APIENTRY noopFogCoorddvEXT(const GLdouble *coord)
+{
+ noop_warn("glFogCoorddvEXT");
+}
+
+static void APIENTRY noopFogCoordfEXT(GLfloat coord)
+{
+ noop_warn("glFogCoordfEXT");
+}
+
+static void APIENTRY noopFogCoordfvEXT(const GLfloat *coord)
+{
+ noop_warn("glFogCoordfvEXT");
+}
+
+static void APIENTRY noopPixelTexGenSGIX(GLenum mode)
+{
+ noop_warn("glPixelTexGenSGIX");
+}
+
+static void APIENTRY noopBlendFuncSeparateEXT(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ noop_warn("glBlendFuncSeparateEXT");
+}
+
+static void APIENTRY noopFlushVertexArrayRangeNV(void)
+{
+ noop_warn("glFlushVertexArrayRangeNV");
+}
+
+static void APIENTRY noopVertexArrayRangeNV(GLsizei length, const GLvoid *pointer)
+{
+ noop_warn("glVertexArrayRangeNV");
+}
+
+static void APIENTRY noopCombinerInputNV(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+ noop_warn("glCombinerInputNV");
+}
+
+static void APIENTRY noopCombinerOutputNV(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)
+{
+ noop_warn("glCombinerOutputNV");
+}
+
+static void APIENTRY noopCombinerParameterfNV(GLenum pname, GLfloat param)
+{
+ noop_warn("glCombinerParameterfNV");
+}
+
+static void APIENTRY noopCombinerParameterfvNV(GLenum pname, const GLfloat *params)
+{
+ noop_warn("glCombinerParameterfvNV");
+}
+
+static void APIENTRY noopCombinerParameteriNV(GLenum pname, GLint param)
+{
+ noop_warn("glCombinerParameteriNV");
+}
+
+static void APIENTRY noopCombinerParameterivNV(GLenum pname, const GLint *params)
+{
+ noop_warn("glCombinerParameterivNV");
+}
+
+static void APIENTRY noopFinalCombinerInputNV(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+ noop_warn("glFinalCombinerInputNV");
+}
+
+static void APIENTRY noopGetCombinerInputParameterfvNV(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetCombinerInputParameterfvNV");
+}
+
+static void APIENTRY noopGetCombinerInputParameterivNV(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)
+{
+ noop_warn("glGetCombinerInputParameterivNV");
+}
+
+static void APIENTRY noopGetCombinerOutputParameterfvNV(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetCombinerOutputParameterfvNV");
+}
+
+static void APIENTRY noopGetCombinerOutputParameterivNV(GLenum stage, GLenum portion, GLenum pname, GLint *params)
+{
+ noop_warn("glGetCombinerOutputParameterivNV");
+}
+
+static void APIENTRY noopGetFinalCombinerInputParameterfvNV(GLenum variable, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetFinalCombinerInputParameterfvNV");
+}
+
+static void APIENTRY noopGetFinalCombinerInputParameterivNV(GLenum variable, GLenum pname, GLint *params)
+{
+ noop_warn("glGetFinalCombinerInputParameterivNV");
+}
+
+static void APIENTRY noopResizeBuffersMESA(void)
+{
+ noop_warn("glResizeBuffersMESA");
+}
+
+static void APIENTRY noopWindowPos2dMESA(GLdouble x, GLdouble y)
+{
+ noop_warn("glWindowPos2dMESA");
+}
+
+static void APIENTRY noopWindowPos2dvMESA(const GLdouble *v)
+{
+ noop_warn("glWindowPos2dvMESA");
+}
+
+static void APIENTRY noopWindowPos2fMESA(GLfloat x, GLfloat y)
+{
+ noop_warn("glWindowPos2fMESA");
+}
+
+static void APIENTRY noopWindowPos2fvMESA(const GLfloat *v)
+{
+ noop_warn("glWindowPos2fvMESA");
+}
+
+static void APIENTRY noopWindowPos2iMESA(GLint x, GLint y)
+{
+ noop_warn("glWindowPos2iMESA");
+}
+
+static void APIENTRY noopWindowPos2ivMESA(const GLint *v)
+{
+ noop_warn("glWindowPos2ivMESA");
+}
+
+static void APIENTRY noopWindowPos2sMESA(GLshort x, GLshort y)
+{
+ noop_warn("glWindowPos2sMESA");
+}
+
+static void APIENTRY noopWindowPos2svMESA(const GLshort *v)
+{
+ noop_warn("glWindowPos2svMESA");
+}
+
+static void APIENTRY noopWindowPos3dMESA(GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glWindowPos3dMESA");
+}
+
+static void APIENTRY noopWindowPos3dvMESA(const GLdouble *v)
+{
+ noop_warn("glWindowPos3dvMESA");
+}
+
+static void APIENTRY noopWindowPos3fMESA(GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glWindowPos3fMESA");
+}
+
+static void APIENTRY noopWindowPos3fvMESA(const GLfloat *v)
+{
+ noop_warn("glWindowPos3fvMESA");
+}
+
+static void APIENTRY noopWindowPos3iMESA(GLint x, GLint y, GLint z)
+{
+ noop_warn("glWindowPos3iMESA");
+}
+
+static void APIENTRY noopWindowPos3ivMESA(const GLint *v)
+{
+ noop_warn("glWindowPos3ivMESA");
+}
+
+static void APIENTRY noopWindowPos3sMESA(GLshort x, GLshort y, GLshort z)
+{
+ noop_warn("glWindowPos3sMESA");
+}
+
+static void APIENTRY noopWindowPos3svMESA(const GLshort *v)
+{
+ noop_warn("glWindowPos3svMESA");
+}
+
+static void APIENTRY noopWindowPos4dMESA(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glWindowPos4dMESA");
+}
+
+static void APIENTRY noopWindowPos4dvMESA(const GLdouble *v)
+{
+ noop_warn("glWindowPos4dvMESA");
+}
+
+static void APIENTRY noopWindowPos4fMESA(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glWindowPos4fMESA");
+}
+
+static void APIENTRY noopWindowPos4fvMESA(const GLfloat *v)
+{
+ noop_warn("glWindowPos4fvMESA");
+}
+
+static void APIENTRY noopWindowPos4iMESA(GLint x, GLint y, GLint z, GLint w)
+{
+ noop_warn("glWindowPos4iMESA");
+}
+
+static void APIENTRY noopWindowPos4ivMESA(const GLint *v)
+{
+ noop_warn("glWindowPos4ivMESA");
+}
+
+static void APIENTRY noopWindowPos4sMESA(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ noop_warn("glWindowPos4sMESA");
+}
+
+static void APIENTRY noopWindowPos4svMESA(const GLshort *v)
+{
+ noop_warn("glWindowPos4svMESA");
+}
+
+static void APIENTRY noopMultiModeDrawArraysIBM(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride)
+{
+ noop_warn("glMultiModeDrawArraysIBM");
+}
+
+static void APIENTRY noopMultiModeDrawElementsIBM(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride)
+{
+ noop_warn("glMultiModeDrawElementsIBM");
+}
+
+static void APIENTRY noopDeleteFencesNV(GLsizei n, const GLuint *fences)
+{
+ noop_warn("glDeleteFencesNV");
+}
+
+static void APIENTRY noopFinishFenceNV(GLuint fence)
+{
+ noop_warn("glFinishFenceNV");
+}
+
+static void APIENTRY noopGenFencesNV(GLsizei n, GLuint *fences)
+{
+ noop_warn("glGenFencesNV");
+}
+
+static void APIENTRY noopGetFenceivNV(GLuint fence, GLenum pname, GLint *params)
+{
+ noop_warn("glGetFenceivNV");
+}
+
+static GLboolean APIENTRY noopIsFenceNV(GLuint fence)
+{
+ noop_warn("glIsFenceNV");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopSetFenceNV(GLuint fence, GLenum condition)
+{
+ noop_warn("glSetFenceNV");
+}
+
+static GLboolean APIENTRY noopTestFenceNV(GLuint fence)
+{
+ noop_warn("glTestFenceNV");
+ return (GLboolean) 0;
+}
+
+static GLboolean APIENTRY noopAreProgramsResidentNV(GLsizei n, const GLuint *ids, GLboolean *residences)
+{
+ noop_warn("glAreProgramsResidentNV");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopBindProgramNV(GLenum target, GLuint program)
+{
+ noop_warn("glBindProgramNV");
+}
+
+static void APIENTRY noopDeleteProgramsNV(GLsizei n, const GLuint *programs)
+{
+ noop_warn("glDeleteProgramsNV");
+}
+
+static void APIENTRY noopExecuteProgramNV(GLenum target, GLuint id, const GLfloat *params)
+{
+ noop_warn("glExecuteProgramNV");
+}
+
+static void APIENTRY noopGenProgramsNV(GLsizei n, GLuint *programs)
+{
+ noop_warn("glGenProgramsNV");
+}
+
+static void APIENTRY noopGetProgramParameterdvNV(GLenum target, GLuint index, GLenum pname, GLdouble *params)
+{
+ noop_warn("glGetProgramParameterdvNV");
+}
+
+static void APIENTRY noopGetProgramParameterfvNV(GLenum target, GLuint index, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetProgramParameterfvNV");
+}
+
+static void APIENTRY noopGetProgramStringNV(GLuint id, GLenum pname, GLubyte *program)
+{
+ noop_warn("glGetProgramStringNV");
+}
+
+static void APIENTRY noopGetProgramivNV(GLuint id, GLenum pname, GLint *params)
+{
+ noop_warn("glGetProgramivNV");
+}
+
+static void APIENTRY noopGetTrackMatrixivNV(GLenum target, GLuint address, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTrackMatrixivNV");
+}
+
+static void APIENTRY noopGetVertexAttribPointervNV(GLuint index, GLenum pname, GLvoid **pointer)
+{
+ noop_warn("glGetVertexAttribPointervNV");
+}
+
+static void APIENTRY noopGetVertexAttribdvNV(GLuint index, GLenum pname, GLdouble *params)
+{
+ noop_warn("glGetVertexAttribdvNV");
+}
+
+static void APIENTRY noopGetVertexAttribfvNV(GLuint index, GLenum pname, GLfloat *params)
+{
+ noop_warn("glGetVertexAttribfvNV");
+}
+
+static void APIENTRY noopGetVertexAttribivNV(GLuint index, GLenum pname, GLint *params)
+{
+ noop_warn("glGetVertexAttribivNV");
+}
+
+static GLboolean APIENTRY noopIsProgramNV(GLuint program)
+{
+ noop_warn("glIsProgramNV");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopLoadProgramNV(GLenum target, GLuint id, GLsizei len, const GLubyte *program)
+{
+ noop_warn("glLoadProgramNV");
+}
+
+static void APIENTRY noopProgramParameters4dvNV(GLenum target, GLuint index, GLsizei num, const GLdouble *params)
+{
+ noop_warn("glProgramParameters4dvNV");
+}
+
+static void APIENTRY noopProgramParameters4fvNV(GLenum target, GLuint index, GLsizei num, const GLfloat *params)
+{
+ noop_warn("glProgramParameters4fvNV");
+}
+
+static void APIENTRY noopRequestResidentProgramsNV(GLsizei n, const GLuint *ids)
+{
+ noop_warn("glRequestResidentProgramsNV");
+}
+
+static void APIENTRY noopTrackMatrixNV(GLenum target, GLuint address, GLenum matrix, GLenum transform)
+{
+ noop_warn("glTrackMatrixNV");
+}
+
+static void APIENTRY noopVertexAttrib1dNV(GLuint index, GLdouble x)
+{
+ noop_warn("glVertexAttrib1dNV");
+}
+
+static void APIENTRY noopVertexAttrib1dvNV(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib1dvNV");
+}
+
+static void APIENTRY noopVertexAttrib1fNV(GLuint index, GLfloat x)
+{
+ noop_warn("glVertexAttrib1fNV");
+}
+
+static void APIENTRY noopVertexAttrib1fvNV(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib1fvNV");
+}
+
+static void APIENTRY noopVertexAttrib1sNV(GLuint index, GLshort x)
+{
+ noop_warn("glVertexAttrib1sNV");
+}
+
+static void APIENTRY noopVertexAttrib1svNV(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib1svNV");
+}
+
+static void APIENTRY noopVertexAttrib2dNV(GLuint index, GLdouble x, GLdouble y)
+{
+ noop_warn("glVertexAttrib2dNV");
+}
+
+static void APIENTRY noopVertexAttrib2dvNV(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib2dvNV");
+}
+
+static void APIENTRY noopVertexAttrib2fNV(GLuint index, GLfloat x, GLfloat y)
+{
+ noop_warn("glVertexAttrib2fNV");
+}
+
+static void APIENTRY noopVertexAttrib2fvNV(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib2fvNV");
+}
+
+static void APIENTRY noopVertexAttrib2sNV(GLuint index, GLshort x, GLshort y)
+{
+ noop_warn("glVertexAttrib2sNV");
+}
+
+static void APIENTRY noopVertexAttrib2svNV(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib2svNV");
+}
+
+static void APIENTRY noopVertexAttrib3dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ noop_warn("glVertexAttrib3dNV");
+}
+
+static void APIENTRY noopVertexAttrib3dvNV(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib3dvNV");
+}
+
+static void APIENTRY noopVertexAttrib3fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ noop_warn("glVertexAttrib3fNV");
+}
+
+static void APIENTRY noopVertexAttrib3fvNV(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib3fvNV");
+}
+
+static void APIENTRY noopVertexAttrib3sNV(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ noop_warn("glVertexAttrib3sNV");
+}
+
+static void APIENTRY noopVertexAttrib3svNV(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib3svNV");
+}
+
+static void APIENTRY noopVertexAttrib4dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glVertexAttrib4dNV");
+}
+
+static void APIENTRY noopVertexAttrib4dvNV(GLuint index, const GLdouble *v)
+{
+ noop_warn("glVertexAttrib4dvNV");
+}
+
+static void APIENTRY noopVertexAttrib4fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glVertexAttrib4fNV");
+}
+
+static void APIENTRY noopVertexAttrib4fvNV(GLuint index, const GLfloat *v)
+{
+ noop_warn("glVertexAttrib4fvNV");
+}
+
+static void APIENTRY noopVertexAttrib4sNV(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ noop_warn("glVertexAttrib4sNV");
+}
+
+static void APIENTRY noopVertexAttrib4svNV(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttrib4svNV");
+}
+
+static void APIENTRY noopVertexAttrib4ubNV(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ noop_warn("glVertexAttrib4ubNV");
+}
+
+static void APIENTRY noopVertexAttrib4ubvNV(GLuint index, const GLubyte *v)
+{
+ noop_warn("glVertexAttrib4ubvNV");
+}
+
+static void APIENTRY noopVertexAttribPointerNV(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glVertexAttribPointerNV");
+}
+
+static void APIENTRY noopVertexAttribs1dvNV(GLuint index, GLsizei n, const GLdouble *v)
+{
+ noop_warn("glVertexAttribs1dvNV");
+}
+
+static void APIENTRY noopVertexAttribs1fvNV(GLuint index, GLsizei n, const GLfloat *v)
+{
+ noop_warn("glVertexAttribs1fvNV");
+}
+
+static void APIENTRY noopVertexAttribs1svNV(GLuint index, GLsizei n, const GLshort *v)
+{
+ noop_warn("glVertexAttribs1svNV");
+}
+
+static void APIENTRY noopVertexAttribs2dvNV(GLuint index, GLsizei n, const GLdouble *v)
+{
+ noop_warn("glVertexAttribs2dvNV");
+}
+
+static void APIENTRY noopVertexAttribs2fvNV(GLuint index, GLsizei n, const GLfloat *v)
+{
+ noop_warn("glVertexAttribs2fvNV");
+}
+
+static void APIENTRY noopVertexAttribs2svNV(GLuint index, GLsizei n, const GLshort *v)
+{
+ noop_warn("glVertexAttribs2svNV");
+}
+
+static void APIENTRY noopVertexAttribs3dvNV(GLuint index, GLsizei n, const GLdouble *v)
+{
+ noop_warn("glVertexAttribs3dvNV");
+}
+
+static void APIENTRY noopVertexAttribs3fvNV(GLuint index, GLsizei n, const GLfloat *v)
+{
+ noop_warn("glVertexAttribs3fvNV");
+}
+
+static void APIENTRY noopVertexAttribs3svNV(GLuint index, GLsizei n, const GLshort *v)
+{
+ noop_warn("glVertexAttribs3svNV");
+}
+
+static void APIENTRY noopVertexAttribs4dvNV(GLuint index, GLsizei n, const GLdouble *v)
+{
+ noop_warn("glVertexAttribs4dvNV");
+}
+
+static void APIENTRY noopVertexAttribs4fvNV(GLuint index, GLsizei n, const GLfloat *v)
+{
+ noop_warn("glVertexAttribs4fvNV");
+}
+
+static void APIENTRY noopVertexAttribs4svNV(GLuint index, GLsizei n, const GLshort *v)
+{
+ noop_warn("glVertexAttribs4svNV");
+}
+
+static void APIENTRY noopVertexAttribs4ubvNV(GLuint index, GLsizei n, const GLubyte *v)
+{
+ noop_warn("glVertexAttribs4ubvNV");
+}
+
+static void APIENTRY noopGetTexBumpParameterfvATI(GLenum pname, GLfloat *param)
+{
+ noop_warn("glGetTexBumpParameterfvATI");
+}
+
+static void APIENTRY noopGetTexBumpParameterivATI(GLenum pname, GLint *param)
+{
+ noop_warn("glGetTexBumpParameterivATI");
+}
+
+static void APIENTRY noopTexBumpParameterfvATI(GLenum pname, const GLfloat *param)
+{
+ noop_warn("glTexBumpParameterfvATI");
+}
+
+static void APIENTRY noopTexBumpParameterivATI(GLenum pname, const GLint *param)
+{
+ noop_warn("glTexBumpParameterivATI");
+}
+
+static void APIENTRY noopAlphaFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+ noop_warn("glAlphaFragmentOp1ATI");
+}
+
+static void APIENTRY noopAlphaFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+ noop_warn("glAlphaFragmentOp2ATI");
+}
+
+static void APIENTRY noopAlphaFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
+{
+ noop_warn("glAlphaFragmentOp3ATI");
+}
+
+static void APIENTRY noopBeginFragmentShaderATI(void)
+{
+ noop_warn("glBeginFragmentShaderATI");
+}
+
+static void APIENTRY noopBindFragmentShaderATI(GLuint id)
+{
+ noop_warn("glBindFragmentShaderATI");
+}
+
+static void APIENTRY noopColorFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+ noop_warn("glColorFragmentOp1ATI");
+}
+
+static void APIENTRY noopColorFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+ noop_warn("glColorFragmentOp2ATI");
+}
+
+static void APIENTRY noopColorFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
+{
+ noop_warn("glColorFragmentOp3ATI");
+}
+
+static void APIENTRY noopDeleteFragmentShaderATI(GLuint id)
+{
+ noop_warn("glDeleteFragmentShaderATI");
+}
+
+static void APIENTRY noopEndFragmentShaderATI(void)
+{
+ noop_warn("glEndFragmentShaderATI");
+}
+
+static GLuint APIENTRY noopGenFragmentShadersATI(GLuint range)
+{
+ noop_warn("glGenFragmentShadersATI");
+ return (GLuint) 0;
+}
+
+static void APIENTRY noopPassTexCoordATI(GLuint dst, GLuint coord, GLenum swizzle)
+{
+ noop_warn("glPassTexCoordATI");
+}
+
+static void APIENTRY noopSampleMapATI(GLuint dst, GLuint interp, GLenum swizzle)
+{
+ noop_warn("glSampleMapATI");
+}
+
+static void APIENTRY noopSetFragmentShaderConstantATI(GLuint dst, const GLfloat *value)
+{
+ noop_warn("glSetFragmentShaderConstantATI");
+}
+
+static void APIENTRY noopPointParameteriNV(GLenum pname, GLint param)
+{
+ noop_warn("glPointParameteriNV");
+}
+
+static void APIENTRY noopPointParameterivNV(GLenum pname, const GLint *params)
+{
+ noop_warn("glPointParameterivNV");
+}
+
+static void APIENTRY noopActiveStencilFaceEXT(GLenum face)
+{
+ noop_warn("glActiveStencilFaceEXT");
+}
+
+static void APIENTRY noopBindVertexArrayAPPLE(GLuint array)
+{
+ noop_warn("glBindVertexArrayAPPLE");
+}
+
+static void APIENTRY noopDeleteVertexArraysAPPLE(GLsizei n, const GLuint *arrays)
+{
+ noop_warn("glDeleteVertexArraysAPPLE");
+}
+
+static void APIENTRY noopGenVertexArraysAPPLE(GLsizei n, GLuint *arrays)
+{
+ noop_warn("glGenVertexArraysAPPLE");
+}
+
+static GLboolean APIENTRY noopIsVertexArrayAPPLE(GLuint array)
+{
+ noop_warn("glIsVertexArrayAPPLE");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopGetProgramNamedParameterdvNV(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)
+{
+ noop_warn("glGetProgramNamedParameterdvNV");
+}
+
+static void APIENTRY noopGetProgramNamedParameterfvNV(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)
+{
+ noop_warn("glGetProgramNamedParameterfvNV");
+}
+
+static void APIENTRY noopProgramNamedParameter4dNV(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ noop_warn("glProgramNamedParameter4dNV");
+}
+
+static void APIENTRY noopProgramNamedParameter4dvNV(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)
+{
+ noop_warn("glProgramNamedParameter4dvNV");
+}
+
+static void APIENTRY noopProgramNamedParameter4fNV(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ noop_warn("glProgramNamedParameter4fNV");
+}
+
+static void APIENTRY noopProgramNamedParameter4fvNV(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)
+{
+ noop_warn("glProgramNamedParameter4fvNV");
+}
+
+static void APIENTRY noopPrimitiveRestartIndexNV(GLuint index)
+{
+ noop_warn("glPrimitiveRestartIndexNV");
+}
+
+static void APIENTRY noopPrimitiveRestartNV(void)
+{
+ noop_warn("glPrimitiveRestartNV");
+}
+
+static void APIENTRY noopAlphaFuncxOES(GLenum func, GLclampx ref)
+{
+ noop_warn("glAlphaFuncxOES");
+}
+
+static void APIENTRY noopClearColorxOES(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ noop_warn("glClearColorxOES");
+}
+
+static void APIENTRY noopClearDepthxOES(GLclampx depth)
+{
+ noop_warn("glClearDepthxOES");
+}
+
+static void APIENTRY noopClipPlanexOES(GLenum plane, const GLfixed *equation)
+{
+ noop_warn("glClipPlanexOES");
+}
+
+static void APIENTRY noopColor4xOES(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ noop_warn("glColor4xOES");
+}
+
+static void APIENTRY noopDepthRangexOES(GLclampx zNear, GLclampx zFar)
+{
+ noop_warn("glDepthRangexOES");
+}
+
+static void APIENTRY noopFogxOES(GLenum pname, GLfixed param)
+{
+ noop_warn("glFogxOES");
+}
+
+static void APIENTRY noopFogxvOES(GLenum pname, const GLfixed *params)
+{
+ noop_warn("glFogxvOES");
+}
+
+static void APIENTRY noopFrustumxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ noop_warn("glFrustumxOES");
+}
+
+static void APIENTRY noopGetClipPlanexOES(GLenum plane, GLfixed *equation)
+{
+ noop_warn("glGetClipPlanexOES");
+}
+
+static void APIENTRY noopGetFixedvOES(GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetFixedvOES");
+}
+
+static void APIENTRY noopGetLightxvOES(GLenum light, GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetLightxvOES");
+}
+
+static void APIENTRY noopGetMaterialxvOES(GLenum face, GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetMaterialxvOES");
+}
+
+static void APIENTRY noopGetTexEnvxvOES(GLenum target, GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetTexEnvxvOES");
+}
+
+static void APIENTRY noopGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetTexGenxvOES");
+}
+
+static void APIENTRY noopGetTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params)
+{
+ noop_warn("glGetTexParameterxvOES");
+}
+
+static void APIENTRY noopLightModelxOES(GLenum pname, GLfixed param)
+{
+ noop_warn("glLightModelxOES");
+}
+
+static void APIENTRY noopLightModelxvOES(GLenum pname, const GLfixed *params)
+{
+ noop_warn("glLightModelxvOES");
+}
+
+static void APIENTRY noopLightxOES(GLenum light, GLenum pname, GLfixed param)
+{
+ noop_warn("glLightxOES");
+}
+
+static void APIENTRY noopLightxvOES(GLenum light, GLenum pname, const GLfixed *params)
+{
+ noop_warn("glLightxvOES");
+}
+
+static void APIENTRY noopLineWidthxOES(GLfixed width)
+{
+ noop_warn("glLineWidthxOES");
+}
+
+static void APIENTRY noopLoadMatrixxOES(const GLfixed *m)
+{
+ noop_warn("glLoadMatrixxOES");
+}
+
+static void APIENTRY noopMaterialxOES(GLenum face, GLenum pname, GLfixed param)
+{
+ noop_warn("glMaterialxOES");
+}
+
+static void APIENTRY noopMaterialxvOES(GLenum face, GLenum pname, const GLfixed *params)
+{
+ noop_warn("glMaterialxvOES");
+}
+
+static void APIENTRY noopMultMatrixxOES(const GLfixed *m)
+{
+ noop_warn("glMultMatrixxOES");
+}
+
+static void APIENTRY noopMultiTexCoord4xOES(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ noop_warn("glMultiTexCoord4xOES");
+}
+
+static void APIENTRY noopNormal3xOES(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ noop_warn("glNormal3xOES");
+}
+
+static void APIENTRY noopOrthoxOES(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ noop_warn("glOrthoxOES");
+}
+
+static void APIENTRY noopPointParameterxOES(GLenum pname, GLfixed param)
+{
+ noop_warn("glPointParameterxOES");
+}
+
+static void APIENTRY noopPointParameterxvOES(GLenum pname, const GLfixed *params)
+{
+ noop_warn("glPointParameterxvOES");
+}
+
+static void APIENTRY noopPointSizexOES(GLfixed size)
+{
+ noop_warn("glPointSizexOES");
+}
+
+static void APIENTRY noopPolygonOffsetxOES(GLfixed factor, GLfixed units)
+{
+ noop_warn("glPolygonOffsetxOES");
+}
+
+static void APIENTRY noopRotatexOES(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ noop_warn("glRotatexOES");
+}
+
+static void APIENTRY noopSampleCoveragexOES(GLclampx value, GLboolean invert)
+{
+ noop_warn("glSampleCoveragexOES");
+}
+
+static void APIENTRY noopScalexOES(GLfixed x, GLfixed y, GLfixed z)
+{
+ noop_warn("glScalexOES");
+}
+
+static void APIENTRY noopTexEnvxOES(GLenum target, GLenum pname, GLfixed param)
+{
+ noop_warn("glTexEnvxOES");
+}
+
+static void APIENTRY noopTexEnvxvOES(GLenum target, GLenum pname, const GLfixed *params)
+{
+ noop_warn("glTexEnvxvOES");
+}
+
+static void APIENTRY noopTexGenxOES(GLenum coord, GLenum pname, GLint param)
+{
+ noop_warn("glTexGenxOES");
+}
+
+static void APIENTRY noopTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ noop_warn("glTexGenxvOES");
+}
+
+static void APIENTRY noopTexParameterxOES(GLenum target, GLenum pname, GLfixed param)
+{
+ noop_warn("glTexParameterxOES");
+}
+
+static void APIENTRY noopTexParameterxvOES(GLenum target, GLenum pname, const GLfixed *params)
+{
+ noop_warn("glTexParameterxvOES");
+}
+
+static void APIENTRY noopTranslatexOES(GLfixed x, GLfixed y, GLfixed z)
+{
+ noop_warn("glTranslatexOES");
+}
+
+static void APIENTRY noopClipPlanefOES(GLenum plane, const GLfloat *equation)
+{
+ noop_warn("glClipPlanefOES");
+}
+
+static void APIENTRY noopFrustumfOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ noop_warn("glFrustumfOES");
+}
+
+static void APIENTRY noopGetClipPlanefOES(GLenum plane, GLfloat *equation)
+{
+ noop_warn("glGetClipPlanefOES");
+}
+
+static void APIENTRY noopOrthofOES(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ noop_warn("glOrthofOES");
+}
+
+static void APIENTRY noopDepthBoundsEXT(GLclampd zmin, GLclampd zmax)
+{
+ noop_warn("glDepthBoundsEXT");
+}
+
+static void APIENTRY noopBlendEquationSeparateEXT(GLenum modeRGB, GLenum modeA)
+{
+ noop_warn("glBlendEquationSeparateEXT");
+}
+
+static void APIENTRY noopBindFramebufferEXT(GLenum target, GLuint framebuffer)
+{
+ noop_warn("glBindFramebufferEXT");
+}
+
+static void APIENTRY noopBindRenderbufferEXT(GLenum target, GLuint renderbuffer)
+{
+ noop_warn("glBindRenderbufferEXT");
+}
+
+static GLenum APIENTRY noopCheckFramebufferStatusEXT(GLenum target)
+{
+ noop_warn("glCheckFramebufferStatusEXT");
+ return (GLenum) 0;
+}
+
+static void APIENTRY noopDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers)
+{
+ noop_warn("glDeleteFramebuffersEXT");
+}
+
+static void APIENTRY noopDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers)
+{
+ noop_warn("glDeleteRenderbuffersEXT");
+}
+
+static void APIENTRY noopFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ noop_warn("glFramebufferRenderbufferEXT");
+}
+
+static void APIENTRY noopFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ noop_warn("glFramebufferTexture1DEXT");
+}
+
+static void APIENTRY noopFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ noop_warn("glFramebufferTexture2DEXT");
+}
+
+static void APIENTRY noopFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ noop_warn("glFramebufferTexture3DEXT");
+}
+
+static void APIENTRY noopGenFramebuffersEXT(GLsizei n, GLuint *framebuffers)
+{
+ noop_warn("glGenFramebuffersEXT");
+}
+
+static void APIENTRY noopGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers)
+{
+ noop_warn("glGenRenderbuffersEXT");
+}
+
+static void APIENTRY noopGenerateMipmapEXT(GLenum target)
+{
+ noop_warn("glGenerateMipmapEXT");
+}
+
+static void APIENTRY noopGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ noop_warn("glGetFramebufferAttachmentParameterivEXT");
+}
+
+static void APIENTRY noopGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetRenderbufferParameterivEXT");
+}
+
+static GLboolean APIENTRY noopIsFramebufferEXT(GLuint framebuffer)
+{
+ noop_warn("glIsFramebufferEXT");
+ return (GLboolean) 0;
+}
+
+static GLboolean APIENTRY noopIsRenderbufferEXT(GLuint renderbuffer)
+{
+ noop_warn("glIsRenderbufferEXT");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ noop_warn("glRenderbufferStorageEXT");
+}
+
+static void APIENTRY noopBlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ noop_warn("glBlitFramebufferEXT");
+}
+
+static void APIENTRY noopBufferParameteriAPPLE(GLenum target, GLenum pname, GLint param)
+{
+ noop_warn("glBufferParameteriAPPLE");
+}
+
+static void APIENTRY noopFlushMappedBufferRangeAPPLE(GLenum target, GLintptr offset, GLsizeiptr size)
+{
+ noop_warn("glFlushMappedBufferRangeAPPLE");
+}
+
+static void APIENTRY noopBindFragDataLocationEXT(GLuint program, GLuint colorNumber, const GLchar *name)
+{
+ noop_warn("glBindFragDataLocationEXT");
+}
+
+static GLint APIENTRY noopGetFragDataLocationEXT(GLuint program, const GLchar *name)
+{
+ noop_warn("glGetFragDataLocationEXT");
+ return (GLint) 0;
+}
+
+static void APIENTRY noopGetUniformuivEXT(GLuint program, GLint location, GLuint *params)
+{
+ noop_warn("glGetUniformuivEXT");
+}
+
+static void APIENTRY noopGetVertexAttribIivEXT(GLuint index, GLenum pname, GLint *params)
+{
+ noop_warn("glGetVertexAttribIivEXT");
+}
+
+static void APIENTRY noopGetVertexAttribIuivEXT(GLuint index, GLenum pname, GLuint *params)
+{
+ noop_warn("glGetVertexAttribIuivEXT");
+}
+
+static void APIENTRY noopUniform1uiEXT(GLint location, GLuint x)
+{
+ noop_warn("glUniform1uiEXT");
+}
+
+static void APIENTRY noopUniform1uivEXT(GLint location, GLsizei count, const GLuint *value)
+{
+ noop_warn("glUniform1uivEXT");
+}
+
+static void APIENTRY noopUniform2uiEXT(GLint location, GLuint x, GLuint y)
+{
+ noop_warn("glUniform2uiEXT");
+}
+
+static void APIENTRY noopUniform2uivEXT(GLint location, GLsizei count, const GLuint *value)
+{
+ noop_warn("glUniform2uivEXT");
+}
+
+static void APIENTRY noopUniform3uiEXT(GLint location, GLuint x, GLuint y, GLuint z)
+{
+ noop_warn("glUniform3uiEXT");
+}
+
+static void APIENTRY noopUniform3uivEXT(GLint location, GLsizei count, const GLuint *value)
+{
+ noop_warn("glUniform3uivEXT");
+}
+
+static void APIENTRY noopUniform4uiEXT(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ noop_warn("glUniform4uiEXT");
+}
+
+static void APIENTRY noopUniform4uivEXT(GLint location, GLsizei count, const GLuint *value)
+{
+ noop_warn("glUniform4uivEXT");
+}
+
+static void APIENTRY noopVertexAttribI1iEXT(GLuint index, GLint x)
+{
+ noop_warn("glVertexAttribI1iEXT");
+}
+
+static void APIENTRY noopVertexAttribI1ivEXT(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttribI1ivEXT");
+}
+
+static void APIENTRY noopVertexAttribI1uiEXT(GLuint index, GLuint x)
+{
+ noop_warn("glVertexAttribI1uiEXT");
+}
+
+static void APIENTRY noopVertexAttribI1uivEXT(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttribI1uivEXT");
+}
+
+static void APIENTRY noopVertexAttribI2iEXT(GLuint index, GLint x, GLint y)
+{
+ noop_warn("glVertexAttribI2iEXT");
+}
+
+static void APIENTRY noopVertexAttribI2ivEXT(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttribI2ivEXT");
+}
+
+static void APIENTRY noopVertexAttribI2uiEXT(GLuint index, GLuint x, GLuint y)
+{
+ noop_warn("glVertexAttribI2uiEXT");
+}
+
+static void APIENTRY noopVertexAttribI2uivEXT(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttribI2uivEXT");
+}
+
+static void APIENTRY noopVertexAttribI3iEXT(GLuint index, GLint x, GLint y, GLint z)
+{
+ noop_warn("glVertexAttribI3iEXT");
+}
+
+static void APIENTRY noopVertexAttribI3ivEXT(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttribI3ivEXT");
+}
+
+static void APIENTRY noopVertexAttribI3uiEXT(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ noop_warn("glVertexAttribI3uiEXT");
+}
+
+static void APIENTRY noopVertexAttribI3uivEXT(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttribI3uivEXT");
+}
+
+static void APIENTRY noopVertexAttribI4bvEXT(GLuint index, const GLbyte *v)
+{
+ noop_warn("glVertexAttribI4bvEXT");
+}
+
+static void APIENTRY noopVertexAttribI4iEXT(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ noop_warn("glVertexAttribI4iEXT");
+}
+
+static void APIENTRY noopVertexAttribI4ivEXT(GLuint index, const GLint *v)
+{
+ noop_warn("glVertexAttribI4ivEXT");
+}
+
+static void APIENTRY noopVertexAttribI4svEXT(GLuint index, const GLshort *v)
+{
+ noop_warn("glVertexAttribI4svEXT");
+}
+
+static void APIENTRY noopVertexAttribI4ubvEXT(GLuint index, const GLubyte *v)
+{
+ noop_warn("glVertexAttribI4ubvEXT");
+}
+
+static void APIENTRY noopVertexAttribI4uiEXT(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ noop_warn("glVertexAttribI4uiEXT");
+}
+
+static void APIENTRY noopVertexAttribI4uivEXT(GLuint index, const GLuint *v)
+{
+ noop_warn("glVertexAttribI4uivEXT");
+}
+
+static void APIENTRY noopVertexAttribI4usvEXT(GLuint index, const GLushort *v)
+{
+ noop_warn("glVertexAttribI4usvEXT");
+}
+
+static void APIENTRY noopVertexAttribIPointerEXT(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ noop_warn("glVertexAttribIPointerEXT");
+}
+
+static void APIENTRY noopFramebufferTextureLayerEXT(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ noop_warn("glFramebufferTextureLayerEXT");
+}
+
+static void APIENTRY noopColorMaskIndexedEXT(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ noop_warn("glColorMaskIndexedEXT");
+}
+
+static void APIENTRY noopDisableIndexedEXT(GLenum target, GLuint index)
+{
+ noop_warn("glDisableIndexedEXT");
+}
+
+static void APIENTRY noopEnableIndexedEXT(GLenum target, GLuint index)
+{
+ noop_warn("glEnableIndexedEXT");
+}
+
+static void APIENTRY noopGetBooleanIndexedvEXT(GLenum value, GLuint index, GLboolean *data)
+{
+ noop_warn("glGetBooleanIndexedvEXT");
+}
+
+static void APIENTRY noopGetIntegerIndexedvEXT(GLenum value, GLuint index, GLint *data)
+{
+ noop_warn("glGetIntegerIndexedvEXT");
+}
+
+static GLboolean APIENTRY noopIsEnabledIndexedEXT(GLenum target, GLuint index)
+{
+ noop_warn("glIsEnabledIndexedEXT");
+ return (GLboolean) 0;
+}
+
+static void APIENTRY noopClearColorIiEXT(GLint r, GLint g, GLint b, GLint a)
+{
+ noop_warn("glClearColorIiEXT");
+}
+
+static void APIENTRY noopClearColorIuiEXT(GLuint r, GLuint g, GLuint b, GLuint a)
+{
+ noop_warn("glClearColorIuiEXT");
+}
+
+static void APIENTRY noopGetTexParameterIivEXT(GLenum target, GLenum pname, GLint *params)
+{
+ noop_warn("glGetTexParameterIivEXT");
+}
+
+static void APIENTRY noopGetTexParameterIuivEXT(GLenum target, GLenum pname, GLuint *params)
+{
+ noop_warn("glGetTexParameterIuivEXT");
+}
+
+static void APIENTRY noopTexParameterIivEXT(GLenum target, GLenum pname, const GLint *params)
+{
+ noop_warn("glTexParameterIivEXT");
+}
+
+static void APIENTRY noopTexParameterIuivEXT(GLenum target, GLenum pname, const GLuint *params)
+{
+ noop_warn("glTexParameterIuivEXT");
+}
+
+static void APIENTRY noopBeginConditionalRenderNV(GLuint query, GLenum mode)
+{
+ noop_warn("glBeginConditionalRenderNV");
+}
+
+static void APIENTRY noopEndConditionalRenderNV(void)
+{
+ noop_warn("glEndConditionalRenderNV");
+}
+
+static void APIENTRY noopBeginTransformFeedbackEXT(GLenum mode)
+{
+ noop_warn("glBeginTransformFeedbackEXT");
+}
+
+static void APIENTRY noopBindBufferBaseEXT(GLenum target, GLuint index, GLuint buffer)
+{
+ noop_warn("glBindBufferBaseEXT");
+}
+
+static void APIENTRY noopBindBufferOffsetEXT(GLenum target, GLuint index, GLuint buffer, GLintptr offset)
+{
+ noop_warn("glBindBufferOffsetEXT");
+}
+
+static void APIENTRY noopBindBufferRangeEXT(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ noop_warn("glBindBufferRangeEXT");
+}
+
+static void APIENTRY noopEndTransformFeedbackEXT(void)
+{
+ noop_warn("glEndTransformFeedbackEXT");
+}
+
+static void APIENTRY noopGetTransformFeedbackVaryingEXT(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ noop_warn("glGetTransformFeedbackVaryingEXT");
+}
+
+static void APIENTRY noopTransformFeedbackVaryingsEXT(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)
+{
+ noop_warn("glTransformFeedbackVaryingsEXT");
+}
+
+static void APIENTRY noopProvokingVertexEXT(GLenum mode)
+{
+ noop_warn("glProvokingVertexEXT");
+}
+
+static void APIENTRY noopGetTexParameterPointervAPPLE(GLenum target, GLenum pname, GLvoid **params)
+{
+ noop_warn("glGetTexParameterPointervAPPLE");
+}
+
+static void APIENTRY noopTextureRangeAPPLE(GLenum target, GLsizei length, GLvoid *pointer)
+{
+ noop_warn("glTextureRangeAPPLE");
+}
+
+static void APIENTRY noopGetObjectParameterivAPPLE(GLenum objectType, GLuint name, GLenum pname, GLint *value)
+{
+ noop_warn("glGetObjectParameterivAPPLE");
+}
+
+static GLenum APIENTRY noopObjectPurgeableAPPLE(GLenum objectType, GLuint name, GLenum option)
+{
+ noop_warn("glObjectPurgeableAPPLE");
+ return (GLenum) 0;
+}
+
+static GLenum APIENTRY noopObjectUnpurgeableAPPLE(GLenum objectType, GLuint name, GLenum option)
+{
+ noop_warn("glObjectUnpurgeableAPPLE");
+ return (GLenum) 0;
+}
+
+static void APIENTRY noopActiveProgramEXT(GLuint program)
+{
+ noop_warn("glActiveProgramEXT");
+}
+
+static GLuint APIENTRY noopCreateShaderProgramEXT(GLenum type, const GLchar *string)
+{
+ noop_warn("glCreateShaderProgramEXT");
+ return (GLuint) 0;
+}
+
+static void APIENTRY noopUseShaderProgramEXT(GLenum type, GLuint program)
+{
+ noop_warn("glUseShaderProgramEXT");
+}
+
+static void APIENTRY noopTextureBarrierNV(void)
+{
+ noop_warn("glTextureBarrierNV");
+}
+
+static void APIENTRY noopStencilFuncSeparateATI(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
+{
+ noop_warn("glStencilFuncSeparateATI");
+}
+
+static void APIENTRY noopProgramEnvParameters4fvEXT(GLenum target, GLuint index, GLsizei count, const GLfloat *params)
+{
+ noop_warn("glProgramEnvParameters4fvEXT");
+}
+
+static void APIENTRY noopProgramLocalParameters4fvEXT(GLenum target, GLuint index, GLsizei count, const GLfloat *params)
+{
+ noop_warn("glProgramLocalParameters4fvEXT");
+}
+
+static void APIENTRY noopGetQueryObjecti64vEXT(GLuint id, GLenum pname, GLint64EXT *params)
+{
+ noop_warn("glGetQueryObjecti64vEXT");
+}
+
+static void APIENTRY noopGetQueryObjectui64vEXT(GLuint id, GLenum pname, GLuint64EXT *params)
+{
+ noop_warn("glGetQueryObjectui64vEXT");
+}
+
+static void APIENTRY noopEGLImageTargetRenderbufferStorageOES(GLenum target, GLvoid *writeOffset)
+{
+ noop_warn("glEGLImageTargetRenderbufferStorageOES");
+}
+
+static void APIENTRY noopEGLImageTargetTexture2DOES(GLenum target, GLvoid *writeOffset)
+{
+ noop_warn("glEGLImageTargetTexture2DOES");
+}
+
+const mapi_func table_noop_array[] = {
+ (mapi_func) noopNewList,
+ (mapi_func) noopEndList,
+ (mapi_func) noopCallList,
+ (mapi_func) noopCallLists,
+ (mapi_func) noopDeleteLists,
+ (mapi_func) noopGenLists,
+ (mapi_func) noopListBase,
+ (mapi_func) noopBegin,
+ (mapi_func) noopBitmap,
+ (mapi_func) noopColor3b,
+ (mapi_func) noopColor3bv,
+ (mapi_func) noopColor3d,
+ (mapi_func) noopColor3dv,
+ (mapi_func) noopColor3f,
+ (mapi_func) noopColor3fv,
+ (mapi_func) noopColor3i,
+ (mapi_func) noopColor3iv,
+ (mapi_func) noopColor3s,
+ (mapi_func) noopColor3sv,
+ (mapi_func) noopColor3ub,
+ (mapi_func) noopColor3ubv,
+ (mapi_func) noopColor3ui,
+ (mapi_func) noopColor3uiv,
+ (mapi_func) noopColor3us,
+ (mapi_func) noopColor3usv,
+ (mapi_func) noopColor4b,
+ (mapi_func) noopColor4bv,
+ (mapi_func) noopColor4d,
+ (mapi_func) noopColor4dv,
+ (mapi_func) noopColor4f,
+ (mapi_func) noopColor4fv,
+ (mapi_func) noopColor4i,
+ (mapi_func) noopColor4iv,
+ (mapi_func) noopColor4s,
+ (mapi_func) noopColor4sv,
+ (mapi_func) noopColor4ub,
+ (mapi_func) noopColor4ubv,
+ (mapi_func) noopColor4ui,
+ (mapi_func) noopColor4uiv,
+ (mapi_func) noopColor4us,
+ (mapi_func) noopColor4usv,
+ (mapi_func) noopEdgeFlag,
+ (mapi_func) noopEdgeFlagv,
+ (mapi_func) noopEnd,
+ (mapi_func) noopIndexd,
+ (mapi_func) noopIndexdv,
+ (mapi_func) noopIndexf,
+ (mapi_func) noopIndexfv,
+ (mapi_func) noopIndexi,
+ (mapi_func) noopIndexiv,
+ (mapi_func) noopIndexs,
+ (mapi_func) noopIndexsv,
+ (mapi_func) noopNormal3b,
+ (mapi_func) noopNormal3bv,
+ (mapi_func) noopNormal3d,
+ (mapi_func) noopNormal3dv,
+ (mapi_func) noopNormal3f,
+ (mapi_func) noopNormal3fv,
+ (mapi_func) noopNormal3i,
+ (mapi_func) noopNormal3iv,
+ (mapi_func) noopNormal3s,
+ (mapi_func) noopNormal3sv,
+ (mapi_func) noopRasterPos2d,
+ (mapi_func) noopRasterPos2dv,
+ (mapi_func) noopRasterPos2f,
+ (mapi_func) noopRasterPos2fv,
+ (mapi_func) noopRasterPos2i,
+ (mapi_func) noopRasterPos2iv,
+ (mapi_func) noopRasterPos2s,
+ (mapi_func) noopRasterPos2sv,
+ (mapi_func) noopRasterPos3d,
+ (mapi_func) noopRasterPos3dv,
+ (mapi_func) noopRasterPos3f,
+ (mapi_func) noopRasterPos3fv,
+ (mapi_func) noopRasterPos3i,
+ (mapi_func) noopRasterPos3iv,
+ (mapi_func) noopRasterPos3s,
+ (mapi_func) noopRasterPos3sv,
+ (mapi_func) noopRasterPos4d,
+ (mapi_func) noopRasterPos4dv,
+ (mapi_func) noopRasterPos4f,
+ (mapi_func) noopRasterPos4fv,
+ (mapi_func) noopRasterPos4i,
+ (mapi_func) noopRasterPos4iv,
+ (mapi_func) noopRasterPos4s,
+ (mapi_func) noopRasterPos4sv,
+ (mapi_func) noopRectd,
+ (mapi_func) noopRectdv,
+ (mapi_func) noopRectf,
+ (mapi_func) noopRectfv,
+ (mapi_func) noopRecti,
+ (mapi_func) noopRectiv,
+ (mapi_func) noopRects,
+ (mapi_func) noopRectsv,
+ (mapi_func) noopTexCoord1d,
+ (mapi_func) noopTexCoord1dv,
+ (mapi_func) noopTexCoord1f,
+ (mapi_func) noopTexCoord1fv,
+ (mapi_func) noopTexCoord1i,
+ (mapi_func) noopTexCoord1iv,
+ (mapi_func) noopTexCoord1s,
+ (mapi_func) noopTexCoord1sv,
+ (mapi_func) noopTexCoord2d,
+ (mapi_func) noopTexCoord2dv,
+ (mapi_func) noopTexCoord2f,
+ (mapi_func) noopTexCoord2fv,
+ (mapi_func) noopTexCoord2i,
+ (mapi_func) noopTexCoord2iv,
+ (mapi_func) noopTexCoord2s,
+ (mapi_func) noopTexCoord2sv,
+ (mapi_func) noopTexCoord3d,
+ (mapi_func) noopTexCoord3dv,
+ (mapi_func) noopTexCoord3f,
+ (mapi_func) noopTexCoord3fv,
+ (mapi_func) noopTexCoord3i,
+ (mapi_func) noopTexCoord3iv,
+ (mapi_func) noopTexCoord3s,
+ (mapi_func) noopTexCoord3sv,
+ (mapi_func) noopTexCoord4d,
+ (mapi_func) noopTexCoord4dv,
+ (mapi_func) noopTexCoord4f,
+ (mapi_func) noopTexCoord4fv,
+ (mapi_func) noopTexCoord4i,
+ (mapi_func) noopTexCoord4iv,
+ (mapi_func) noopTexCoord4s,
+ (mapi_func) noopTexCoord4sv,
+ (mapi_func) noopVertex2d,
+ (mapi_func) noopVertex2dv,
+ (mapi_func) noopVertex2f,
+ (mapi_func) noopVertex2fv,
+ (mapi_func) noopVertex2i,
+ (mapi_func) noopVertex2iv,
+ (mapi_func) noopVertex2s,
+ (mapi_func) noopVertex2sv,
+ (mapi_func) noopVertex3d,
+ (mapi_func) noopVertex3dv,
+ (mapi_func) noopVertex3f,
+ (mapi_func) noopVertex3fv,
+ (mapi_func) noopVertex3i,
+ (mapi_func) noopVertex3iv,
+ (mapi_func) noopVertex3s,
+ (mapi_func) noopVertex3sv,
+ (mapi_func) noopVertex4d,
+ (mapi_func) noopVertex4dv,
+ (mapi_func) noopVertex4f,
+ (mapi_func) noopVertex4fv,
+ (mapi_func) noopVertex4i,
+ (mapi_func) noopVertex4iv,
+ (mapi_func) noopVertex4s,
+ (mapi_func) noopVertex4sv,
+ (mapi_func) noopClipPlane,
+ (mapi_func) noopColorMaterial,
+ (mapi_func) noopCullFace,
+ (mapi_func) noopFogf,
+ (mapi_func) noopFogfv,
+ (mapi_func) noopFogi,
+ (mapi_func) noopFogiv,
+ (mapi_func) noopFrontFace,
+ (mapi_func) noopHint,
+ (mapi_func) noopLightf,
+ (mapi_func) noopLightfv,
+ (mapi_func) noopLighti,
+ (mapi_func) noopLightiv,
+ (mapi_func) noopLightModelf,
+ (mapi_func) noopLightModelfv,
+ (mapi_func) noopLightModeli,
+ (mapi_func) noopLightModeliv,
+ (mapi_func) noopLineStipple,
+ (mapi_func) noopLineWidth,
+ (mapi_func) noopMaterialf,
+ (mapi_func) noopMaterialfv,
+ (mapi_func) noopMateriali,
+ (mapi_func) noopMaterialiv,
+ (mapi_func) noopPointSize,
+ (mapi_func) noopPolygonMode,
+ (mapi_func) noopPolygonStipple,
+ (mapi_func) noopScissor,
+ (mapi_func) noopShadeModel,
+ (mapi_func) noopTexParameterf,
+ (mapi_func) noopTexParameterfv,
+ (mapi_func) noopTexParameteri,
+ (mapi_func) noopTexParameteriv,
+ (mapi_func) noopTexImage1D,
+ (mapi_func) noopTexImage2D,
+ (mapi_func) noopTexEnvf,
+ (mapi_func) noopTexEnvfv,
+ (mapi_func) noopTexEnvi,
+ (mapi_func) noopTexEnviv,
+ (mapi_func) noopTexGend,
+ (mapi_func) noopTexGendv,
+ (mapi_func) noopTexGenf,
+ (mapi_func) noopTexGenfv,
+ (mapi_func) noopTexGeni,
+ (mapi_func) noopTexGeniv,
+ (mapi_func) noopFeedbackBuffer,
+ (mapi_func) noopSelectBuffer,
+ (mapi_func) noopRenderMode,
+ (mapi_func) noopInitNames,
+ (mapi_func) noopLoadName,
+ (mapi_func) noopPassThrough,
+ (mapi_func) noopPopName,
+ (mapi_func) noopPushName,
+ (mapi_func) noopDrawBuffer,
+ (mapi_func) noopClear,
+ (mapi_func) noopClearAccum,
+ (mapi_func) noopClearIndex,
+ (mapi_func) noopClearColor,
+ (mapi_func) noopClearStencil,
+ (mapi_func) noopClearDepth,
+ (mapi_func) noopStencilMask,
+ (mapi_func) noopColorMask,
+ (mapi_func) noopDepthMask,
+ (mapi_func) noopIndexMask,
+ (mapi_func) noopAccum,
+ (mapi_func) noopDisable,
+ (mapi_func) noopEnable,
+ (mapi_func) noopFinish,
+ (mapi_func) noopFlush,
+ (mapi_func) noopPopAttrib,
+ (mapi_func) noopPushAttrib,
+ (mapi_func) noopMap1d,
+ (mapi_func) noopMap1f,
+ (mapi_func) noopMap2d,
+ (mapi_func) noopMap2f,
+ (mapi_func) noopMapGrid1d,
+ (mapi_func) noopMapGrid1f,
+ (mapi_func) noopMapGrid2d,
+ (mapi_func) noopMapGrid2f,
+ (mapi_func) noopEvalCoord1d,
+ (mapi_func) noopEvalCoord1dv,
+ (mapi_func) noopEvalCoord1f,
+ (mapi_func) noopEvalCoord1fv,
+ (mapi_func) noopEvalCoord2d,
+ (mapi_func) noopEvalCoord2dv,
+ (mapi_func) noopEvalCoord2f,
+ (mapi_func) noopEvalCoord2fv,
+ (mapi_func) noopEvalMesh1,
+ (mapi_func) noopEvalPoint1,
+ (mapi_func) noopEvalMesh2,
+ (mapi_func) noopEvalPoint2,
+ (mapi_func) noopAlphaFunc,
+ (mapi_func) noopBlendFunc,
+ (mapi_func) noopLogicOp,
+ (mapi_func) noopStencilFunc,
+ (mapi_func) noopStencilOp,
+ (mapi_func) noopDepthFunc,
+ (mapi_func) noopPixelZoom,
+ (mapi_func) noopPixelTransferf,
+ (mapi_func) noopPixelTransferi,
+ (mapi_func) noopPixelStoref,
+ (mapi_func) noopPixelStorei,
+ (mapi_func) noopPixelMapfv,
+ (mapi_func) noopPixelMapuiv,
+ (mapi_func) noopPixelMapusv,
+ (mapi_func) noopReadBuffer,
+ (mapi_func) noopCopyPixels,
+ (mapi_func) noopReadPixels,
+ (mapi_func) noopDrawPixels,
+ (mapi_func) noopGetBooleanv,
+ (mapi_func) noopGetClipPlane,
+ (mapi_func) noopGetDoublev,
+ (mapi_func) noopGetError,
+ (mapi_func) noopGetFloatv,
+ (mapi_func) noopGetIntegerv,
+ (mapi_func) noopGetLightfv,
+ (mapi_func) noopGetLightiv,
+ (mapi_func) noopGetMapdv,
+ (mapi_func) noopGetMapfv,
+ (mapi_func) noopGetMapiv,
+ (mapi_func) noopGetMaterialfv,
+ (mapi_func) noopGetMaterialiv,
+ (mapi_func) noopGetPixelMapfv,
+ (mapi_func) noopGetPixelMapuiv,
+ (mapi_func) noopGetPixelMapusv,
+ (mapi_func) noopGetPolygonStipple,
+ (mapi_func) noopGetString,
+ (mapi_func) noopGetTexEnvfv,
+ (mapi_func) noopGetTexEnviv,
+ (mapi_func) noopGetTexGendv,
+ (mapi_func) noopGetTexGenfv,
+ (mapi_func) noopGetTexGeniv,
+ (mapi_func) noopGetTexImage,
+ (mapi_func) noopGetTexParameterfv,
+ (mapi_func) noopGetTexParameteriv,
+ (mapi_func) noopGetTexLevelParameterfv,
+ (mapi_func) noopGetTexLevelParameteriv,
+ (mapi_func) noopIsEnabled,
+ (mapi_func) noopIsList,
+ (mapi_func) noopDepthRange,
+ (mapi_func) noopFrustum,
+ (mapi_func) noopLoadIdentity,
+ (mapi_func) noopLoadMatrixf,
+ (mapi_func) noopLoadMatrixd,
+ (mapi_func) noopMatrixMode,
+ (mapi_func) noopMultMatrixf,
+ (mapi_func) noopMultMatrixd,
+ (mapi_func) noopOrtho,
+ (mapi_func) noopPopMatrix,
+ (mapi_func) noopPushMatrix,
+ (mapi_func) noopRotated,
+ (mapi_func) noopRotatef,
+ (mapi_func) noopScaled,
+ (mapi_func) noopScalef,
+ (mapi_func) noopTranslated,
+ (mapi_func) noopTranslatef,
+ (mapi_func) noopViewport,
+ (mapi_func) noopArrayElement,
+ (mapi_func) noopBindTexture,
+ (mapi_func) noopColorPointer,
+ (mapi_func) noopDisableClientState,
+ (mapi_func) noopDrawArrays,
+ (mapi_func) noopDrawElements,
+ (mapi_func) noopEdgeFlagPointer,
+ (mapi_func) noopEnableClientState,
+ (mapi_func) noopIndexPointer,
+ (mapi_func) noopIndexub,
+ (mapi_func) noopIndexubv,
+ (mapi_func) noopInterleavedArrays,
+ (mapi_func) noopNormalPointer,
+ (mapi_func) noopPolygonOffset,
+ (mapi_func) noopTexCoordPointer,
+ (mapi_func) noopVertexPointer,
+ (mapi_func) noopAreTexturesResident,
+ (mapi_func) noopCopyTexImage1D,
+ (mapi_func) noopCopyTexImage2D,
+ (mapi_func) noopCopyTexSubImage1D,
+ (mapi_func) noopCopyTexSubImage2D,
+ (mapi_func) noopDeleteTextures,
+ (mapi_func) noopGenTextures,
+ (mapi_func) noopGetPointerv,
+ (mapi_func) noopIsTexture,
+ (mapi_func) noopPrioritizeTextures,
+ (mapi_func) noopTexSubImage1D,
+ (mapi_func) noopTexSubImage2D,
+ (mapi_func) noopPopClientAttrib,
+ (mapi_func) noopPushClientAttrib,
+ (mapi_func) noopBlendColor,
+ (mapi_func) noopBlendEquation,
+ (mapi_func) noopDrawRangeElements,
+ (mapi_func) noopColorTable,
+ (mapi_func) noopColorTableParameterfv,
+ (mapi_func) noopColorTableParameteriv,
+ (mapi_func) noopCopyColorTable,
+ (mapi_func) noopGetColorTable,
+ (mapi_func) noopGetColorTableParameterfv,
+ (mapi_func) noopGetColorTableParameteriv,
+ (mapi_func) noopColorSubTable,
+ (mapi_func) noopCopyColorSubTable,
+ (mapi_func) noopConvolutionFilter1D,
+ (mapi_func) noopConvolutionFilter2D,
+ (mapi_func) noopConvolutionParameterf,
+ (mapi_func) noopConvolutionParameterfv,
+ (mapi_func) noopConvolutionParameteri,
+ (mapi_func) noopConvolutionParameteriv,
+ (mapi_func) noopCopyConvolutionFilter1D,
+ (mapi_func) noopCopyConvolutionFilter2D,
+ (mapi_func) noopGetConvolutionFilter,
+ (mapi_func) noopGetConvolutionParameterfv,
+ (mapi_func) noopGetConvolutionParameteriv,
+ (mapi_func) noopGetSeparableFilter,
+ (mapi_func) noopSeparableFilter2D,
+ (mapi_func) noopGetHistogram,
+ (mapi_func) noopGetHistogramParameterfv,
+ (mapi_func) noopGetHistogramParameteriv,
+ (mapi_func) noopGetMinmax,
+ (mapi_func) noopGetMinmaxParameterfv,
+ (mapi_func) noopGetMinmaxParameteriv,
+ (mapi_func) noopHistogram,
+ (mapi_func) noopMinmax,
+ (mapi_func) noopResetHistogram,
+ (mapi_func) noopResetMinmax,
+ (mapi_func) noopTexImage3D,
+ (mapi_func) noopTexSubImage3D,
+ (mapi_func) noopCopyTexSubImage3D,
+ (mapi_func) noopActiveTextureARB,
+ (mapi_func) noopClientActiveTextureARB,
+ (mapi_func) noopMultiTexCoord1dARB,
+ (mapi_func) noopMultiTexCoord1dvARB,
+ (mapi_func) noopMultiTexCoord1fARB,
+ (mapi_func) noopMultiTexCoord1fvARB,
+ (mapi_func) noopMultiTexCoord1iARB,
+ (mapi_func) noopMultiTexCoord1ivARB,
+ (mapi_func) noopMultiTexCoord1sARB,
+ (mapi_func) noopMultiTexCoord1svARB,
+ (mapi_func) noopMultiTexCoord2dARB,
+ (mapi_func) noopMultiTexCoord2dvARB,
+ (mapi_func) noopMultiTexCoord2fARB,
+ (mapi_func) noopMultiTexCoord2fvARB,
+ (mapi_func) noopMultiTexCoord2iARB,
+ (mapi_func) noopMultiTexCoord2ivARB,
+ (mapi_func) noopMultiTexCoord2sARB,
+ (mapi_func) noopMultiTexCoord2svARB,
+ (mapi_func) noopMultiTexCoord3dARB,
+ (mapi_func) noopMultiTexCoord3dvARB,
+ (mapi_func) noopMultiTexCoord3fARB,
+ (mapi_func) noopMultiTexCoord3fvARB,
+ (mapi_func) noopMultiTexCoord3iARB,
+ (mapi_func) noopMultiTexCoord3ivARB,
+ (mapi_func) noopMultiTexCoord3sARB,
+ (mapi_func) noopMultiTexCoord3svARB,
+ (mapi_func) noopMultiTexCoord4dARB,
+ (mapi_func) noopMultiTexCoord4dvARB,
+ (mapi_func) noopMultiTexCoord4fARB,
+ (mapi_func) noopMultiTexCoord4fvARB,
+ (mapi_func) noopMultiTexCoord4iARB,
+ (mapi_func) noopMultiTexCoord4ivARB,
+ (mapi_func) noopMultiTexCoord4sARB,
+ (mapi_func) noopMultiTexCoord4svARB,
+ (mapi_func) noopAttachShader,
+ (mapi_func) noopCreateProgram,
+ (mapi_func) noopCreateShader,
+ (mapi_func) noopDeleteProgram,
+ (mapi_func) noopDeleteShader,
+ (mapi_func) noopDetachShader,
+ (mapi_func) noopGetAttachedShaders,
+ (mapi_func) noopGetProgramInfoLog,
+ (mapi_func) noopGetProgramiv,
+ (mapi_func) noopGetShaderInfoLog,
+ (mapi_func) noopGetShaderiv,
+ (mapi_func) noopIsProgram,
+ (mapi_func) noopIsShader,
+ (mapi_func) noopStencilFuncSeparate,
+ (mapi_func) noopStencilMaskSeparate,
+ (mapi_func) noopStencilOpSeparate,
+ (mapi_func) noopUniformMatrix2x3fv,
+ (mapi_func) noopUniformMatrix2x4fv,
+ (mapi_func) noopUniformMatrix3x2fv,
+ (mapi_func) noopUniformMatrix3x4fv,
+ (mapi_func) noopUniformMatrix4x2fv,
+ (mapi_func) noopUniformMatrix4x3fv,
+ (mapi_func) noopClampColor,
+ (mapi_func) noopClearBufferfi,
+ (mapi_func) noopClearBufferfv,
+ (mapi_func) noopClearBufferiv,
+ (mapi_func) noopClearBufferuiv,
+ (mapi_func) noopGetStringi,
+ (mapi_func) noopTexBuffer,
+ (mapi_func) noopFramebufferTexture,
+ (mapi_func) noopGetBufferParameteri64v,
+ (mapi_func) noopGetInteger64i_v,
+ (mapi_func) noopVertexAttribDivisor,
+ (mapi_func) noopLoadTransposeMatrixdARB,
+ (mapi_func) noopLoadTransposeMatrixfARB,
+ (mapi_func) noopMultTransposeMatrixdARB,
+ (mapi_func) noopMultTransposeMatrixfARB,
+ (mapi_func) noopSampleCoverageARB,
+ (mapi_func) noopCompressedTexImage1DARB,
+ (mapi_func) noopCompressedTexImage2DARB,
+ (mapi_func) noopCompressedTexImage3DARB,
+ (mapi_func) noopCompressedTexSubImage1DARB,
+ (mapi_func) noopCompressedTexSubImage2DARB,
+ (mapi_func) noopCompressedTexSubImage3DARB,
+ (mapi_func) noopGetCompressedTexImageARB,
+ (mapi_func) noopDisableVertexAttribArrayARB,
+ (mapi_func) noopEnableVertexAttribArrayARB,
+ (mapi_func) noopGetProgramEnvParameterdvARB,
+ (mapi_func) noopGetProgramEnvParameterfvARB,
+ (mapi_func) noopGetProgramLocalParameterdvARB,
+ (mapi_func) noopGetProgramLocalParameterfvARB,
+ (mapi_func) noopGetProgramStringARB,
+ (mapi_func) noopGetProgramivARB,
+ (mapi_func) noopGetVertexAttribdvARB,
+ (mapi_func) noopGetVertexAttribfvARB,
+ (mapi_func) noopGetVertexAttribivARB,
+ (mapi_func) noopProgramEnvParameter4dARB,
+ (mapi_func) noopProgramEnvParameter4dvARB,
+ (mapi_func) noopProgramEnvParameter4fARB,
+ (mapi_func) noopProgramEnvParameter4fvARB,
+ (mapi_func) noopProgramLocalParameter4dARB,
+ (mapi_func) noopProgramLocalParameter4dvARB,
+ (mapi_func) noopProgramLocalParameter4fARB,
+ (mapi_func) noopProgramLocalParameter4fvARB,
+ (mapi_func) noopProgramStringARB,
+ (mapi_func) noopVertexAttrib1dARB,
+ (mapi_func) noopVertexAttrib1dvARB,
+ (mapi_func) noopVertexAttrib1fARB,
+ (mapi_func) noopVertexAttrib1fvARB,
+ (mapi_func) noopVertexAttrib1sARB,
+ (mapi_func) noopVertexAttrib1svARB,
+ (mapi_func) noopVertexAttrib2dARB,
+ (mapi_func) noopVertexAttrib2dvARB,
+ (mapi_func) noopVertexAttrib2fARB,
+ (mapi_func) noopVertexAttrib2fvARB,
+ (mapi_func) noopVertexAttrib2sARB,
+ (mapi_func) noopVertexAttrib2svARB,
+ (mapi_func) noopVertexAttrib3dARB,
+ (mapi_func) noopVertexAttrib3dvARB,
+ (mapi_func) noopVertexAttrib3fARB,
+ (mapi_func) noopVertexAttrib3fvARB,
+ (mapi_func) noopVertexAttrib3sARB,
+ (mapi_func) noopVertexAttrib3svARB,
+ (mapi_func) noopVertexAttrib4NbvARB,
+ (mapi_func) noopVertexAttrib4NivARB,
+ (mapi_func) noopVertexAttrib4NsvARB,
+ (mapi_func) noopVertexAttrib4NubARB,
+ (mapi_func) noopVertexAttrib4NubvARB,
+ (mapi_func) noopVertexAttrib4NuivARB,
+ (mapi_func) noopVertexAttrib4NusvARB,
+ (mapi_func) noopVertexAttrib4bvARB,
+ (mapi_func) noopVertexAttrib4dARB,
+ (mapi_func) noopVertexAttrib4dvARB,
+ (mapi_func) noopVertexAttrib4fARB,
+ (mapi_func) noopVertexAttrib4fvARB,
+ (mapi_func) noopVertexAttrib4ivARB,
+ (mapi_func) noopVertexAttrib4sARB,
+ (mapi_func) noopVertexAttrib4svARB,
+ (mapi_func) noopVertexAttrib4ubvARB,
+ (mapi_func) noopVertexAttrib4uivARB,
+ (mapi_func) noopVertexAttrib4usvARB,
+ (mapi_func) noopVertexAttribPointerARB,
+ (mapi_func) noopBindBufferARB,
+ (mapi_func) noopBufferDataARB,
+ (mapi_func) noopBufferSubDataARB,
+ (mapi_func) noopDeleteBuffersARB,
+ (mapi_func) noopGenBuffersARB,
+ (mapi_func) noopGetBufferParameterivARB,
+ (mapi_func) noopGetBufferPointervARB,
+ (mapi_func) noopGetBufferSubDataARB,
+ (mapi_func) noopIsBufferARB,
+ (mapi_func) noopMapBufferARB,
+ (mapi_func) noopUnmapBufferARB,
+ (mapi_func) noopBeginQueryARB,
+ (mapi_func) noopDeleteQueriesARB,
+ (mapi_func) noopEndQueryARB,
+ (mapi_func) noopGenQueriesARB,
+ (mapi_func) noopGetQueryObjectivARB,
+ (mapi_func) noopGetQueryObjectuivARB,
+ (mapi_func) noopGetQueryivARB,
+ (mapi_func) noopIsQueryARB,
+ (mapi_func) noopAttachObjectARB,
+ (mapi_func) noopCompileShaderARB,
+ (mapi_func) noopCreateProgramObjectARB,
+ (mapi_func) noopCreateShaderObjectARB,
+ (mapi_func) noopDeleteObjectARB,
+ (mapi_func) noopDetachObjectARB,
+ (mapi_func) noopGetActiveUniformARB,
+ (mapi_func) noopGetAttachedObjectsARB,
+ (mapi_func) noopGetHandleARB,
+ (mapi_func) noopGetInfoLogARB,
+ (mapi_func) noopGetObjectParameterfvARB,
+ (mapi_func) noopGetObjectParameterivARB,
+ (mapi_func) noopGetShaderSourceARB,
+ (mapi_func) noopGetUniformLocationARB,
+ (mapi_func) noopGetUniformfvARB,
+ (mapi_func) noopGetUniformivARB,
+ (mapi_func) noopLinkProgramARB,
+ (mapi_func) noopShaderSourceARB,
+ (mapi_func) noopUniform1fARB,
+ (mapi_func) noopUniform1fvARB,
+ (mapi_func) noopUniform1iARB,
+ (mapi_func) noopUniform1ivARB,
+ (mapi_func) noopUniform2fARB,
+ (mapi_func) noopUniform2fvARB,
+ (mapi_func) noopUniform2iARB,
+ (mapi_func) noopUniform2ivARB,
+ (mapi_func) noopUniform3fARB,
+ (mapi_func) noopUniform3fvARB,
+ (mapi_func) noopUniform3iARB,
+ (mapi_func) noopUniform3ivARB,
+ (mapi_func) noopUniform4fARB,
+ (mapi_func) noopUniform4fvARB,
+ (mapi_func) noopUniform4iARB,
+ (mapi_func) noopUniform4ivARB,
+ (mapi_func) noopUniformMatrix2fvARB,
+ (mapi_func) noopUniformMatrix3fvARB,
+ (mapi_func) noopUniformMatrix4fvARB,
+ (mapi_func) noopUseProgramObjectARB,
+ (mapi_func) noopValidateProgramARB,
+ (mapi_func) noopBindAttribLocationARB,
+ (mapi_func) noopGetActiveAttribARB,
+ (mapi_func) noopGetAttribLocationARB,
+ (mapi_func) noopDrawBuffersARB,
+ (mapi_func) noopDrawArraysInstancedARB,
+ (mapi_func) noopDrawElementsInstancedARB,
+ (mapi_func) noopRenderbufferStorageMultisample,
+ (mapi_func) noopFramebufferTextureARB,
+ (mapi_func) noopFramebufferTextureFaceARB,
+ (mapi_func) noopProgramParameteriARB,
+ (mapi_func) noopVertexAttribDivisorARB,
+ (mapi_func) noopFlushMappedBufferRange,
+ (mapi_func) noopMapBufferRange,
+ (mapi_func) noopBindVertexArray,
+ (mapi_func) noopGenVertexArrays,
+ (mapi_func) noopCopyBufferSubData,
+ (mapi_func) noopClientWaitSync,
+ (mapi_func) noopDeleteSync,
+ (mapi_func) noopFenceSync,
+ (mapi_func) noopGetInteger64v,
+ (mapi_func) noopGetSynciv,
+ (mapi_func) noopIsSync,
+ (mapi_func) noopWaitSync,
+ (mapi_func) noopDrawElementsBaseVertex,
+ (mapi_func) noopDrawRangeElementsBaseVertex,
+ (mapi_func) noopMultiDrawElementsBaseVertex,
+ (mapi_func) noopBlendEquationSeparateiARB,
+ (mapi_func) noopBlendEquationiARB,
+ (mapi_func) noopBlendFuncSeparateiARB,
+ (mapi_func) noopBlendFunciARB,
+ (mapi_func) noopBindTransformFeedback,
+ (mapi_func) noopDeleteTransformFeedbacks,
+ (mapi_func) noopDrawTransformFeedback,
+ (mapi_func) noopGenTransformFeedbacks,
+ (mapi_func) noopIsTransformFeedback,
+ (mapi_func) noopPauseTransformFeedback,
+ (mapi_func) noopResumeTransformFeedback,
+ (mapi_func) noopClearDepthf,
+ (mapi_func) noopDepthRangef,
+ (mapi_func) noopGetShaderPrecisionFormat,
+ (mapi_func) noopReleaseShaderCompiler,
+ (mapi_func) noopShaderBinary,
+ (mapi_func) noopGetProgramBinary,
+ (mapi_func) noopProgramBinary,
+ (mapi_func) noopProgramParameteri,
+ (mapi_func) noopPolygonOffsetEXT,
+ (mapi_func) noopDrawTexfOES,
+ (mapi_func) noopDrawTexfvOES,
+ (mapi_func) noopDrawTexiOES,
+ (mapi_func) noopDrawTexivOES,
+ (mapi_func) noopDrawTexsOES,
+ (mapi_func) noopDrawTexsvOES,
+ (mapi_func) noopDrawTexxOES,
+ (mapi_func) noopDrawTexxvOES,
+ (mapi_func) noopPointSizePointerOES,
+ (mapi_func) noopGetPixelTexGenParameterfvSGIS,
+ (mapi_func) noopGetPixelTexGenParameterivSGIS,
+ (mapi_func) noopPixelTexGenParameterfSGIS,
+ (mapi_func) noopPixelTexGenParameterfvSGIS,
+ (mapi_func) noopPixelTexGenParameteriSGIS,
+ (mapi_func) noopPixelTexGenParameterivSGIS,
+ (mapi_func) noopQueryMatrixxOES,
+ (mapi_func) noopSampleMaskSGIS,
+ (mapi_func) noopSamplePatternSGIS,
+ (mapi_func) noopColorPointerEXT,
+ (mapi_func) noopEdgeFlagPointerEXT,
+ (mapi_func) noopIndexPointerEXT,
+ (mapi_func) noopNormalPointerEXT,
+ (mapi_func) noopTexCoordPointerEXT,
+ (mapi_func) noopVertexPointerEXT,
+ (mapi_func) noopPointParameterfEXT,
+ (mapi_func) noopPointParameterfvEXT,
+ (mapi_func) noopLockArraysEXT,
+ (mapi_func) noopUnlockArraysEXT,
+ (mapi_func) noopSecondaryColor3bEXT,
+ (mapi_func) noopSecondaryColor3bvEXT,
+ (mapi_func) noopSecondaryColor3dEXT,
+ (mapi_func) noopSecondaryColor3dvEXT,
+ (mapi_func) noopSecondaryColor3fEXT,
+ (mapi_func) noopSecondaryColor3fvEXT,
+ (mapi_func) noopSecondaryColor3iEXT,
+ (mapi_func) noopSecondaryColor3ivEXT,
+ (mapi_func) noopSecondaryColor3sEXT,
+ (mapi_func) noopSecondaryColor3svEXT,
+ (mapi_func) noopSecondaryColor3ubEXT,
+ (mapi_func) noopSecondaryColor3ubvEXT,
+ (mapi_func) noopSecondaryColor3uiEXT,
+ (mapi_func) noopSecondaryColor3uivEXT,
+ (mapi_func) noopSecondaryColor3usEXT,
+ (mapi_func) noopSecondaryColor3usvEXT,
+ (mapi_func) noopSecondaryColorPointerEXT,
+ (mapi_func) noopMultiDrawArraysEXT,
+ (mapi_func) noopMultiDrawElementsEXT,
+ (mapi_func) noopFogCoordPointerEXT,
+ (mapi_func) noopFogCoorddEXT,
+ (mapi_func) noopFogCoorddvEXT,
+ (mapi_func) noopFogCoordfEXT,
+ (mapi_func) noopFogCoordfvEXT,
+ (mapi_func) noopPixelTexGenSGIX,
+ (mapi_func) noopBlendFuncSeparateEXT,
+ (mapi_func) noopFlushVertexArrayRangeNV,
+ (mapi_func) noopVertexArrayRangeNV,
+ (mapi_func) noopCombinerInputNV,
+ (mapi_func) noopCombinerOutputNV,
+ (mapi_func) noopCombinerParameterfNV,
+ (mapi_func) noopCombinerParameterfvNV,
+ (mapi_func) noopCombinerParameteriNV,
+ (mapi_func) noopCombinerParameterivNV,
+ (mapi_func) noopFinalCombinerInputNV,
+ (mapi_func) noopGetCombinerInputParameterfvNV,
+ (mapi_func) noopGetCombinerInputParameterivNV,
+ (mapi_func) noopGetCombinerOutputParameterfvNV,
+ (mapi_func) noopGetCombinerOutputParameterivNV,
+ (mapi_func) noopGetFinalCombinerInputParameterfvNV,
+ (mapi_func) noopGetFinalCombinerInputParameterivNV,
+ (mapi_func) noopResizeBuffersMESA,
+ (mapi_func) noopWindowPos2dMESA,
+ (mapi_func) noopWindowPos2dvMESA,
+ (mapi_func) noopWindowPos2fMESA,
+ (mapi_func) noopWindowPos2fvMESA,
+ (mapi_func) noopWindowPos2iMESA,
+ (mapi_func) noopWindowPos2ivMESA,
+ (mapi_func) noopWindowPos2sMESA,
+ (mapi_func) noopWindowPos2svMESA,
+ (mapi_func) noopWindowPos3dMESA,
+ (mapi_func) noopWindowPos3dvMESA,
+ (mapi_func) noopWindowPos3fMESA,
+ (mapi_func) noopWindowPos3fvMESA,
+ (mapi_func) noopWindowPos3iMESA,
+ (mapi_func) noopWindowPos3ivMESA,
+ (mapi_func) noopWindowPos3sMESA,
+ (mapi_func) noopWindowPos3svMESA,
+ (mapi_func) noopWindowPos4dMESA,
+ (mapi_func) noopWindowPos4dvMESA,
+ (mapi_func) noopWindowPos4fMESA,
+ (mapi_func) noopWindowPos4fvMESA,
+ (mapi_func) noopWindowPos4iMESA,
+ (mapi_func) noopWindowPos4ivMESA,
+ (mapi_func) noopWindowPos4sMESA,
+ (mapi_func) noopWindowPos4svMESA,
+ (mapi_func) noopMultiModeDrawArraysIBM,
+ (mapi_func) noopMultiModeDrawElementsIBM,
+ (mapi_func) noopDeleteFencesNV,
+ (mapi_func) noopFinishFenceNV,
+ (mapi_func) noopGenFencesNV,
+ (mapi_func) noopGetFenceivNV,
+ (mapi_func) noopIsFenceNV,
+ (mapi_func) noopSetFenceNV,
+ (mapi_func) noopTestFenceNV,
+ (mapi_func) noopAreProgramsResidentNV,
+ (mapi_func) noopBindProgramNV,
+ (mapi_func) noopDeleteProgramsNV,
+ (mapi_func) noopExecuteProgramNV,
+ (mapi_func) noopGenProgramsNV,
+ (mapi_func) noopGetProgramParameterdvNV,
+ (mapi_func) noopGetProgramParameterfvNV,
+ (mapi_func) noopGetProgramStringNV,
+ (mapi_func) noopGetProgramivNV,
+ (mapi_func) noopGetTrackMatrixivNV,
+ (mapi_func) noopGetVertexAttribPointervNV,
+ (mapi_func) noopGetVertexAttribdvNV,
+ (mapi_func) noopGetVertexAttribfvNV,
+ (mapi_func) noopGetVertexAttribivNV,
+ (mapi_func) noopIsProgramNV,
+ (mapi_func) noopLoadProgramNV,
+ (mapi_func) noopProgramParameters4dvNV,
+ (mapi_func) noopProgramParameters4fvNV,
+ (mapi_func) noopRequestResidentProgramsNV,
+ (mapi_func) noopTrackMatrixNV,
+ (mapi_func) noopVertexAttrib1dNV,
+ (mapi_func) noopVertexAttrib1dvNV,
+ (mapi_func) noopVertexAttrib1fNV,
+ (mapi_func) noopVertexAttrib1fvNV,
+ (mapi_func) noopVertexAttrib1sNV,
+ (mapi_func) noopVertexAttrib1svNV,
+ (mapi_func) noopVertexAttrib2dNV,
+ (mapi_func) noopVertexAttrib2dvNV,
+ (mapi_func) noopVertexAttrib2fNV,
+ (mapi_func) noopVertexAttrib2fvNV,
+ (mapi_func) noopVertexAttrib2sNV,
+ (mapi_func) noopVertexAttrib2svNV,
+ (mapi_func) noopVertexAttrib3dNV,
+ (mapi_func) noopVertexAttrib3dvNV,
+ (mapi_func) noopVertexAttrib3fNV,
+ (mapi_func) noopVertexAttrib3fvNV,
+ (mapi_func) noopVertexAttrib3sNV,
+ (mapi_func) noopVertexAttrib3svNV,
+ (mapi_func) noopVertexAttrib4dNV,
+ (mapi_func) noopVertexAttrib4dvNV,
+ (mapi_func) noopVertexAttrib4fNV,
+ (mapi_func) noopVertexAttrib4fvNV,
+ (mapi_func) noopVertexAttrib4sNV,
+ (mapi_func) noopVertexAttrib4svNV,
+ (mapi_func) noopVertexAttrib4ubNV,
+ (mapi_func) noopVertexAttrib4ubvNV,
+ (mapi_func) noopVertexAttribPointerNV,
+ (mapi_func) noopVertexAttribs1dvNV,
+ (mapi_func) noopVertexAttribs1fvNV,
+ (mapi_func) noopVertexAttribs1svNV,
+ (mapi_func) noopVertexAttribs2dvNV,
+ (mapi_func) noopVertexAttribs2fvNV,
+ (mapi_func) noopVertexAttribs2svNV,
+ (mapi_func) noopVertexAttribs3dvNV,
+ (mapi_func) noopVertexAttribs3fvNV,
+ (mapi_func) noopVertexAttribs3svNV,
+ (mapi_func) noopVertexAttribs4dvNV,
+ (mapi_func) noopVertexAttribs4fvNV,
+ (mapi_func) noopVertexAttribs4svNV,
+ (mapi_func) noopVertexAttribs4ubvNV,
+ (mapi_func) noopGetTexBumpParameterfvATI,
+ (mapi_func) noopGetTexBumpParameterivATI,
+ (mapi_func) noopTexBumpParameterfvATI,
+ (mapi_func) noopTexBumpParameterivATI,
+ (mapi_func) noopAlphaFragmentOp1ATI,
+ (mapi_func) noopAlphaFragmentOp2ATI,
+ (mapi_func) noopAlphaFragmentOp3ATI,
+ (mapi_func) noopBeginFragmentShaderATI,
+ (mapi_func) noopBindFragmentShaderATI,
+ (mapi_func) noopColorFragmentOp1ATI,
+ (mapi_func) noopColorFragmentOp2ATI,
+ (mapi_func) noopColorFragmentOp3ATI,
+ (mapi_func) noopDeleteFragmentShaderATI,
+ (mapi_func) noopEndFragmentShaderATI,
+ (mapi_func) noopGenFragmentShadersATI,
+ (mapi_func) noopPassTexCoordATI,
+ (mapi_func) noopSampleMapATI,
+ (mapi_func) noopSetFragmentShaderConstantATI,
+ (mapi_func) noopPointParameteriNV,
+ (mapi_func) noopPointParameterivNV,
+ (mapi_func) noopActiveStencilFaceEXT,
+ (mapi_func) noopBindVertexArrayAPPLE,
+ (mapi_func) noopDeleteVertexArraysAPPLE,
+ (mapi_func) noopGenVertexArraysAPPLE,
+ (mapi_func) noopIsVertexArrayAPPLE,
+ (mapi_func) noopGetProgramNamedParameterdvNV,
+ (mapi_func) noopGetProgramNamedParameterfvNV,
+ (mapi_func) noopProgramNamedParameter4dNV,
+ (mapi_func) noopProgramNamedParameter4dvNV,
+ (mapi_func) noopProgramNamedParameter4fNV,
+ (mapi_func) noopProgramNamedParameter4fvNV,
+ (mapi_func) noopPrimitiveRestartIndexNV,
+ (mapi_func) noopPrimitiveRestartNV,
+ (mapi_func) noopAlphaFuncxOES,
+ (mapi_func) noopClearColorxOES,
+ (mapi_func) noopClearDepthxOES,
+ (mapi_func) noopClipPlanexOES,
+ (mapi_func) noopColor4xOES,
+ (mapi_func) noopDepthRangexOES,
+ (mapi_func) noopFogxOES,
+ (mapi_func) noopFogxvOES,
+ (mapi_func) noopFrustumxOES,
+ (mapi_func) noopGetClipPlanexOES,
+ (mapi_func) noopGetFixedvOES,
+ (mapi_func) noopGetLightxvOES,
+ (mapi_func) noopGetMaterialxvOES,
+ (mapi_func) noopGetTexEnvxvOES,
+ (mapi_func) noopGetTexGenxvOES,
+ (mapi_func) noopGetTexParameterxvOES,
+ (mapi_func) noopLightModelxOES,
+ (mapi_func) noopLightModelxvOES,
+ (mapi_func) noopLightxOES,
+ (mapi_func) noopLightxvOES,
+ (mapi_func) noopLineWidthxOES,
+ (mapi_func) noopLoadMatrixxOES,
+ (mapi_func) noopMaterialxOES,
+ (mapi_func) noopMaterialxvOES,
+ (mapi_func) noopMultMatrixxOES,
+ (mapi_func) noopMultiTexCoord4xOES,
+ (mapi_func) noopNormal3xOES,
+ (mapi_func) noopOrthoxOES,
+ (mapi_func) noopPointParameterxOES,
+ (mapi_func) noopPointParameterxvOES,
+ (mapi_func) noopPointSizexOES,
+ (mapi_func) noopPolygonOffsetxOES,
+ (mapi_func) noopRotatexOES,
+ (mapi_func) noopSampleCoveragexOES,
+ (mapi_func) noopScalexOES,
+ (mapi_func) noopTexEnvxOES,
+ (mapi_func) noopTexEnvxvOES,
+ (mapi_func) noopTexGenxOES,
+ (mapi_func) noopTexGenxvOES,
+ (mapi_func) noopTexParameterxOES,
+ (mapi_func) noopTexParameterxvOES,
+ (mapi_func) noopTranslatexOES,
+ (mapi_func) noopClipPlanefOES,
+ (mapi_func) noopFrustumfOES,
+ (mapi_func) noopGetClipPlanefOES,
+ (mapi_func) noopOrthofOES,
+ (mapi_func) noopDepthBoundsEXT,
+ (mapi_func) noopBlendEquationSeparateEXT,
+ (mapi_func) noopBindFramebufferEXT,
+ (mapi_func) noopBindRenderbufferEXT,
+ (mapi_func) noopCheckFramebufferStatusEXT,
+ (mapi_func) noopDeleteFramebuffersEXT,
+ (mapi_func) noopDeleteRenderbuffersEXT,
+ (mapi_func) noopFramebufferRenderbufferEXT,
+ (mapi_func) noopFramebufferTexture1DEXT,
+ (mapi_func) noopFramebufferTexture2DEXT,
+ (mapi_func) noopFramebufferTexture3DEXT,
+ (mapi_func) noopGenFramebuffersEXT,
+ (mapi_func) noopGenRenderbuffersEXT,
+ (mapi_func) noopGenerateMipmapEXT,
+ (mapi_func) noopGetFramebufferAttachmentParameterivEXT,
+ (mapi_func) noopGetRenderbufferParameterivEXT,
+ (mapi_func) noopIsFramebufferEXT,
+ (mapi_func) noopIsRenderbufferEXT,
+ (mapi_func) noopRenderbufferStorageEXT,
+ (mapi_func) noopBlitFramebufferEXT,
+ (mapi_func) noopBufferParameteriAPPLE,
+ (mapi_func) noopFlushMappedBufferRangeAPPLE,
+ (mapi_func) noopBindFragDataLocationEXT,
+ (mapi_func) noopGetFragDataLocationEXT,
+ (mapi_func) noopGetUniformuivEXT,
+ (mapi_func) noopGetVertexAttribIivEXT,
+ (mapi_func) noopGetVertexAttribIuivEXT,
+ (mapi_func) noopUniform1uiEXT,
+ (mapi_func) noopUniform1uivEXT,
+ (mapi_func) noopUniform2uiEXT,
+ (mapi_func) noopUniform2uivEXT,
+ (mapi_func) noopUniform3uiEXT,
+ (mapi_func) noopUniform3uivEXT,
+ (mapi_func) noopUniform4uiEXT,
+ (mapi_func) noopUniform4uivEXT,
+ (mapi_func) noopVertexAttribI1iEXT,
+ (mapi_func) noopVertexAttribI1ivEXT,
+ (mapi_func) noopVertexAttribI1uiEXT,
+ (mapi_func) noopVertexAttribI1uivEXT,
+ (mapi_func) noopVertexAttribI2iEXT,
+ (mapi_func) noopVertexAttribI2ivEXT,
+ (mapi_func) noopVertexAttribI2uiEXT,
+ (mapi_func) noopVertexAttribI2uivEXT,
+ (mapi_func) noopVertexAttribI3iEXT,
+ (mapi_func) noopVertexAttribI3ivEXT,
+ (mapi_func) noopVertexAttribI3uiEXT,
+ (mapi_func) noopVertexAttribI3uivEXT,
+ (mapi_func) noopVertexAttribI4bvEXT,
+ (mapi_func) noopVertexAttribI4iEXT,
+ (mapi_func) noopVertexAttribI4ivEXT,
+ (mapi_func) noopVertexAttribI4svEXT,
+ (mapi_func) noopVertexAttribI4ubvEXT,
+ (mapi_func) noopVertexAttribI4uiEXT,
+ (mapi_func) noopVertexAttribI4uivEXT,
+ (mapi_func) noopVertexAttribI4usvEXT,
+ (mapi_func) noopVertexAttribIPointerEXT,
+ (mapi_func) noopFramebufferTextureLayerEXT,
+ (mapi_func) noopColorMaskIndexedEXT,
+ (mapi_func) noopDisableIndexedEXT,
+ (mapi_func) noopEnableIndexedEXT,
+ (mapi_func) noopGetBooleanIndexedvEXT,
+ (mapi_func) noopGetIntegerIndexedvEXT,
+ (mapi_func) noopIsEnabledIndexedEXT,
+ (mapi_func) noopClearColorIiEXT,
+ (mapi_func) noopClearColorIuiEXT,
+ (mapi_func) noopGetTexParameterIivEXT,
+ (mapi_func) noopGetTexParameterIuivEXT,
+ (mapi_func) noopTexParameterIivEXT,
+ (mapi_func) noopTexParameterIuivEXT,
+ (mapi_func) noopBeginConditionalRenderNV,
+ (mapi_func) noopEndConditionalRenderNV,
+ (mapi_func) noopBeginTransformFeedbackEXT,
+ (mapi_func) noopBindBufferBaseEXT,
+ (mapi_func) noopBindBufferOffsetEXT,
+ (mapi_func) noopBindBufferRangeEXT,
+ (mapi_func) noopEndTransformFeedbackEXT,
+ (mapi_func) noopGetTransformFeedbackVaryingEXT,
+ (mapi_func) noopTransformFeedbackVaryingsEXT,
+ (mapi_func) noopProvokingVertexEXT,
+ (mapi_func) noopGetTexParameterPointervAPPLE,
+ (mapi_func) noopTextureRangeAPPLE,
+ (mapi_func) noopGetObjectParameterivAPPLE,
+ (mapi_func) noopObjectPurgeableAPPLE,
+ (mapi_func) noopObjectUnpurgeableAPPLE,
+ (mapi_func) noopActiveProgramEXT,
+ (mapi_func) noopCreateShaderProgramEXT,
+ (mapi_func) noopUseShaderProgramEXT,
+ (mapi_func) noopTextureBarrierNV,
+ (mapi_func) noopStencilFuncSeparateATI,
+ (mapi_func) noopProgramEnvParameters4fvEXT,
+ (mapi_func) noopProgramLocalParameters4fvEXT,
+ (mapi_func) noopGetQueryObjecti64vEXT,
+ (mapi_func) noopGetQueryObjectui64vEXT,
+ (mapi_func) noopEGLImageTargetRenderbufferStorageOES,
+ (mapi_func) noopEGLImageTargetTexture2DOES,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic
+};
+
+#else /* DEBUG */
+
+const mapi_func table_noop_array[] = {
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic,
+ (mapi_func) noop_generic
+};
+
+#endif /* DEBUG */
+#undef MAPI_TMP_NOOP_ARRAY
+#endif /* MAPI_TMP_NOOP_ARRAY */
+
+#ifdef MAPI_TMP_PUBLIC_STUBS
+static const char public_string_pool[] =
+ "Accum\0"
+ "ActiveProgramEXT\0"
+ "ActiveStencilFaceEXT\0"
+ "ActiveTexture\0"
+ "ActiveTextureARB\0"
+ "AlphaFragmentOp1ATI\0"
+ "AlphaFragmentOp2ATI\0"
+ "AlphaFragmentOp3ATI\0"
+ "AlphaFunc\0"
+ "AlphaFuncx\0"
+ "AlphaFuncxOES\0"
+ "AreProgramsResidentNV\0"
+ "AreTexturesResident\0"
+ "AreTexturesResidentEXT\0"
+ "ArrayElement\0"
+ "ArrayElementEXT\0"
+ "AttachObjectARB\0"
+ "AttachShader\0"
+ "Begin\0"
+ "BeginConditionalRender\0"
+ "BeginConditionalRenderNV\0"
+ "BeginFragmentShaderATI\0"
+ "BeginQuery\0"
+ "BeginQueryARB\0"
+ "BeginTransformFeedback\0"
+ "BeginTransformFeedbackEXT\0"
+ "BindAttribLocation\0"
+ "BindAttribLocationARB\0"
+ "BindBuffer\0"
+ "BindBufferARB\0"
+ "BindBufferBase\0"
+ "BindBufferBaseEXT\0"
+ "BindBufferOffsetEXT\0"
+ "BindBufferRange\0"
+ "BindBufferRangeEXT\0"
+ "BindFragDataLocation\0"
+ "BindFragDataLocationEXT\0"
+ "BindFragmentShaderATI\0"
+ "BindFramebuffer\0"
+ "BindFramebufferEXT\0"
+ "BindFramebufferOES\0"
+ "BindProgramARB\0"
+ "BindProgramNV\0"
+ "BindRenderbuffer\0"
+ "BindRenderbufferEXT\0"
+ "BindRenderbufferOES\0"
+ "BindTexture\0"
+ "BindTextureEXT\0"
+ "BindTransformFeedback\0"
+ "BindVertexArray\0"
+ "BindVertexArrayAPPLE\0"
+ "Bitmap\0"
+ "BlendColor\0"
+ "BlendColorEXT\0"
+ "BlendEquation\0"
+ "BlendEquationEXT\0"
+ "BlendEquationOES\0"
+ "BlendEquationSeparate\0"
+ "BlendEquationSeparateATI\0"
+ "BlendEquationSeparateEXT\0"
+ "BlendEquationSeparateOES\0"
+ "BlendEquationSeparateiARB\0"
+ "BlendEquationiARB\0"
+ "BlendFunc\0"
+ "BlendFuncSeparate\0"
+ "BlendFuncSeparateEXT\0"
+ "BlendFuncSeparateINGR\0"
+ "BlendFuncSeparateOES\0"
+ "BlendFuncSeparateiARB\0"
+ "BlendFunciARB\0"
+ "BlitFramebuffer\0"
+ "BlitFramebufferEXT\0"
+ "BufferData\0"
+ "BufferDataARB\0"
+ "BufferParameteriAPPLE\0"
+ "BufferSubData\0"
+ "BufferSubDataARB\0"
+ "CallList\0"
+ "CallLists\0"
+ "CheckFramebufferStatus\0"
+ "CheckFramebufferStatusEXT\0"
+ "CheckFramebufferStatusOES\0"
+ "ClampColor\0"
+ "Clear\0"
+ "ClearAccum\0"
+ "ClearBufferfi\0"
+ "ClearBufferfv\0"
+ "ClearBufferiv\0"
+ "ClearBufferuiv\0"
+ "ClearColor\0"
+ "ClearColorIiEXT\0"
+ "ClearColorIuiEXT\0"
+ "ClearColorx\0"
+ "ClearColorxOES\0"
+ "ClearDepth\0"
+ "ClearDepthf\0"
+ "ClearDepthfOES\0"
+ "ClearDepthx\0"
+ "ClearDepthxOES\0"
+ "ClearIndex\0"
+ "ClearStencil\0"
+ "ClientActiveTexture\0"
+ "ClientActiveTextureARB\0"
+ "ClientWaitSync\0"
+ "ClipPlane\0"
+ "ClipPlanef\0"
+ "ClipPlanefOES\0"
+ "ClipPlanex\0"
+ "ClipPlanexOES\0"
+ "Color3b\0"
+ "Color3bv\0"
+ "Color3d\0"
+ "Color3dv\0"
+ "Color3f\0"
+ "Color3fv\0"
+ "Color3i\0"
+ "Color3iv\0"
+ "Color3s\0"
+ "Color3sv\0"
+ "Color3ub\0"
+ "Color3ubv\0"
+ "Color3ui\0"
+ "Color3uiv\0"
+ "Color3us\0"
+ "Color3usv\0"
+ "Color4b\0"
+ "Color4bv\0"
+ "Color4d\0"
+ "Color4dv\0"
+ "Color4f\0"
+ "Color4fv\0"
+ "Color4i\0"
+ "Color4iv\0"
+ "Color4s\0"
+ "Color4sv\0"
+ "Color4ub\0"
+ "Color4ubv\0"
+ "Color4ui\0"
+ "Color4uiv\0"
+ "Color4us\0"
+ "Color4usv\0"
+ "Color4x\0"
+ "Color4xOES\0"
+ "ColorFragmentOp1ATI\0"
+ "ColorFragmentOp2ATI\0"
+ "ColorFragmentOp3ATI\0"
+ "ColorMask\0"
+ "ColorMaskIndexedEXT\0"
+ "ColorMaski\0"
+ "ColorMaterial\0"
+ "ColorPointer\0"
+ "ColorPointerEXT\0"
+ "ColorSubTable\0"
+ "ColorSubTableEXT\0"
+ "ColorTable\0"
+ "ColorTableEXT\0"
+ "ColorTableParameterfv\0"
+ "ColorTableParameterfvSGI\0"
+ "ColorTableParameteriv\0"
+ "ColorTableParameterivSGI\0"
+ "ColorTableSGI\0"
+ "CombinerInputNV\0"
+ "CombinerOutputNV\0"
+ "CombinerParameterfNV\0"
+ "CombinerParameterfvNV\0"
+ "CombinerParameteriNV\0"
+ "CombinerParameterivNV\0"
+ "CompileShader\0"
+ "CompileShaderARB\0"
+ "CompressedTexImage1D\0"
+ "CompressedTexImage1DARB\0"
+ "CompressedTexImage2D\0"
+ "CompressedTexImage2DARB\0"
+ "CompressedTexImage3D\0"
+ "CompressedTexImage3DARB\0"
+ "CompressedTexImage3DOES\0"
+ "CompressedTexSubImage1D\0"
+ "CompressedTexSubImage1DARB\0"
+ "CompressedTexSubImage2D\0"
+ "CompressedTexSubImage2DARB\0"
+ "CompressedTexSubImage3D\0"
+ "CompressedTexSubImage3DARB\0"
+ "CompressedTexSubImage3DOES\0"
+ "ConvolutionFilter1D\0"
+ "ConvolutionFilter1DEXT\0"
+ "ConvolutionFilter2D\0"
+ "ConvolutionFilter2DEXT\0"
+ "ConvolutionParameterf\0"
+ "ConvolutionParameterfEXT\0"
+ "ConvolutionParameterfv\0"
+ "ConvolutionParameterfvEXT\0"
+ "ConvolutionParameteri\0"
+ "ConvolutionParameteriEXT\0"
+ "ConvolutionParameteriv\0"
+ "ConvolutionParameterivEXT\0"
+ "CopyBufferSubData\0"
+ "CopyColorSubTable\0"
+ "CopyColorSubTableEXT\0"
+ "CopyColorTable\0"
+ "CopyColorTableSGI\0"
+ "CopyConvolutionFilter1D\0"
+ "CopyConvolutionFilter1DEXT\0"
+ "CopyConvolutionFilter2D\0"
+ "CopyConvolutionFilter2DEXT\0"
+ "CopyPixels\0"
+ "CopyTexImage1D\0"
+ "CopyTexImage1DEXT\0"
+ "CopyTexImage2D\0"
+ "CopyTexImage2DEXT\0"
+ "CopyTexSubImage1D\0"
+ "CopyTexSubImage1DEXT\0"
+ "CopyTexSubImage2D\0"
+ "CopyTexSubImage2DEXT\0"
+ "CopyTexSubImage3D\0"
+ "CopyTexSubImage3DEXT\0"
+ "CopyTexSubImage3DOES\0"
+ "CreateProgram\0"
+ "CreateProgramObjectARB\0"
+ "CreateShader\0"
+ "CreateShaderObjectARB\0"
+ "CreateShaderProgramEXT\0"
+ "CullFace\0"
+ "DeleteBuffers\0"
+ "DeleteBuffersARB\0"
+ "DeleteFencesNV\0"
+ "DeleteFragmentShaderATI\0"
+ "DeleteFramebuffers\0"
+ "DeleteFramebuffersEXT\0"
+ "DeleteFramebuffersOES\0"
+ "DeleteLists\0"
+ "DeleteObjectARB\0"
+ "DeleteProgram\0"
+ "DeleteProgramsARB\0"
+ "DeleteProgramsNV\0"
+ "DeleteQueries\0"
+ "DeleteQueriesARB\0"
+ "DeleteRenderbuffers\0"
+ "DeleteRenderbuffersEXT\0"
+ "DeleteRenderbuffersOES\0"
+ "DeleteShader\0"
+ "DeleteSync\0"
+ "DeleteTextures\0"
+ "DeleteTexturesEXT\0"
+ "DeleteTransformFeedbacks\0"
+ "DeleteVertexArrays\0"
+ "DeleteVertexArraysAPPLE\0"
+ "DepthBoundsEXT\0"
+ "DepthFunc\0"
+ "DepthMask\0"
+ "DepthRange\0"
+ "DepthRangef\0"
+ "DepthRangefOES\0"
+ "DepthRangex\0"
+ "DepthRangexOES\0"
+ "DetachObjectARB\0"
+ "DetachShader\0"
+ "Disable\0"
+ "DisableClientState\0"
+ "DisableIndexedEXT\0"
+ "DisableVertexAttribArray\0"
+ "DisableVertexAttribArrayARB\0"
+ "Disablei\0"
+ "DrawArrays\0"
+ "DrawArraysEXT\0"
+ "DrawArraysInstanced\0"
+ "DrawArraysInstancedARB\0"
+ "DrawArraysInstancedEXT\0"
+ "DrawBuffer\0"
+ "DrawBuffers\0"
+ "DrawBuffersARB\0"
+ "DrawBuffersATI\0"
+ "DrawElements\0"
+ "DrawElementsBaseVertex\0"
+ "DrawElementsInstanced\0"
+ "DrawElementsInstancedARB\0"
+ "DrawElementsInstancedEXT\0"
+ "DrawPixels\0"
+ "DrawRangeElements\0"
+ "DrawRangeElementsBaseVertex\0"
+ "DrawRangeElementsEXT\0"
+ "DrawTexfOES\0"
+ "DrawTexfvOES\0"
+ "DrawTexiOES\0"
+ "DrawTexivOES\0"
+ "DrawTexsOES\0"
+ "DrawTexsvOES\0"
+ "DrawTexxOES\0"
+ "DrawTexxvOES\0"
+ "DrawTransformFeedback\0"
+ "EGLImageTargetRenderbufferStorageOES\0"
+ "EGLImageTargetTexture2DOES\0"
+ "EdgeFlag\0"
+ "EdgeFlagPointer\0"
+ "EdgeFlagPointerEXT\0"
+ "EdgeFlagv\0"
+ "Enable\0"
+ "EnableClientState\0"
+ "EnableIndexedEXT\0"
+ "EnableVertexAttribArray\0"
+ "EnableVertexAttribArrayARB\0"
+ "Enablei\0"
+ "End\0"
+ "EndConditionalRender\0"
+ "EndConditionalRenderNV\0"
+ "EndFragmentShaderATI\0"
+ "EndList\0"
+ "EndQuery\0"
+ "EndQueryARB\0"
+ "EndTransformFeedback\0"
+ "EndTransformFeedbackEXT\0"
+ "EvalCoord1d\0"
+ "EvalCoord1dv\0"
+ "EvalCoord1f\0"
+ "EvalCoord1fv\0"
+ "EvalCoord2d\0"
+ "EvalCoord2dv\0"
+ "EvalCoord2f\0"
+ "EvalCoord2fv\0"
+ "EvalMesh1\0"
+ "EvalMesh2\0"
+ "EvalPoint1\0"
+ "EvalPoint2\0"
+ "ExecuteProgramNV\0"
+ "FeedbackBuffer\0"
+ "FenceSync\0"
+ "FinalCombinerInputNV\0"
+ "Finish\0"
+ "FinishFenceNV\0"
+ "Flush\0"
+ "FlushMappedBufferRange\0"
+ "FlushMappedBufferRangeAPPLE\0"
+ "FlushVertexArrayRangeNV\0"
+ "FogCoordPointer\0"
+ "FogCoordPointerEXT\0"
+ "FogCoordd\0"
+ "FogCoorddEXT\0"
+ "FogCoorddv\0"
+ "FogCoorddvEXT\0"
+ "FogCoordf\0"
+ "FogCoordfEXT\0"
+ "FogCoordfv\0"
+ "FogCoordfvEXT\0"
+ "Fogf\0"
+ "Fogfv\0"
+ "Fogi\0"
+ "Fogiv\0"
+ "Fogx\0"
+ "FogxOES\0"
+ "Fogxv\0"
+ "FogxvOES\0"
+ "FramebufferRenderbuffer\0"
+ "FramebufferRenderbufferEXT\0"
+ "FramebufferRenderbufferOES\0"
+ "FramebufferTexture\0"
+ "FramebufferTexture1D\0"
+ "FramebufferTexture1DEXT\0"
+ "FramebufferTexture2D\0"
+ "FramebufferTexture2DEXT\0"
+ "FramebufferTexture2DOES\0"
+ "FramebufferTexture3D\0"
+ "FramebufferTexture3DEXT\0"
+ "FramebufferTexture3DOES\0"
+ "FramebufferTextureARB\0"
+ "FramebufferTextureFaceARB\0"
+ "FramebufferTextureLayer\0"
+ "FramebufferTextureLayerEXT\0"
+ "FrontFace\0"
+ "Frustum\0"
+ "Frustumf\0"
+ "FrustumfOES\0"
+ "Frustumx\0"
+ "FrustumxOES\0"
+ "GenBuffers\0"
+ "GenBuffersARB\0"
+ "GenFencesNV\0"
+ "GenFragmentShadersATI\0"
+ "GenFramebuffers\0"
+ "GenFramebuffersEXT\0"
+ "GenFramebuffersOES\0"
+ "GenLists\0"
+ "GenProgramsARB\0"
+ "GenProgramsNV\0"
+ "GenQueries\0"
+ "GenQueriesARB\0"
+ "GenRenderbuffers\0"
+ "GenRenderbuffersEXT\0"
+ "GenRenderbuffersOES\0"
+ "GenTextures\0"
+ "GenTexturesEXT\0"
+ "GenTransformFeedbacks\0"
+ "GenVertexArrays\0"
+ "GenVertexArraysAPPLE\0"
+ "GenerateMipmap\0"
+ "GenerateMipmapEXT\0"
+ "GenerateMipmapOES\0"
+ "GetActiveAttrib\0"
+ "GetActiveAttribARB\0"
+ "GetActiveUniform\0"
+ "GetActiveUniformARB\0"
+ "GetAttachedObjectsARB\0"
+ "GetAttachedShaders\0"
+ "GetAttribLocation\0"
+ "GetAttribLocationARB\0"
+ "GetBooleanIndexedvEXT\0"
+ "GetBooleani_v\0"
+ "GetBooleanv\0"
+ "GetBufferParameteri64v\0"
+ "GetBufferParameteriv\0"
+ "GetBufferParameterivARB\0"
+ "GetBufferPointerv\0"
+ "GetBufferPointervARB\0"
+ "GetBufferPointervOES\0"
+ "GetBufferSubData\0"
+ "GetBufferSubDataARB\0"
+ "GetClipPlane\0"
+ "GetClipPlanef\0"
+ "GetClipPlanefOES\0"
+ "GetClipPlanex\0"
+ "GetClipPlanexOES\0"
+ "GetColorTable\0"
+ "GetColorTableEXT\0"
+ "GetColorTableParameterfv\0"
+ "GetColorTableParameterfvEXT\0"
+ "GetColorTableParameterfvSGI\0"
+ "GetColorTableParameteriv\0"
+ "GetColorTableParameterivEXT\0"
+ "GetColorTableParameterivSGI\0"
+ "GetColorTableSGI\0"
+ "GetCombinerInputParameterfvNV\0"
+ "GetCombinerInputParameterivNV\0"
+ "GetCombinerOutputParameterfvNV\0"
+ "GetCombinerOutputParameterivNV\0"
+ "GetCompressedTexImage\0"
+ "GetCompressedTexImageARB\0"
+ "GetConvolutionFilter\0"
+ "GetConvolutionFilterEXT\0"
+ "GetConvolutionParameterfv\0"
+ "GetConvolutionParameterfvEXT\0"
+ "GetConvolutionParameteriv\0"
+ "GetConvolutionParameterivEXT\0"
+ "GetDoublev\0"
+ "GetError\0"
+ "GetFenceivNV\0"
+ "GetFinalCombinerInputParameterfvNV\0"
+ "GetFinalCombinerInputParameterivNV\0"
+ "GetFixedv\0"
+ "GetFixedvOES\0"
+ "GetFloatv\0"
+ "GetFragDataLocation\0"
+ "GetFragDataLocationEXT\0"
+ "GetFramebufferAttachmentParameteriv\0"
+ "GetFramebufferAttachmentParameterivEXT\0"
+ "GetFramebufferAttachmentParameterivOES\0"
+ "GetHandleARB\0"
+ "GetHistogram\0"
+ "GetHistogramEXT\0"
+ "GetHistogramParameterfv\0"
+ "GetHistogramParameterfvEXT\0"
+ "GetHistogramParameteriv\0"
+ "GetHistogramParameterivEXT\0"
+ "GetInfoLogARB\0"
+ "GetInteger64i_v\0"
+ "GetInteger64v\0"
+ "GetIntegerIndexedvEXT\0"
+ "GetIntegeri_v\0"
+ "GetIntegerv\0"
+ "GetLightfv\0"
+ "GetLightiv\0"
+ "GetLightxv\0"
+ "GetLightxvOES\0"
+ "GetMapdv\0"
+ "GetMapfv\0"
+ "GetMapiv\0"
+ "GetMaterialfv\0"
+ "GetMaterialiv\0"
+ "GetMaterialxv\0"
+ "GetMaterialxvOES\0"
+ "GetMinmax\0"
+ "GetMinmaxEXT\0"
+ "GetMinmaxParameterfv\0"
+ "GetMinmaxParameterfvEXT\0"
+ "GetMinmaxParameteriv\0"
+ "GetMinmaxParameterivEXT\0"
+ "GetObjectParameterfvARB\0"
+ "GetObjectParameterivAPPLE\0"
+ "GetObjectParameterivARB\0"
+ "GetPixelMapfv\0"
+ "GetPixelMapuiv\0"
+ "GetPixelMapusv\0"
+ "GetPixelTexGenParameterfvSGIS\0"
+ "GetPixelTexGenParameterivSGIS\0"
+ "GetPointerv\0"
+ "GetPointervEXT\0"
+ "GetPolygonStipple\0"
+ "GetProgramBinary\0"
+ "GetProgramBinaryOES\0"
+ "GetProgramEnvParameterdvARB\0"
+ "GetProgramEnvParameterfvARB\0"
+ "GetProgramInfoLog\0"
+ "GetProgramLocalParameterdvARB\0"
+ "GetProgramLocalParameterfvARB\0"
+ "GetProgramNamedParameterdvNV\0"
+ "GetProgramNamedParameterfvNV\0"
+ "GetProgramParameterdvNV\0"
+ "GetProgramParameterfvNV\0"
+ "GetProgramStringARB\0"
+ "GetProgramStringNV\0"
+ "GetProgramiv\0"
+ "GetProgramivARB\0"
+ "GetProgramivNV\0"
+ "GetQueryObjecti64vEXT\0"
+ "GetQueryObjectiv\0"
+ "GetQueryObjectivARB\0"
+ "GetQueryObjectui64vEXT\0"
+ "GetQueryObjectuiv\0"
+ "GetQueryObjectuivARB\0"
+ "GetQueryiv\0"
+ "GetQueryivARB\0"
+ "GetRenderbufferParameteriv\0"
+ "GetRenderbufferParameterivEXT\0"
+ "GetRenderbufferParameterivOES\0"
+ "GetSeparableFilter\0"
+ "GetSeparableFilterEXT\0"
+ "GetShaderInfoLog\0"
+ "GetShaderPrecisionFormat\0"
+ "GetShaderSource\0"
+ "GetShaderSourceARB\0"
+ "GetShaderiv\0"
+ "GetString\0"
+ "GetStringi\0"
+ "GetSynciv\0"
+ "GetTexBumpParameterfvATI\0"
+ "GetTexBumpParameterivATI\0"
+ "GetTexEnvfv\0"
+ "GetTexEnviv\0"
+ "GetTexEnvxv\0"
+ "GetTexEnvxvOES\0"
+ "GetTexGendv\0"
+ "GetTexGenfv\0"
+ "GetTexGenfvOES\0"
+ "GetTexGeniv\0"
+ "GetTexGenivOES\0"
+ "GetTexGenxvOES\0"
+ "GetTexImage\0"
+ "GetTexLevelParameterfv\0"
+ "GetTexLevelParameteriv\0"
+ "GetTexParameterIiv\0"
+ "GetTexParameterIivEXT\0"
+ "GetTexParameterIuiv\0"
+ "GetTexParameterIuivEXT\0"
+ "GetTexParameterPointervAPPLE\0"
+ "GetTexParameterfv\0"
+ "GetTexParameteriv\0"
+ "GetTexParameterxv\0"
+ "GetTexParameterxvOES\0"
+ "GetTrackMatrixivNV\0"
+ "GetTransformFeedbackVarying\0"
+ "GetTransformFeedbackVaryingEXT\0"
+ "GetUniformLocation\0"
+ "GetUniformLocationARB\0"
+ "GetUniformfv\0"
+ "GetUniformfvARB\0"
+ "GetUniformiv\0"
+ "GetUniformivARB\0"
+ "GetUniformuiv\0"
+ "GetUniformuivEXT\0"
+ "GetVertexAttribIiv\0"
+ "GetVertexAttribIivEXT\0"
+ "GetVertexAttribIuiv\0"
+ "GetVertexAttribIuivEXT\0"
+ "GetVertexAttribPointerv\0"
+ "GetVertexAttribPointervARB\0"
+ "GetVertexAttribPointervNV\0"
+ "GetVertexAttribdv\0"
+ "GetVertexAttribdvARB\0"
+ "GetVertexAttribdvNV\0"
+ "GetVertexAttribfv\0"
+ "GetVertexAttribfvARB\0"
+ "GetVertexAttribfvNV\0"
+ "GetVertexAttribiv\0"
+ "GetVertexAttribivARB\0"
+ "GetVertexAttribivNV\0"
+ "Hint\0"
+ "Histogram\0"
+ "HistogramEXT\0"
+ "IndexMask\0"
+ "IndexPointer\0"
+ "IndexPointerEXT\0"
+ "Indexd\0"
+ "Indexdv\0"
+ "Indexf\0"
+ "Indexfv\0"
+ "Indexi\0"
+ "Indexiv\0"
+ "Indexs\0"
+ "Indexsv\0"
+ "Indexub\0"
+ "Indexubv\0"
+ "InitNames\0"
+ "InterleavedArrays\0"
+ "IsBuffer\0"
+ "IsBufferARB\0"
+ "IsEnabled\0"
+ "IsEnabledIndexedEXT\0"
+ "IsEnabledi\0"
+ "IsFenceNV\0"
+ "IsFramebuffer\0"
+ "IsFramebufferEXT\0"
+ "IsFramebufferOES\0"
+ "IsList\0"
+ "IsProgram\0"
+ "IsProgramARB\0"
+ "IsProgramNV\0"
+ "IsQuery\0"
+ "IsQueryARB\0"
+ "IsRenderbuffer\0"
+ "IsRenderbufferEXT\0"
+ "IsRenderbufferOES\0"
+ "IsShader\0"
+ "IsSync\0"
+ "IsTexture\0"
+ "IsTextureEXT\0"
+ "IsTransformFeedback\0"
+ "IsVertexArray\0"
+ "IsVertexArrayAPPLE\0"
+ "LightModelf\0"
+ "LightModelfv\0"
+ "LightModeli\0"
+ "LightModeliv\0"
+ "LightModelx\0"
+ "LightModelxOES\0"
+ "LightModelxv\0"
+ "LightModelxvOES\0"
+ "Lightf\0"
+ "Lightfv\0"
+ "Lighti\0"
+ "Lightiv\0"
+ "Lightx\0"
+ "LightxOES\0"
+ "Lightxv\0"
+ "LightxvOES\0"
+ "LineStipple\0"
+ "LineWidth\0"
+ "LineWidthx\0"
+ "LineWidthxOES\0"
+ "LinkProgram\0"
+ "LinkProgramARB\0"
+ "ListBase\0"
+ "LoadIdentity\0"
+ "LoadMatrixd\0"
+ "LoadMatrixf\0"
+ "LoadMatrixx\0"
+ "LoadMatrixxOES\0"
+ "LoadName\0"
+ "LoadProgramNV\0"
+ "LoadTransposeMatrixd\0"
+ "LoadTransposeMatrixdARB\0"
+ "LoadTransposeMatrixf\0"
+ "LoadTransposeMatrixfARB\0"
+ "LockArraysEXT\0"
+ "LogicOp\0"
+ "Map1d\0"
+ "Map1f\0"
+ "Map2d\0"
+ "Map2f\0"
+ "MapBuffer\0"
+ "MapBufferARB\0"
+ "MapBufferOES\0"
+ "MapBufferRange\0"
+ "MapGrid1d\0"
+ "MapGrid1f\0"
+ "MapGrid2d\0"
+ "MapGrid2f\0"
+ "Materialf\0"
+ "Materialfv\0"
+ "Materiali\0"
+ "Materialiv\0"
+ "Materialx\0"
+ "MaterialxOES\0"
+ "Materialxv\0"
+ "MaterialxvOES\0"
+ "MatrixMode\0"
+ "Minmax\0"
+ "MinmaxEXT\0"
+ "MultMatrixd\0"
+ "MultMatrixf\0"
+ "MultMatrixx\0"
+ "MultMatrixxOES\0"
+ "MultTransposeMatrixd\0"
+ "MultTransposeMatrixdARB\0"
+ "MultTransposeMatrixf\0"
+ "MultTransposeMatrixfARB\0"
+ "MultiDrawArrays\0"
+ "MultiDrawArraysEXT\0"
+ "MultiDrawElements\0"
+ "MultiDrawElementsBaseVertex\0"
+ "MultiDrawElementsEXT\0"
+ "MultiModeDrawArraysIBM\0"
+ "MultiModeDrawElementsIBM\0"
+ "MultiTexCoord1d\0"
+ "MultiTexCoord1dARB\0"
+ "MultiTexCoord1dv\0"
+ "MultiTexCoord1dvARB\0"
+ "MultiTexCoord1f\0"
+ "MultiTexCoord1fARB\0"
+ "MultiTexCoord1fv\0"
+ "MultiTexCoord1fvARB\0"
+ "MultiTexCoord1i\0"
+ "MultiTexCoord1iARB\0"
+ "MultiTexCoord1iv\0"
+ "MultiTexCoord1ivARB\0"
+ "MultiTexCoord1s\0"
+ "MultiTexCoord1sARB\0"
+ "MultiTexCoord1sv\0"
+ "MultiTexCoord1svARB\0"
+ "MultiTexCoord2d\0"
+ "MultiTexCoord2dARB\0"
+ "MultiTexCoord2dv\0"
+ "MultiTexCoord2dvARB\0"
+ "MultiTexCoord2f\0"
+ "MultiTexCoord2fARB\0"
+ "MultiTexCoord2fv\0"
+ "MultiTexCoord2fvARB\0"
+ "MultiTexCoord2i\0"
+ "MultiTexCoord2iARB\0"
+ "MultiTexCoord2iv\0"
+ "MultiTexCoord2ivARB\0"
+ "MultiTexCoord2s\0"
+ "MultiTexCoord2sARB\0"
+ "MultiTexCoord2sv\0"
+ "MultiTexCoord2svARB\0"
+ "MultiTexCoord3d\0"
+ "MultiTexCoord3dARB\0"
+ "MultiTexCoord3dv\0"
+ "MultiTexCoord3dvARB\0"
+ "MultiTexCoord3f\0"
+ "MultiTexCoord3fARB\0"
+ "MultiTexCoord3fv\0"
+ "MultiTexCoord3fvARB\0"
+ "MultiTexCoord3i\0"
+ "MultiTexCoord3iARB\0"
+ "MultiTexCoord3iv\0"
+ "MultiTexCoord3ivARB\0"
+ "MultiTexCoord3s\0"
+ "MultiTexCoord3sARB\0"
+ "MultiTexCoord3sv\0"
+ "MultiTexCoord3svARB\0"
+ "MultiTexCoord4d\0"
+ "MultiTexCoord4dARB\0"
+ "MultiTexCoord4dv\0"
+ "MultiTexCoord4dvARB\0"
+ "MultiTexCoord4f\0"
+ "MultiTexCoord4fARB\0"
+ "MultiTexCoord4fv\0"
+ "MultiTexCoord4fvARB\0"
+ "MultiTexCoord4i\0"
+ "MultiTexCoord4iARB\0"
+ "MultiTexCoord4iv\0"
+ "MultiTexCoord4ivARB\0"
+ "MultiTexCoord4s\0"
+ "MultiTexCoord4sARB\0"
+ "MultiTexCoord4sv\0"
+ "MultiTexCoord4svARB\0"
+ "MultiTexCoord4x\0"
+ "MultiTexCoord4xOES\0"
+ "NewList\0"
+ "Normal3b\0"
+ "Normal3bv\0"
+ "Normal3d\0"
+ "Normal3dv\0"
+ "Normal3f\0"
+ "Normal3fv\0"
+ "Normal3i\0"
+ "Normal3iv\0"
+ "Normal3s\0"
+ "Normal3sv\0"
+ "Normal3x\0"
+ "Normal3xOES\0"
+ "NormalPointer\0"
+ "NormalPointerEXT\0"
+ "ObjectPurgeableAPPLE\0"
+ "ObjectUnpurgeableAPPLE\0"
+ "Ortho\0"
+ "Orthof\0"
+ "OrthofOES\0"
+ "Orthox\0"
+ "OrthoxOES\0"
+ "PassTexCoordATI\0"
+ "PassThrough\0"
+ "PauseTransformFeedback\0"
+ "PixelMapfv\0"
+ "PixelMapuiv\0"
+ "PixelMapusv\0"
+ "PixelStoref\0"
+ "PixelStorei\0"
+ "PixelTexGenParameterfSGIS\0"
+ "PixelTexGenParameterfvSGIS\0"
+ "PixelTexGenParameteriSGIS\0"
+ "PixelTexGenParameterivSGIS\0"
+ "PixelTexGenSGIX\0"
+ "PixelTransferf\0"
+ "PixelTransferi\0"
+ "PixelZoom\0"
+ "PointParameterf\0"
+ "PointParameterfARB\0"
+ "PointParameterfEXT\0"
+ "PointParameterfSGIS\0"
+ "PointParameterfv\0"
+ "PointParameterfvARB\0"
+ "PointParameterfvEXT\0"
+ "PointParameterfvSGIS\0"
+ "PointParameteri\0"
+ "PointParameteriNV\0"
+ "PointParameteriv\0"
+ "PointParameterivNV\0"
+ "PointParameterx\0"
+ "PointParameterxOES\0"
+ "PointParameterxv\0"
+ "PointParameterxvOES\0"
+ "PointSize\0"
+ "PointSizePointerOES\0"
+ "PointSizex\0"
+ "PointSizexOES\0"
+ "PolygonMode\0"
+ "PolygonOffset\0"
+ "PolygonOffsetEXT\0"
+ "PolygonOffsetx\0"
+ "PolygonOffsetxOES\0"
+ "PolygonStipple\0"
+ "PopAttrib\0"
+ "PopClientAttrib\0"
+ "PopMatrix\0"
+ "PopName\0"
+ "PrimitiveRestartIndex\0"
+ "PrimitiveRestartIndexNV\0"
+ "PrimitiveRestartNV\0"
+ "PrioritizeTextures\0"
+ "PrioritizeTexturesEXT\0"
+ "ProgramBinary\0"
+ "ProgramBinaryOES\0"
+ "ProgramEnvParameter4dARB\0"
+ "ProgramEnvParameter4dvARB\0"
+ "ProgramEnvParameter4fARB\0"
+ "ProgramEnvParameter4fvARB\0"
+ "ProgramEnvParameters4fvEXT\0"
+ "ProgramLocalParameter4dARB\0"
+ "ProgramLocalParameter4dvARB\0"
+ "ProgramLocalParameter4fARB\0"
+ "ProgramLocalParameter4fvARB\0"
+ "ProgramLocalParameters4fvEXT\0"
+ "ProgramNamedParameter4dNV\0"
+ "ProgramNamedParameter4dvNV\0"
+ "ProgramNamedParameter4fNV\0"
+ "ProgramNamedParameter4fvNV\0"
+ "ProgramParameter4dNV\0"
+ "ProgramParameter4dvNV\0"
+ "ProgramParameter4fNV\0"
+ "ProgramParameter4fvNV\0"
+ "ProgramParameteri\0"
+ "ProgramParameteriARB\0"
+ "ProgramParameters4dvNV\0"
+ "ProgramParameters4fvNV\0"
+ "ProgramStringARB\0"
+ "ProvokingVertex\0"
+ "ProvokingVertexEXT\0"
+ "PushAttrib\0"
+ "PushClientAttrib\0"
+ "PushMatrix\0"
+ "PushName\0"
+ "QueryMatrixxOES\0"
+ "RasterPos2d\0"
+ "RasterPos2dv\0"
+ "RasterPos2f\0"
+ "RasterPos2fv\0"
+ "RasterPos2i\0"
+ "RasterPos2iv\0"
+ "RasterPos2s\0"
+ "RasterPos2sv\0"
+ "RasterPos3d\0"
+ "RasterPos3dv\0"
+ "RasterPos3f\0"
+ "RasterPos3fv\0"
+ "RasterPos3i\0"
+ "RasterPos3iv\0"
+ "RasterPos3s\0"
+ "RasterPos3sv\0"
+ "RasterPos4d\0"
+ "RasterPos4dv\0"
+ "RasterPos4f\0"
+ "RasterPos4fv\0"
+ "RasterPos4i\0"
+ "RasterPos4iv\0"
+ "RasterPos4s\0"
+ "RasterPos4sv\0"
+ "ReadBuffer\0"
+ "ReadPixels\0"
+ "Rectd\0"
+ "Rectdv\0"
+ "Rectf\0"
+ "Rectfv\0"
+ "Recti\0"
+ "Rectiv\0"
+ "Rects\0"
+ "Rectsv\0"
+ "ReleaseShaderCompiler\0"
+ "RenderMode\0"
+ "RenderbufferStorage\0"
+ "RenderbufferStorageEXT\0"
+ "RenderbufferStorageMultisample\0"
+ "RenderbufferStorageMultisampleEXT\0"
+ "RenderbufferStorageOES\0"
+ "RequestResidentProgramsNV\0"
+ "ResetHistogram\0"
+ "ResetHistogramEXT\0"
+ "ResetMinmax\0"
+ "ResetMinmaxEXT\0"
+ "ResizeBuffersMESA\0"
+ "ResumeTransformFeedback\0"
+ "Rotated\0"
+ "Rotatef\0"
+ "Rotatex\0"
+ "RotatexOES\0"
+ "SampleCoverage\0"
+ "SampleCoverageARB\0"
+ "SampleCoveragex\0"
+ "SampleCoveragexOES\0"
+ "SampleMapATI\0"
+ "SampleMaskEXT\0"
+ "SampleMaskSGIS\0"
+ "SamplePatternEXT\0"
+ "SamplePatternSGIS\0"
+ "Scaled\0"
+ "Scalef\0"
+ "Scalex\0"
+ "ScalexOES\0"
+ "Scissor\0"
+ "SecondaryColor3b\0"
+ "SecondaryColor3bEXT\0"
+ "SecondaryColor3bv\0"
+ "SecondaryColor3bvEXT\0"
+ "SecondaryColor3d\0"
+ "SecondaryColor3dEXT\0"
+ "SecondaryColor3dv\0"
+ "SecondaryColor3dvEXT\0"
+ "SecondaryColor3f\0"
+ "SecondaryColor3fEXT\0"
+ "SecondaryColor3fv\0"
+ "SecondaryColor3fvEXT\0"
+ "SecondaryColor3i\0"
+ "SecondaryColor3iEXT\0"
+ "SecondaryColor3iv\0"
+ "SecondaryColor3ivEXT\0"
+ "SecondaryColor3s\0"
+ "SecondaryColor3sEXT\0"
+ "SecondaryColor3sv\0"
+ "SecondaryColor3svEXT\0"
+ "SecondaryColor3ub\0"
+ "SecondaryColor3ubEXT\0"
+ "SecondaryColor3ubv\0"
+ "SecondaryColor3ubvEXT\0"
+ "SecondaryColor3ui\0"
+ "SecondaryColor3uiEXT\0"
+ "SecondaryColor3uiv\0"
+ "SecondaryColor3uivEXT\0"
+ "SecondaryColor3us\0"
+ "SecondaryColor3usEXT\0"
+ "SecondaryColor3usv\0"
+ "SecondaryColor3usvEXT\0"
+ "SecondaryColorPointer\0"
+ "SecondaryColorPointerEXT\0"
+ "SelectBuffer\0"
+ "SeparableFilter2D\0"
+ "SeparableFilter2DEXT\0"
+ "SetFenceNV\0"
+ "SetFragmentShaderConstantATI\0"
+ "ShadeModel\0"
+ "ShaderBinary\0"
+ "ShaderSource\0"
+ "ShaderSourceARB\0"
+ "StencilFunc\0"
+ "StencilFuncSeparate\0"
+ "StencilFuncSeparateATI\0"
+ "StencilMask\0"
+ "StencilMaskSeparate\0"
+ "StencilOp\0"
+ "StencilOpSeparate\0"
+ "StencilOpSeparateATI\0"
+ "TestFenceNV\0"
+ "TexBuffer\0"
+ "TexBumpParameterfvATI\0"
+ "TexBumpParameterivATI\0"
+ "TexCoord1d\0"
+ "TexCoord1dv\0"
+ "TexCoord1f\0"
+ "TexCoord1fv\0"
+ "TexCoord1i\0"
+ "TexCoord1iv\0"
+ "TexCoord1s\0"
+ "TexCoord1sv\0"
+ "TexCoord2d\0"
+ "TexCoord2dv\0"
+ "TexCoord2f\0"
+ "TexCoord2fv\0"
+ "TexCoord2i\0"
+ "TexCoord2iv\0"
+ "TexCoord2s\0"
+ "TexCoord2sv\0"
+ "TexCoord3d\0"
+ "TexCoord3dv\0"
+ "TexCoord3f\0"
+ "TexCoord3fv\0"
+ "TexCoord3i\0"
+ "TexCoord3iv\0"
+ "TexCoord3s\0"
+ "TexCoord3sv\0"
+ "TexCoord4d\0"
+ "TexCoord4dv\0"
+ "TexCoord4f\0"
+ "TexCoord4fv\0"
+ "TexCoord4i\0"
+ "TexCoord4iv\0"
+ "TexCoord4s\0"
+ "TexCoord4sv\0"
+ "TexCoordPointer\0"
+ "TexCoordPointerEXT\0"
+ "TexEnvf\0"
+ "TexEnvfv\0"
+ "TexEnvi\0"
+ "TexEnviv\0"
+ "TexEnvx\0"
+ "TexEnvxOES\0"
+ "TexEnvxv\0"
+ "TexEnvxvOES\0"
+ "TexGend\0"
+ "TexGendv\0"
+ "TexGenf\0"
+ "TexGenfOES\0"
+ "TexGenfv\0"
+ "TexGenfvOES\0"
+ "TexGeni\0"
+ "TexGeniOES\0"
+ "TexGeniv\0"
+ "TexGenivOES\0"
+ "TexGenxOES\0"
+ "TexGenxvOES\0"
+ "TexImage1D\0"
+ "TexImage2D\0"
+ "TexImage3D\0"
+ "TexImage3DEXT\0"
+ "TexImage3DOES\0"
+ "TexParameterIiv\0"
+ "TexParameterIivEXT\0"
+ "TexParameterIuiv\0"
+ "TexParameterIuivEXT\0"
+ "TexParameterf\0"
+ "TexParameterfv\0"
+ "TexParameteri\0"
+ "TexParameteriv\0"
+ "TexParameterx\0"
+ "TexParameterxOES\0"
+ "TexParameterxv\0"
+ "TexParameterxvOES\0"
+ "TexSubImage1D\0"
+ "TexSubImage1DEXT\0"
+ "TexSubImage2D\0"
+ "TexSubImage2DEXT\0"
+ "TexSubImage3D\0"
+ "TexSubImage3DEXT\0"
+ "TexSubImage3DOES\0"
+ "TextureBarrierNV\0"
+ "TextureRangeAPPLE\0"
+ "TrackMatrixNV\0"
+ "TransformFeedbackVaryings\0"
+ "TransformFeedbackVaryingsEXT\0"
+ "Translated\0"
+ "Translatef\0"
+ "Translatex\0"
+ "TranslatexOES\0"
+ "Uniform1f\0"
+ "Uniform1fARB\0"
+ "Uniform1fv\0"
+ "Uniform1fvARB\0"
+ "Uniform1i\0"
+ "Uniform1iARB\0"
+ "Uniform1iv\0"
+ "Uniform1ivARB\0"
+ "Uniform1ui\0"
+ "Uniform1uiEXT\0"
+ "Uniform1uiv\0"
+ "Uniform1uivEXT\0"
+ "Uniform2f\0"
+ "Uniform2fARB\0"
+ "Uniform2fv\0"
+ "Uniform2fvARB\0"
+ "Uniform2i\0"
+ "Uniform2iARB\0"
+ "Uniform2iv\0"
+ "Uniform2ivARB\0"
+ "Uniform2ui\0"
+ "Uniform2uiEXT\0"
+ "Uniform2uiv\0"
+ "Uniform2uivEXT\0"
+ "Uniform3f\0"
+ "Uniform3fARB\0"
+ "Uniform3fv\0"
+ "Uniform3fvARB\0"
+ "Uniform3i\0"
+ "Uniform3iARB\0"
+ "Uniform3iv\0"
+ "Uniform3ivARB\0"
+ "Uniform3ui\0"
+ "Uniform3uiEXT\0"
+ "Uniform3uiv\0"
+ "Uniform3uivEXT\0"
+ "Uniform4f\0"
+ "Uniform4fARB\0"
+ "Uniform4fv\0"
+ "Uniform4fvARB\0"
+ "Uniform4i\0"
+ "Uniform4iARB\0"
+ "Uniform4iv\0"
+ "Uniform4ivARB\0"
+ "Uniform4ui\0"
+ "Uniform4uiEXT\0"
+ "Uniform4uiv\0"
+ "Uniform4uivEXT\0"
+ "UniformMatrix2fv\0"
+ "UniformMatrix2fvARB\0"
+ "UniformMatrix2x3fv\0"
+ "UniformMatrix2x4fv\0"
+ "UniformMatrix3fv\0"
+ "UniformMatrix3fvARB\0"
+ "UniformMatrix3x2fv\0"
+ "UniformMatrix3x4fv\0"
+ "UniformMatrix4fv\0"
+ "UniformMatrix4fvARB\0"
+ "UniformMatrix4x2fv\0"
+ "UniformMatrix4x3fv\0"
+ "UnlockArraysEXT\0"
+ "UnmapBuffer\0"
+ "UnmapBufferARB\0"
+ "UnmapBufferOES\0"
+ "UseProgram\0"
+ "UseProgramObjectARB\0"
+ "UseShaderProgramEXT\0"
+ "ValidateProgram\0"
+ "ValidateProgramARB\0"
+ "Vertex2d\0"
+ "Vertex2dv\0"
+ "Vertex2f\0"
+ "Vertex2fv\0"
+ "Vertex2i\0"
+ "Vertex2iv\0"
+ "Vertex2s\0"
+ "Vertex2sv\0"
+ "Vertex3d\0"
+ "Vertex3dv\0"
+ "Vertex3f\0"
+ "Vertex3fv\0"
+ "Vertex3i\0"
+ "Vertex3iv\0"
+ "Vertex3s\0"
+ "Vertex3sv\0"
+ "Vertex4d\0"
+ "Vertex4dv\0"
+ "Vertex4f\0"
+ "Vertex4fv\0"
+ "Vertex4i\0"
+ "Vertex4iv\0"
+ "Vertex4s\0"
+ "Vertex4sv\0"
+ "VertexArrayRangeNV\0"
+ "VertexAttrib1d\0"
+ "VertexAttrib1dARB\0"
+ "VertexAttrib1dNV\0"
+ "VertexAttrib1dv\0"
+ "VertexAttrib1dvARB\0"
+ "VertexAttrib1dvNV\0"
+ "VertexAttrib1f\0"
+ "VertexAttrib1fARB\0"
+ "VertexAttrib1fNV\0"
+ "VertexAttrib1fv\0"
+ "VertexAttrib1fvARB\0"
+ "VertexAttrib1fvNV\0"
+ "VertexAttrib1s\0"
+ "VertexAttrib1sARB\0"
+ "VertexAttrib1sNV\0"
+ "VertexAttrib1sv\0"
+ "VertexAttrib1svARB\0"
+ "VertexAttrib1svNV\0"
+ "VertexAttrib2d\0"
+ "VertexAttrib2dARB\0"
+ "VertexAttrib2dNV\0"
+ "VertexAttrib2dv\0"
+ "VertexAttrib2dvARB\0"
+ "VertexAttrib2dvNV\0"
+ "VertexAttrib2f\0"
+ "VertexAttrib2fARB\0"
+ "VertexAttrib2fNV\0"
+ "VertexAttrib2fv\0"
+ "VertexAttrib2fvARB\0"
+ "VertexAttrib2fvNV\0"
+ "VertexAttrib2s\0"
+ "VertexAttrib2sARB\0"
+ "VertexAttrib2sNV\0"
+ "VertexAttrib2sv\0"
+ "VertexAttrib2svARB\0"
+ "VertexAttrib2svNV\0"
+ "VertexAttrib3d\0"
+ "VertexAttrib3dARB\0"
+ "VertexAttrib3dNV\0"
+ "VertexAttrib3dv\0"
+ "VertexAttrib3dvARB\0"
+ "VertexAttrib3dvNV\0"
+ "VertexAttrib3f\0"
+ "VertexAttrib3fARB\0"
+ "VertexAttrib3fNV\0"
+ "VertexAttrib3fv\0"
+ "VertexAttrib3fvARB\0"
+ "VertexAttrib3fvNV\0"
+ "VertexAttrib3s\0"
+ "VertexAttrib3sARB\0"
+ "VertexAttrib3sNV\0"
+ "VertexAttrib3sv\0"
+ "VertexAttrib3svARB\0"
+ "VertexAttrib3svNV\0"
+ "VertexAttrib4Nbv\0"
+ "VertexAttrib4NbvARB\0"
+ "VertexAttrib4Niv\0"
+ "VertexAttrib4NivARB\0"
+ "VertexAttrib4Nsv\0"
+ "VertexAttrib4NsvARB\0"
+ "VertexAttrib4Nub\0"
+ "VertexAttrib4NubARB\0"
+ "VertexAttrib4Nubv\0"
+ "VertexAttrib4NubvARB\0"
+ "VertexAttrib4Nuiv\0"
+ "VertexAttrib4NuivARB\0"
+ "VertexAttrib4Nusv\0"
+ "VertexAttrib4NusvARB\0"
+ "VertexAttrib4bv\0"
+ "VertexAttrib4bvARB\0"
+ "VertexAttrib4d\0"
+ "VertexAttrib4dARB\0"
+ "VertexAttrib4dNV\0"
+ "VertexAttrib4dv\0"
+ "VertexAttrib4dvARB\0"
+ "VertexAttrib4dvNV\0"
+ "VertexAttrib4f\0"
+ "VertexAttrib4fARB\0"
+ "VertexAttrib4fNV\0"
+ "VertexAttrib4fv\0"
+ "VertexAttrib4fvARB\0"
+ "VertexAttrib4fvNV\0"
+ "VertexAttrib4iv\0"
+ "VertexAttrib4ivARB\0"
+ "VertexAttrib4s\0"
+ "VertexAttrib4sARB\0"
+ "VertexAttrib4sNV\0"
+ "VertexAttrib4sv\0"
+ "VertexAttrib4svARB\0"
+ "VertexAttrib4svNV\0"
+ "VertexAttrib4ubNV\0"
+ "VertexAttrib4ubv\0"
+ "VertexAttrib4ubvARB\0"
+ "VertexAttrib4ubvNV\0"
+ "VertexAttrib4uiv\0"
+ "VertexAttrib4uivARB\0"
+ "VertexAttrib4usv\0"
+ "VertexAttrib4usvARB\0"
+ "VertexAttribDivisor\0"
+ "VertexAttribDivisorARB\0"
+ "VertexAttribI1i\0"
+ "VertexAttribI1iEXT\0"
+ "VertexAttribI1iv\0"
+ "VertexAttribI1ivEXT\0"
+ "VertexAttribI1ui\0"
+ "VertexAttribI1uiEXT\0"
+ "VertexAttribI1uiv\0"
+ "VertexAttribI1uivEXT\0"
+ "VertexAttribI2i\0"
+ "VertexAttribI2iEXT\0"
+ "VertexAttribI2iv\0"
+ "VertexAttribI2ivEXT\0"
+ "VertexAttribI2ui\0"
+ "VertexAttribI2uiEXT\0"
+ "VertexAttribI2uiv\0"
+ "VertexAttribI2uivEXT\0"
+ "VertexAttribI3i\0"
+ "VertexAttribI3iEXT\0"
+ "VertexAttribI3iv\0"
+ "VertexAttribI3ivEXT\0"
+ "VertexAttribI3ui\0"
+ "VertexAttribI3uiEXT\0"
+ "VertexAttribI3uiv\0"
+ "VertexAttribI3uivEXT\0"
+ "VertexAttribI4bv\0"
+ "VertexAttribI4bvEXT\0"
+ "VertexAttribI4i\0"
+ "VertexAttribI4iEXT\0"
+ "VertexAttribI4iv\0"
+ "VertexAttribI4ivEXT\0"
+ "VertexAttribI4sv\0"
+ "VertexAttribI4svEXT\0"
+ "VertexAttribI4ubv\0"
+ "VertexAttribI4ubvEXT\0"
+ "VertexAttribI4ui\0"
+ "VertexAttribI4uiEXT\0"
+ "VertexAttribI4uiv\0"
+ "VertexAttribI4uivEXT\0"
+ "VertexAttribI4usv\0"
+ "VertexAttribI4usvEXT\0"
+ "VertexAttribIPointer\0"
+ "VertexAttribIPointerEXT\0"
+ "VertexAttribPointer\0"
+ "VertexAttribPointerARB\0"
+ "VertexAttribPointerNV\0"
+ "VertexAttribs1dvNV\0"
+ "VertexAttribs1fvNV\0"
+ "VertexAttribs1svNV\0"
+ "VertexAttribs2dvNV\0"
+ "VertexAttribs2fvNV\0"
+ "VertexAttribs2svNV\0"
+ "VertexAttribs3dvNV\0"
+ "VertexAttribs3fvNV\0"
+ "VertexAttribs3svNV\0"
+ "VertexAttribs4dvNV\0"
+ "VertexAttribs4fvNV\0"
+ "VertexAttribs4svNV\0"
+ "VertexAttribs4ubvNV\0"
+ "VertexPointer\0"
+ "VertexPointerEXT\0"
+ "Viewport\0"
+ "WaitSync\0"
+ "WindowPos2d\0"
+ "WindowPos2dARB\0"
+ "WindowPos2dMESA\0"
+ "WindowPos2dv\0"
+ "WindowPos2dvARB\0"
+ "WindowPos2dvMESA\0"
+ "WindowPos2f\0"
+ "WindowPos2fARB\0"
+ "WindowPos2fMESA\0"
+ "WindowPos2fv\0"
+ "WindowPos2fvARB\0"
+ "WindowPos2fvMESA\0"
+ "WindowPos2i\0"
+ "WindowPos2iARB\0"
+ "WindowPos2iMESA\0"
+ "WindowPos2iv\0"
+ "WindowPos2ivARB\0"
+ "WindowPos2ivMESA\0"
+ "WindowPos2s\0"
+ "WindowPos2sARB\0"
+ "WindowPos2sMESA\0"
+ "WindowPos2sv\0"
+ "WindowPos2svARB\0"
+ "WindowPos2svMESA\0"
+ "WindowPos3d\0"
+ "WindowPos3dARB\0"
+ "WindowPos3dMESA\0"
+ "WindowPos3dv\0"
+ "WindowPos3dvARB\0"
+ "WindowPos3dvMESA\0"
+ "WindowPos3f\0"
+ "WindowPos3fARB\0"
+ "WindowPos3fMESA\0"
+ "WindowPos3fv\0"
+ "WindowPos3fvARB\0"
+ "WindowPos3fvMESA\0"
+ "WindowPos3i\0"
+ "WindowPos3iARB\0"
+ "WindowPos3iMESA\0"
+ "WindowPos3iv\0"
+ "WindowPos3ivARB\0"
+ "WindowPos3ivMESA\0"
+ "WindowPos3s\0"
+ "WindowPos3sARB\0"
+ "WindowPos3sMESA\0"
+ "WindowPos3sv\0"
+ "WindowPos3svARB\0"
+ "WindowPos3svMESA\0"
+ "WindowPos4dMESA\0"
+ "WindowPos4dvMESA\0"
+ "WindowPos4fMESA\0"
+ "WindowPos4fvMESA\0"
+ "WindowPos4iMESA\0"
+ "WindowPos4ivMESA\0"
+ "WindowPos4sMESA\0"
+ "WindowPos4svMESA";
+
+static const struct mapi_stub public_stubs[] = {
+ { (void *) 0, 213, NULL },
+ { (void *) 6, 940, NULL },
+ { (void *) 23, 797, NULL },
+ { (void *) 44, 374, NULL },
+ { (void *) 58, 374, NULL },
+ { (void *) 75, 781, NULL },
+ { (void *) 95, 782, NULL },
+ { (void *) 115, 783, NULL },
+ { (void *) 135, 240, NULL },
+ { (void *) 145, 810, NULL },
+ { (void *) 156, 810, NULL },
+ { (void *) 170, 717, NULL },
+ { (void *) 192, 322, NULL },
+ { (void *) 212, 322, NULL },
+ { (void *) 235, 306, NULL },
+ { (void *) 248, 306, NULL },
+ { (void *) 264, 529, NULL },
+ { (void *) 280, 408, NULL },
+ { (void *) 293, 7, NULL },
+ { (void *) 299, 925, NULL },
+ { (void *) 322, 925, NULL },
+ { (void *) 347, 784, NULL },
+ { (void *) 370, 521, NULL },
+ { (void *) 381, 521, NULL },
+ { (void *) 395, 927, NULL },
+ { (void *) 418, 927, NULL },
+ { (void *) 444, 568, NULL },
+ { (void *) 463, 568, NULL },
+ { (void *) 485, 510, NULL },
+ { (void *) 496, 510, NULL },
+ { (void *) 510, 928, NULL },
+ { (void *) 525, 928, NULL },
+ { (void *) 543, 929, NULL },
+ { (void *) 563, 930, NULL },
+ { (void *) 579, 930, NULL },
+ { (void *) 598, 878, NULL },
+ { (void *) 619, 878, NULL },
+ { (void *) 643, 785, NULL },
+ { (void *) 665, 858, NULL },
+ { (void *) 681, 858, NULL },
+ { (void *) 700, 858, NULL },
+ { (void *) 719, 718, NULL },
+ { (void *) 734, 718, NULL },
+ { (void *) 748, 859, NULL },
+ { (void *) 765, 859, NULL },
+ { (void *) 785, 859, NULL },
+ { (void *) 805, 307, NULL },
+ { (void *) 817, 307, NULL },
+ { (void *) 832, 598, NULL },
+ { (void *) 854, 581, NULL },
+ { (void *) 870, 798, NULL },
+ { (void *) 891, 8, NULL },
+ { (void *) 898, 336, NULL },
+ { (void *) 909, 336, NULL },
+ { (void *) 923, 337, NULL },
+ { (void *) 937, 337, NULL },
+ { (void *) 954, 337, NULL },
+ { (void *) 971, 857, NULL },
+ { (void *) 993, 857, NULL },
+ { (void *) 1018, 857, NULL },
+ { (void *) 1043, 857, NULL },
+ { (void *) 1068, 594, NULL },
+ { (void *) 1094, 595, NULL },
+ { (void *) 1112, 241, NULL },
+ { (void *) 1122, 667, NULL },
+ { (void *) 1140, 667, NULL },
+ { (void *) 1161, 667, NULL },
+ { (void *) 1183, 667, NULL },
+ { (void *) 1204, 596, NULL },
+ { (void *) 1226, 597, NULL },
+ { (void *) 1240, 875, NULL },
+ { (void *) 1256, 875, NULL },
+ { (void *) 1275, 511, NULL },
+ { (void *) 1286, 511, NULL },
+ { (void *) 1300, 876, NULL },
+ { (void *) 1322, 512, NULL },
+ { (void *) 1336, 512, NULL },
+ { (void *) 1353, 2, NULL },
+ { (void *) 1362, 3, NULL },
+ { (void *) 1372, 860, NULL },
+ { (void *) 1395, 860, NULL },
+ { (void *) 1421, 860, NULL },
+ { (void *) 1447, 430, NULL },
+ { (void *) 1458, 203, NULL },
+ { (void *) 1464, 204, NULL },
+ { (void *) 1475, 431, NULL },
+ { (void *) 1489, 432, NULL },
+ { (void *) 1503, 433, NULL },
+ { (void *) 1517, 434, NULL },
+ { (void *) 1532, 206, NULL },
+ { (void *) 1543, 919, NULL },
+ { (void *) 1559, 920, NULL },
+ { (void *) 1576, 811, NULL },
+ { (void *) 1588, 811, NULL },
+ { (void *) 1603, 208, NULL },
+ { (void *) 1614, 605, NULL },
+ { (void *) 1626, 605, NULL },
+ { (void *) 1641, 812, NULL },
+ { (void *) 1653, 812, NULL },
+ { (void *) 1668, 205, NULL },
+ { (void *) 1679, 207, NULL },
+ { (void *) 1692, 375, NULL },
+ { (void *) 1712, 375, NULL },
+ { (void *) 1735, 584, NULL },
+ { (void *) 1750, 150, NULL },
+ { (void *) 1760, 852, NULL },
+ { (void *) 1771, 852, NULL },
+ { (void *) 1785, 813, NULL },
+ { (void *) 1796, 813, NULL },
+ { (void *) 1810, 9, NULL },
+ { (void *) 1818, 10, NULL },
+ { (void *) 1827, 11, NULL },
+ { (void *) 1835, 12, NULL },
+ { (void *) 1844, 13, NULL },
+ { (void *) 1852, 14, NULL },
+ { (void *) 1861, 15, NULL },
+ { (void *) 1869, 16, NULL },
+ { (void *) 1878, 17, NULL },
+ { (void *) 1886, 18, NULL },
+ { (void *) 1895, 19, NULL },
+ { (void *) 1904, 20, NULL },
+ { (void *) 1914, 21, NULL },
+ { (void *) 1923, 22, NULL },
+ { (void *) 1933, 23, NULL },
+ { (void *) 1942, 24, NULL },
+ { (void *) 1952, 25, NULL },
+ { (void *) 1960, 26, NULL },
+ { (void *) 1969, 27, NULL },
+ { (void *) 1977, 28, NULL },
+ { (void *) 1986, 29, NULL },
+ { (void *) 1994, 30, NULL },
+ { (void *) 2003, 31, NULL },
+ { (void *) 2011, 32, NULL },
+ { (void *) 2020, 33, NULL },
+ { (void *) 2028, 34, NULL },
+ { (void *) 2037, 35, NULL },
+ { (void *) 2046, 36, NULL },
+ { (void *) 2056, 37, NULL },
+ { (void *) 2065, 38, NULL },
+ { (void *) 2075, 39, NULL },
+ { (void *) 2084, 40, NULL },
+ { (void *) 2094, 814, NULL },
+ { (void *) 2102, 814, NULL },
+ { (void *) 2113, 786, NULL },
+ { (void *) 2133, 787, NULL },
+ { (void *) 2153, 788, NULL },
+ { (void *) 2173, 210, NULL },
+ { (void *) 2183, 913, NULL },
+ { (void *) 2203, 913, NULL },
+ { (void *) 2214, 151, NULL },
+ { (void *) 2228, 308, NULL },
+ { (void *) 2241, 632, NULL },
+ { (void *) 2257, 346, NULL },
+ { (void *) 2271, 346, NULL },
+ { (void *) 2288, 339, NULL },
+ { (void *) 2299, 339, NULL },
+ { (void *) 2313, 340, NULL },
+ { (void *) 2335, 340, NULL },
+ { (void *) 2360, 341, NULL },
+ { (void *) 2382, 341, NULL },
+ { (void *) 2407, 339, NULL },
+ { (void *) 2421, 670, NULL },
+ { (void *) 2437, 671, NULL },
+ { (void *) 2454, 672, NULL },
+ { (void *) 2475, 673, NULL },
+ { (void *) 2497, 674, NULL },
+ { (void *) 2518, 675, NULL },
+ { (void *) 2540, 530, NULL },
+ { (void *) 2554, 530, NULL },
+ { (void *) 2571, 446, NULL },
+ { (void *) 2592, 446, NULL },
+ { (void *) 2616, 447, NULL },
+ { (void *) 2637, 447, NULL },
+ { (void *) 2661, 448, NULL },
+ { (void *) 2682, 448, NULL },
+ { (void *) 2706, 448, NULL },
+ { (void *) 2730, 449, NULL },
+ { (void *) 2754, 449, NULL },
+ { (void *) 2781, 450, NULL },
+ { (void *) 2805, 450, NULL },
+ { (void *) 2832, 451, NULL },
+ { (void *) 2856, 451, NULL },
+ { (void *) 2883, 451, NULL },
+ { (void *) 2910, 348, NULL },
+ { (void *) 2930, 348, NULL },
+ { (void *) 2953, 349, NULL },
+ { (void *) 2973, 349, NULL },
+ { (void *) 2996, 350, NULL },
+ { (void *) 3018, 350, NULL },
+ { (void *) 3043, 351, NULL },
+ { (void *) 3066, 351, NULL },
+ { (void *) 3092, 352, NULL },
+ { (void *) 3114, 352, NULL },
+ { (void *) 3139, 353, NULL },
+ { (void *) 3162, 353, NULL },
+ { (void *) 3188, 583, NULL },
+ { (void *) 3206, 347, NULL },
+ { (void *) 3224, 347, NULL },
+ { (void *) 3245, 342, NULL },
+ { (void *) 3260, 342, NULL },
+ { (void *) 3278, 354, NULL },
+ { (void *) 3302, 354, NULL },
+ { (void *) 3329, 355, NULL },
+ { (void *) 3353, 355, NULL },
+ { (void *) 3380, 255, NULL },
+ { (void *) 3391, 323, NULL },
+ { (void *) 3406, 323, NULL },
+ { (void *) 3424, 324, NULL },
+ { (void *) 3439, 324, NULL },
+ { (void *) 3457, 325, NULL },
+ { (void *) 3475, 325, NULL },
+ { (void *) 3496, 326, NULL },
+ { (void *) 3514, 326, NULL },
+ { (void *) 3535, 373, NULL },
+ { (void *) 3553, 373, NULL },
+ { (void *) 3574, 373, NULL },
+ { (void *) 3595, 409, NULL },
+ { (void *) 3609, 531, NULL },
+ { (void *) 3632, 410, NULL },
+ { (void *) 3645, 532, NULL },
+ { (void *) 3667, 941, NULL },
+ { (void *) 3690, 152, NULL },
+ { (void *) 3699, 513, NULL },
+ { (void *) 3713, 513, NULL },
+ { (void *) 3730, 710, NULL },
+ { (void *) 3745, 789, NULL },
+ { (void *) 3769, 861, NULL },
+ { (void *) 3788, 861, NULL },
+ { (void *) 3810, 861, NULL },
+ { (void *) 3832, 4, NULL },
+ { (void *) 3844, 533, NULL },
+ { (void *) 3860, 411, NULL },
+ { (void *) 3874, 719, NULL },
+ { (void *) 3892, 719, NULL },
+ { (void *) 3909, 522, NULL },
+ { (void *) 3923, 522, NULL },
+ { (void *) 3940, 862, NULL },
+ { (void *) 3960, 862, NULL },
+ { (void *) 3983, 862, NULL },
+ { (void *) 4006, 412, NULL },
+ { (void *) 4019, 585, NULL },
+ { (void *) 4030, 327, NULL },
+ { (void *) 4045, 327, NULL },
+ { (void *) 4063, 599, NULL },
+ { (void *) 4088, 799, NULL },
+ { (void *) 4107, 799, NULL },
+ { (void *) 4131, 856, NULL },
+ { (void *) 4146, 245, NULL },
+ { (void *) 4156, 211, NULL },
+ { (void *) 4166, 288, NULL },
+ { (void *) 4177, 606, NULL },
+ { (void *) 4189, 606, NULL },
+ { (void *) 4204, 815, NULL },
+ { (void *) 4216, 815, NULL },
+ { (void *) 4231, 534, NULL },
+ { (void *) 4247, 413, NULL },
+ { (void *) 4260, 214, NULL },
+ { (void *) 4268, 309, NULL },
+ { (void *) 4287, 914, NULL },
+ { (void *) 4305, 453, NULL },
+ { (void *) 4330, 453, NULL },
+ { (void *) 4358, 914, NULL },
+ { (void *) 4367, 310, NULL },
+ { (void *) 4378, 310, NULL },
+ { (void *) 4392, 572, NULL },
+ { (void *) 4412, 572, NULL },
+ { (void *) 4435, 572, NULL },
+ { (void *) 4458, 202, NULL },
+ { (void *) 4469, 571, NULL },
+ { (void *) 4481, 571, NULL },
+ { (void *) 4496, 571, NULL },
+ { (void *) 4511, 311, NULL },
+ { (void *) 4524, 591, NULL },
+ { (void *) 4547, 573, NULL },
+ { (void *) 4569, 573, NULL },
+ { (void *) 4594, 573, NULL },
+ { (void *) 4619, 257, NULL },
+ { (void *) 4630, 338, NULL },
+ { (void *) 4648, 592, NULL },
+ { (void *) 4676, 338, NULL },
+ { (void *) 4697, 614, NULL },
+ { (void *) 4709, 615, NULL },
+ { (void *) 4722, 616, NULL },
+ { (void *) 4734, 617, NULL },
+ { (void *) 4747, 618, NULL },
+ { (void *) 4759, 619, NULL },
+ { (void *) 4772, 620, NULL },
+ { (void *) 4784, 621, NULL },
+ { (void *) 4797, 600, NULL },
+ { (void *) 4819, 949, NULL },
+ { (void *) 4856, 950, NULL },
+ { (void *) 4883, 41, NULL },
+ { (void *) 4892, 312, NULL },
+ { (void *) 4908, 633, NULL },
+ { (void *) 4927, 42, NULL },
+ { (void *) 4937, 215, NULL },
+ { (void *) 4944, 313, NULL },
+ { (void *) 4962, 915, NULL },
+ { (void *) 4979, 454, NULL },
+ { (void *) 5003, 454, NULL },
+ { (void *) 5030, 915, NULL },
+ { (void *) 5038, 43, NULL },
+ { (void *) 5042, 926, NULL },
+ { (void *) 5063, 926, NULL },
+ { (void *) 5086, 790, NULL },
+ { (void *) 5107, 1, NULL },
+ { (void *) 5115, 523, NULL },
+ { (void *) 5124, 523, NULL },
+ { (void *) 5136, 931, NULL },
+ { (void *) 5157, 931, NULL },
+ { (void *) 5181, 228, NULL },
+ { (void *) 5193, 229, NULL },
+ { (void *) 5206, 230, NULL },
+ { (void *) 5218, 231, NULL },
+ { (void *) 5231, 232, NULL },
+ { (void *) 5243, 233, NULL },
+ { (void *) 5256, 234, NULL },
+ { (void *) 5268, 235, NULL },
+ { (void *) 5281, 236, NULL },
+ { (void *) 5291, 238, NULL },
+ { (void *) 5301, 237, NULL },
+ { (void *) 5312, 239, NULL },
+ { (void *) 5323, 720, NULL },
+ { (void *) 5340, 194, NULL },
+ { (void *) 5355, 586, NULL },
+ { (void *) 5365, 676, NULL },
+ { (void *) 5386, 216, NULL },
+ { (void *) 5393, 711, NULL },
+ { (void *) 5407, 217, NULL },
+ { (void *) 5413, 579, NULL },
+ { (void *) 5436, 877, NULL },
+ { (void *) 5464, 668, NULL },
+ { (void *) 5488, 661, NULL },
+ { (void *) 5504, 661, NULL },
+ { (void *) 5523, 662, NULL },
+ { (void *) 5533, 662, NULL },
+ { (void *) 5546, 663, NULL },
+ { (void *) 5557, 663, NULL },
+ { (void *) 5571, 664, NULL },
+ { (void *) 5581, 664, NULL },
+ { (void *) 5594, 665, NULL },
+ { (void *) 5605, 665, NULL },
+ { (void *) 5619, 153, NULL },
+ { (void *) 5624, 154, NULL },
+ { (void *) 5630, 155, NULL },
+ { (void *) 5635, 156, NULL },
+ { (void *) 5641, 816, NULL },
+ { (void *) 5646, 816, NULL },
+ { (void *) 5654, 817, NULL },
+ { (void *) 5660, 817, NULL },
+ { (void *) 5669, 863, NULL },
+ { (void *) 5693, 863, NULL },
+ { (void *) 5720, 863, NULL },
+ { (void *) 5747, 437, NULL },
+ { (void *) 5766, 864, NULL },
+ { (void *) 5787, 864, NULL },
+ { (void *) 5811, 865, NULL },
+ { (void *) 5832, 865, NULL },
+ { (void *) 5856, 865, NULL },
+ { (void *) 5880, 866, NULL },
+ { (void *) 5901, 866, NULL },
+ { (void *) 5925, 866, NULL },
+ { (void *) 5949, 575, NULL },
+ { (void *) 5971, 576, NULL },
+ { (void *) 5997, 912, NULL },
+ { (void *) 6021, 912, NULL },
+ { (void *) 6048, 157, NULL },
+ { (void *) 6058, 289, NULL },
+ { (void *) 6066, 853, NULL },
+ { (void *) 6075, 853, NULL },
+ { (void *) 6087, 818, NULL },
+ { (void *) 6096, 818, NULL },
+ { (void *) 6108, 514, NULL },
+ { (void *) 6119, 514, NULL },
+ { (void *) 6133, 712, NULL },
+ { (void *) 6145, 791, NULL },
+ { (void *) 6167, 867, NULL },
+ { (void *) 6183, 867, NULL },
+ { (void *) 6202, 867, NULL },
+ { (void *) 6221, 5, NULL },
+ { (void *) 6230, 721, NULL },
+ { (void *) 6245, 721, NULL },
+ { (void *) 6259, 524, NULL },
+ { (void *) 6270, 524, NULL },
+ { (void *) 6284, 868, NULL },
+ { (void *) 6301, 868, NULL },
+ { (void *) 6321, 868, NULL },
+ { (void *) 6341, 328, NULL },
+ { (void *) 6353, 328, NULL },
+ { (void *) 6368, 601, NULL },
+ { (void *) 6390, 582, NULL },
+ { (void *) 6406, 800, NULL },
+ { (void *) 6427, 869, NULL },
+ { (void *) 6442, 869, NULL },
+ { (void *) 6460, 869, NULL },
+ { (void *) 6478, 569, NULL },
+ { (void *) 6494, 569, NULL },
+ { (void *) 6513, 535, NULL },
+ { (void *) 6530, 535, NULL },
+ { (void *) 6550, 536, NULL },
+ { (void *) 6572, 414, NULL },
+ { (void *) 6591, 570, NULL },
+ { (void *) 6609, 570, NULL },
+ { (void *) 6630, 916, NULL },
+ { (void *) 6652, 916, NULL },
+ { (void *) 6666, 258, NULL },
+ { (void *) 6678, 438, NULL },
+ { (void *) 6701, 515, NULL },
+ { (void *) 6722, 515, NULL },
+ { (void *) 6746, 516, NULL },
+ { (void *) 6764, 516, NULL },
+ { (void *) 6785, 516, NULL },
+ { (void *) 6806, 517, NULL },
+ { (void *) 6823, 517, NULL },
+ { (void *) 6843, 259, NULL },
+ { (void *) 6856, 854, NULL },
+ { (void *) 6870, 854, NULL },
+ { (void *) 6887, 819, NULL },
+ { (void *) 6901, 819, NULL },
+ { (void *) 6918, 343, NULL },
+ { (void *) 6932, 343, NULL },
+ { (void *) 6949, 344, NULL },
+ { (void *) 6974, 344, NULL },
+ { (void *) 7002, 344, NULL },
+ { (void *) 7030, 345, NULL },
+ { (void *) 7055, 345, NULL },
+ { (void *) 7083, 345, NULL },
+ { (void *) 7111, 343, NULL },
+ { (void *) 7128, 677, NULL },
+ { (void *) 7158, 678, NULL },
+ { (void *) 7188, 679, NULL },
+ { (void *) 7219, 680, NULL },
+ { (void *) 7250, 452, NULL },
+ { (void *) 7272, 452, NULL },
+ { (void *) 7297, 356, NULL },
+ { (void *) 7318, 356, NULL },
+ { (void *) 7342, 357, NULL },
+ { (void *) 7368, 357, NULL },
+ { (void *) 7397, 358, NULL },
+ { (void *) 7423, 358, NULL },
+ { (void *) 7452, 260, NULL },
+ { (void *) 7463, 261, NULL },
+ { (void *) 7472, 713, NULL },
+ { (void *) 7485, 681, NULL },
+ { (void *) 7520, 682, NULL },
+ { (void *) 7555, 820, NULL },
+ { (void *) 7565, 820, NULL },
+ { (void *) 7578, 262, NULL },
+ { (void *) 7588, 879, NULL },
+ { (void *) 7608, 879, NULL },
+ { (void *) 7631, 870, NULL },
+ { (void *) 7667, 870, NULL },
+ { (void *) 7706, 870, NULL },
+ { (void *) 7745, 537, NULL },
+ { (void *) 7758, 361, NULL },
+ { (void *) 7771, 361, NULL },
+ { (void *) 7787, 362, NULL },
+ { (void *) 7811, 362, NULL },
+ { (void *) 7838, 363, NULL },
+ { (void *) 7862, 363, NULL },
+ { (void *) 7889, 538, NULL },
+ { (void *) 7903, 439, NULL },
+ { (void *) 7919, 587, NULL },
+ { (void *) 7933, 917, NULL },
+ { (void *) 7955, 917, NULL },
+ { (void *) 7969, 263, NULL },
+ { (void *) 7981, 264, NULL },
+ { (void *) 7992, 265, NULL },
+ { (void *) 8003, 821, NULL },
+ { (void *) 8014, 821, NULL },
+ { (void *) 8028, 266, NULL },
+ { (void *) 8037, 267, NULL },
+ { (void *) 8046, 268, NULL },
+ { (void *) 8055, 269, NULL },
+ { (void *) 8069, 270, NULL },
+ { (void *) 8083, 822, NULL },
+ { (void *) 8097, 822, NULL },
+ { (void *) 8114, 364, NULL },
+ { (void *) 8124, 364, NULL },
+ { (void *) 8137, 365, NULL },
+ { (void *) 8158, 365, NULL },
+ { (void *) 8182, 366, NULL },
+ { (void *) 8203, 366, NULL },
+ { (void *) 8227, 539, NULL },
+ { (void *) 8251, 937, NULL },
+ { (void *) 8277, 540, NULL },
+ { (void *) 8301, 271, NULL },
+ { (void *) 8315, 272, NULL },
+ { (void *) 8330, 273, NULL },
+ { (void *) 8345, 623, NULL },
+ { (void *) 8375, 624, NULL },
+ { (void *) 8405, 329, NULL },
+ { (void *) 8417, 329, NULL },
+ { (void *) 8432, 274, NULL },
+ { (void *) 8450, 610, NULL },
+ { (void *) 8467, 610, NULL },
+ { (void *) 8487, 455, NULL },
+ { (void *) 8515, 456, NULL },
+ { (void *) 8543, 415, NULL },
+ { (void *) 8561, 457, NULL },
+ { (void *) 8591, 458, NULL },
+ { (void *) 8621, 802, NULL },
+ { (void *) 8650, 803, NULL },
+ { (void *) 8679, 722, NULL },
+ { (void *) 8703, 723, NULL },
+ { (void *) 8727, 459, NULL },
+ { (void *) 8747, 724, NULL },
+ { (void *) 8766, 416, NULL },
+ { (void *) 8779, 460, NULL },
+ { (void *) 8795, 725, NULL },
+ { (void *) 8810, 947, NULL },
+ { (void *) 8832, 525, NULL },
+ { (void *) 8849, 525, NULL },
+ { (void *) 8869, 948, NULL },
+ { (void *) 8892, 526, NULL },
+ { (void *) 8910, 526, NULL },
+ { (void *) 8931, 527, NULL },
+ { (void *) 8942, 527, NULL },
+ { (void *) 8956, 871, NULL },
+ { (void *) 8983, 871, NULL },
+ { (void *) 9013, 871, NULL },
+ { (void *) 9043, 359, NULL },
+ { (void *) 9062, 359, NULL },
+ { (void *) 9084, 417, NULL },
+ { (void *) 9101, 607, NULL },
+ { (void *) 9126, 541, NULL },
+ { (void *) 9142, 541, NULL },
+ { (void *) 9161, 418, NULL },
+ { (void *) 9173, 275, NULL },
+ { (void *) 9183, 435, NULL },
+ { (void *) 9194, 588, NULL },
+ { (void *) 9204, 777, NULL },
+ { (void *) 9229, 778, NULL },
+ { (void *) 9254, 276, NULL },
+ { (void *) 9266, 277, NULL },
+ { (void *) 9278, 823, NULL },
+ { (void *) 9290, 823, NULL },
+ { (void *) 9305, 278, NULL },
+ { (void *) 9317, 279, NULL },
+ { (void *) 9329, 279, NULL },
+ { (void *) 9344, 280, NULL },
+ { (void *) 9356, 280, NULL },
+ { (void *) 9371, 824, NULL },
+ { (void *) 9386, 281, NULL },
+ { (void *) 9398, 284, NULL },
+ { (void *) 9421, 285, NULL },
+ { (void *) 9444, 921, NULL },
+ { (void *) 9463, 921, NULL },
+ { (void *) 9485, 922, NULL },
+ { (void *) 9505, 922, NULL },
+ { (void *) 9528, 935, NULL },
+ { (void *) 9557, 282, NULL },
+ { (void *) 9575, 283, NULL },
+ { (void *) 9593, 825, NULL },
+ { (void *) 9611, 825, NULL },
+ { (void *) 9632, 726, NULL },
+ { (void *) 9651, 932, NULL },
+ { (void *) 9679, 932, NULL },
+ { (void *) 9710, 542, NULL },
+ { (void *) 9729, 542, NULL },
+ { (void *) 9751, 543, NULL },
+ { (void *) 9764, 543, NULL },
+ { (void *) 9780, 544, NULL },
+ { (void *) 9793, 544, NULL },
+ { (void *) 9809, 880, NULL },
+ { (void *) 9823, 880, NULL },
+ { (void *) 9840, 881, NULL },
+ { (void *) 9859, 881, NULL },
+ { (void *) 9881, 882, NULL },
+ { (void *) 9901, 882, NULL },
+ { (void *) 9924, 727, NULL },
+ { (void *) 9948, 727, NULL },
+ { (void *) 9975, 727, NULL },
+ { (void *) 10001, 461, NULL },
+ { (void *) 10019, 461, NULL },
+ { (void *) 10040, 728, NULL },
+ { (void *) 10060, 462, NULL },
+ { (void *) 10078, 462, NULL },
+ { (void *) 10099, 729, NULL },
+ { (void *) 10119, 463, NULL },
+ { (void *) 10137, 463, NULL },
+ { (void *) 10158, 730, NULL },
+ { (void *) 10178, 158, NULL },
+ { (void *) 10183, 367, NULL },
+ { (void *) 10193, 367, NULL },
+ { (void *) 10206, 212, NULL },
+ { (void *) 10216, 314, NULL },
+ { (void *) 10229, 634, NULL },
+ { (void *) 10245, 44, NULL },
+ { (void *) 10252, 45, NULL },
+ { (void *) 10260, 46, NULL },
+ { (void *) 10267, 47, NULL },
+ { (void *) 10275, 48, NULL },
+ { (void *) 10282, 49, NULL },
+ { (void *) 10290, 50, NULL },
+ { (void *) 10297, 51, NULL },
+ { (void *) 10305, 315, NULL },
+ { (void *) 10313, 316, NULL },
+ { (void *) 10322, 197, NULL },
+ { (void *) 10332, 317, NULL },
+ { (void *) 10350, 518, NULL },
+ { (void *) 10359, 518, NULL },
+ { (void *) 10371, 286, NULL },
+ { (void *) 10381, 918, NULL },
+ { (void *) 10401, 918, NULL },
+ { (void *) 10412, 714, NULL },
+ { (void *) 10422, 872, NULL },
+ { (void *) 10436, 872, NULL },
+ { (void *) 10453, 872, NULL },
+ { (void *) 10470, 287, NULL },
+ { (void *) 10477, 419, NULL },
+ { (void *) 10487, 731, NULL },
+ { (void *) 10500, 731, NULL },
+ { (void *) 10512, 528, NULL },
+ { (void *) 10520, 528, NULL },
+ { (void *) 10531, 873, NULL },
+ { (void *) 10546, 873, NULL },
+ { (void *) 10564, 873, NULL },
+ { (void *) 10582, 420, NULL },
+ { (void *) 10591, 589, NULL },
+ { (void *) 10598, 330, NULL },
+ { (void *) 10608, 330, NULL },
+ { (void *) 10621, 602, NULL },
+ { (void *) 10641, 801, NULL },
+ { (void *) 10655, 801, NULL },
+ { (void *) 10674, 163, NULL },
+ { (void *) 10686, 164, NULL },
+ { (void *) 10699, 165, NULL },
+ { (void *) 10711, 166, NULL },
+ { (void *) 10724, 826, NULL },
+ { (void *) 10736, 826, NULL },
+ { (void *) 10751, 827, NULL },
+ { (void *) 10764, 827, NULL },
+ { (void *) 10780, 159, NULL },
+ { (void *) 10787, 160, NULL },
+ { (void *) 10795, 161, NULL },
+ { (void *) 10802, 162, NULL },
+ { (void *) 10810, 828, NULL },
+ { (void *) 10817, 828, NULL },
+ { (void *) 10827, 829, NULL },
+ { (void *) 10835, 829, NULL },
+ { (void *) 10846, 167, NULL },
+ { (void *) 10858, 168, NULL },
+ { (void *) 10868, 830, NULL },
+ { (void *) 10879, 830, NULL },
+ { (void *) 10893, 545, NULL },
+ { (void *) 10905, 545, NULL },
+ { (void *) 10920, 6, NULL },
+ { (void *) 10929, 290, NULL },
+ { (void *) 10942, 292, NULL },
+ { (void *) 10954, 291, NULL },
+ { (void *) 10966, 831, NULL },
+ { (void *) 10978, 831, NULL },
+ { (void *) 10993, 198, NULL },
+ { (void *) 11002, 732, NULL },
+ { (void *) 11016, 441, NULL },
+ { (void *) 11037, 441, NULL },
+ { (void *) 11061, 442, NULL },
+ { (void *) 11082, 442, NULL },
+ { (void *) 11106, 640, NULL },
+ { (void *) 11120, 242, NULL },
+ { (void *) 11128, 220, NULL },
+ { (void *) 11134, 221, NULL },
+ { (void *) 11140, 222, NULL },
+ { (void *) 11146, 223, NULL },
+ { (void *) 11152, 519, NULL },
+ { (void *) 11162, 519, NULL },
+ { (void *) 11175, 519, NULL },
+ { (void *) 11188, 580, NULL },
+ { (void *) 11203, 224, NULL },
+ { (void *) 11213, 225, NULL },
+ { (void *) 11223, 226, NULL },
+ { (void *) 11233, 227, NULL },
+ { (void *) 11243, 169, NULL },
+ { (void *) 11253, 170, NULL },
+ { (void *) 11264, 171, NULL },
+ { (void *) 11274, 172, NULL },
+ { (void *) 11285, 832, NULL },
+ { (void *) 11295, 832, NULL },
+ { (void *) 11308, 833, NULL },
+ { (void *) 11319, 833, NULL },
+ { (void *) 11333, 293, NULL },
+ { (void *) 11344, 368, NULL },
+ { (void *) 11351, 368, NULL },
+ { (void *) 11361, 295, NULL },
+ { (void *) 11373, 294, NULL },
+ { (void *) 11385, 834, NULL },
+ { (void *) 11397, 834, NULL },
+ { (void *) 11412, 443, NULL },
+ { (void *) 11433, 443, NULL },
+ { (void *) 11457, 444, NULL },
+ { (void *) 11478, 444, NULL },
+ { (void *) 11502, 659, NULL },
+ { (void *) 11518, 659, NULL },
+ { (void *) 11537, 660, NULL },
+ { (void *) 11555, 593, NULL },
+ { (void *) 11583, 660, NULL },
+ { (void *) 11604, 708, NULL },
+ { (void *) 11627, 709, NULL },
+ { (void *) 11652, 376, NULL },
+ { (void *) 11668, 376, NULL },
+ { (void *) 11687, 377, NULL },
+ { (void *) 11704, 377, NULL },
+ { (void *) 11724, 378, NULL },
+ { (void *) 11740, 378, NULL },
+ { (void *) 11759, 379, NULL },
+ { (void *) 11776, 379, NULL },
+ { (void *) 11796, 380, NULL },
+ { (void *) 11812, 380, NULL },
+ { (void *) 11831, 381, NULL },
+ { (void *) 11848, 381, NULL },
+ { (void *) 11868, 382, NULL },
+ { (void *) 11884, 382, NULL },
+ { (void *) 11903, 383, NULL },
+ { (void *) 11920, 383, NULL },
+ { (void *) 11940, 384, NULL },
+ { (void *) 11956, 384, NULL },
+ { (void *) 11975, 385, NULL },
+ { (void *) 11992, 385, NULL },
+ { (void *) 12012, 386, NULL },
+ { (void *) 12028, 386, NULL },
+ { (void *) 12047, 387, NULL },
+ { (void *) 12064, 387, NULL },
+ { (void *) 12084, 388, NULL },
+ { (void *) 12100, 388, NULL },
+ { (void *) 12119, 389, NULL },
+ { (void *) 12136, 389, NULL },
+ { (void *) 12156, 390, NULL },
+ { (void *) 12172, 390, NULL },
+ { (void *) 12191, 391, NULL },
+ { (void *) 12208, 391, NULL },
+ { (void *) 12228, 392, NULL },
+ { (void *) 12244, 392, NULL },
+ { (void *) 12263, 393, NULL },
+ { (void *) 12280, 393, NULL },
+ { (void *) 12300, 394, NULL },
+ { (void *) 12316, 394, NULL },
+ { (void *) 12335, 395, NULL },
+ { (void *) 12352, 395, NULL },
+ { (void *) 12372, 396, NULL },
+ { (void *) 12388, 396, NULL },
+ { (void *) 12407, 397, NULL },
+ { (void *) 12424, 397, NULL },
+ { (void *) 12444, 398, NULL },
+ { (void *) 12460, 398, NULL },
+ { (void *) 12479, 399, NULL },
+ { (void *) 12496, 399, NULL },
+ { (void *) 12516, 400, NULL },
+ { (void *) 12532, 400, NULL },
+ { (void *) 12551, 401, NULL },
+ { (void *) 12568, 401, NULL },
+ { (void *) 12588, 402, NULL },
+ { (void *) 12604, 402, NULL },
+ { (void *) 12623, 403, NULL },
+ { (void *) 12640, 403, NULL },
+ { (void *) 12660, 404, NULL },
+ { (void *) 12676, 404, NULL },
+ { (void *) 12695, 405, NULL },
+ { (void *) 12712, 405, NULL },
+ { (void *) 12732, 406, NULL },
+ { (void *) 12748, 406, NULL },
+ { (void *) 12767, 407, NULL },
+ { (void *) 12784, 407, NULL },
+ { (void *) 12804, 835, NULL },
+ { (void *) 12820, 835, NULL },
+ { (void *) 12839, 0, NULL },
+ { (void *) 12847, 52, NULL },
+ { (void *) 12856, 53, NULL },
+ { (void *) 12866, 54, NULL },
+ { (void *) 12875, 55, NULL },
+ { (void *) 12885, 56, NULL },
+ { (void *) 12894, 57, NULL },
+ { (void *) 12904, 58, NULL },
+ { (void *) 12913, 59, NULL },
+ { (void *) 12923, 60, NULL },
+ { (void *) 12932, 61, NULL },
+ { (void *) 12942, 836, NULL },
+ { (void *) 12951, 836, NULL },
+ { (void *) 12963, 318, NULL },
+ { (void *) 12977, 635, NULL },
+ { (void *) 12994, 938, NULL },
+ { (void *) 13015, 939, NULL },
+ { (void *) 13038, 296, NULL },
+ { (void *) 13044, 855, NULL },
+ { (void *) 13051, 855, NULL },
+ { (void *) 13061, 837, NULL },
+ { (void *) 13068, 837, NULL },
+ { (void *) 13078, 792, NULL },
+ { (void *) 13094, 199, NULL },
+ { (void *) 13106, 603, NULL },
+ { (void *) 13129, 251, NULL },
+ { (void *) 13140, 252, NULL },
+ { (void *) 13152, 253, NULL },
+ { (void *) 13164, 249, NULL },
+ { (void *) 13176, 250, NULL },
+ { (void *) 13188, 625, NULL },
+ { (void *) 13214, 626, NULL },
+ { (void *) 13241, 627, NULL },
+ { (void *) 13267, 628, NULL },
+ { (void *) 13294, 666, NULL },
+ { (void *) 13310, 247, NULL },
+ { (void *) 13325, 248, NULL },
+ { (void *) 13340, 246, NULL },
+ { (void *) 13350, 638, NULL },
+ { (void *) 13366, 638, NULL },
+ { (void *) 13385, 638, NULL },
+ { (void *) 13404, 638, NULL },
+ { (void *) 13424, 639, NULL },
+ { (void *) 13441, 639, NULL },
+ { (void *) 13461, 639, NULL },
+ { (void *) 13481, 639, NULL },
+ { (void *) 13502, 795, NULL },
+ { (void *) 13518, 795, NULL },
+ { (void *) 13536, 796, NULL },
+ { (void *) 13553, 796, NULL },
+ { (void *) 13572, 838, NULL },
+ { (void *) 13588, 838, NULL },
+ { (void *) 13607, 839, NULL },
+ { (void *) 13624, 839, NULL },
+ { (void *) 13644, 173, NULL },
+ { (void *) 13654, 622, NULL },
+ { (void *) 13674, 840, NULL },
+ { (void *) 13685, 840, NULL },
+ { (void *) 13699, 174, NULL },
+ { (void *) 13711, 319, NULL },
+ { (void *) 13725, 613, NULL },
+ { (void *) 13742, 841, NULL },
+ { (void *) 13757, 841, NULL },
+ { (void *) 13775, 175, NULL },
+ { (void *) 13790, 218, NULL },
+ { (void *) 13800, 334, NULL },
+ { (void *) 13816, 297, NULL },
+ { (void *) 13826, 200, NULL },
+ { (void *) 13834, 808, NULL },
+ { (void *) 13856, 808, NULL },
+ { (void *) 13880, 809, NULL },
+ { (void *) 13899, 331, NULL },
+ { (void *) 13918, 331, NULL },
+ { (void *) 13940, 611, NULL },
+ { (void *) 13954, 611, NULL },
+ { (void *) 13971, 464, NULL },
+ { (void *) 13996, 465, NULL },
+ { (void *) 14022, 466, NULL },
+ { (void *) 14047, 467, NULL },
+ { (void *) 14073, 945, NULL },
+ { (void *) 14100, 468, NULL },
+ { (void *) 14127, 469, NULL },
+ { (void *) 14155, 470, NULL },
+ { (void *) 14182, 471, NULL },
+ { (void *) 14210, 946, NULL },
+ { (void *) 14239, 804, NULL },
+ { (void *) 14265, 805, NULL },
+ { (void *) 14292, 806, NULL },
+ { (void *) 14318, 807, NULL },
+ { (void *) 14345, 464, NULL },
+ { (void *) 14366, 465, NULL },
+ { (void *) 14388, 466, NULL },
+ { (void *) 14409, 467, NULL },
+ { (void *) 14431, 612, NULL },
+ { (void *) 14449, 577, NULL },
+ { (void *) 14470, 733, NULL },
+ { (void *) 14493, 734, NULL },
+ { (void *) 14516, 472, NULL },
+ { (void *) 14533, 934, NULL },
+ { (void *) 14549, 934, NULL },
+ { (void *) 14568, 219, NULL },
+ { (void *) 14579, 335, NULL },
+ { (void *) 14596, 298, NULL },
+ { (void *) 14607, 201, NULL },
+ { (void *) 14616, 629, NULL },
+ { (void *) 14632, 62, NULL },
+ { (void *) 14644, 63, NULL },
+ { (void *) 14657, 64, NULL },
+ { (void *) 14669, 65, NULL },
+ { (void *) 14682, 66, NULL },
+ { (void *) 14694, 67, NULL },
+ { (void *) 14707, 68, NULL },
+ { (void *) 14719, 69, NULL },
+ { (void *) 14732, 70, NULL },
+ { (void *) 14744, 71, NULL },
+ { (void *) 14757, 72, NULL },
+ { (void *) 14769, 73, NULL },
+ { (void *) 14782, 74, NULL },
+ { (void *) 14794, 75, NULL },
+ { (void *) 14807, 76, NULL },
+ { (void *) 14819, 77, NULL },
+ { (void *) 14832, 78, NULL },
+ { (void *) 14844, 79, NULL },
+ { (void *) 14857, 80, NULL },
+ { (void *) 14869, 81, NULL },
+ { (void *) 14882, 82, NULL },
+ { (void *) 14894, 83, NULL },
+ { (void *) 14907, 84, NULL },
+ { (void *) 14919, 85, NULL },
+ { (void *) 14932, 254, NULL },
+ { (void *) 14943, 256, NULL },
+ { (void *) 14954, 86, NULL },
+ { (void *) 14960, 87, NULL },
+ { (void *) 14967, 88, NULL },
+ { (void *) 14973, 89, NULL },
+ { (void *) 14980, 90, NULL },
+ { (void *) 14986, 91, NULL },
+ { (void *) 14993, 92, NULL },
+ { (void *) 14999, 93, NULL },
+ { (void *) 15006, 608, NULL },
+ { (void *) 15028, 196, NULL },
+ { (void *) 15039, 874, NULL },
+ { (void *) 15059, 874, NULL },
+ { (void *) 15082, 574, NULL },
+ { (void *) 15113, 574, NULL },
+ { (void *) 15147, 874, NULL },
+ { (void *) 15170, 735, NULL },
+ { (void *) 15196, 369, NULL },
+ { (void *) 15211, 369, NULL },
+ { (void *) 15229, 370, NULL },
+ { (void *) 15241, 370, NULL },
+ { (void *) 15256, 683, NULL },
+ { (void *) 15274, 604, NULL },
+ { (void *) 15298, 299, NULL },
+ { (void *) 15306, 300, NULL },
+ { (void *) 15314, 842, NULL },
+ { (void *) 15322, 842, NULL },
+ { (void *) 15333, 445, NULL },
+ { (void *) 15348, 445, NULL },
+ { (void *) 15366, 843, NULL },
+ { (void *) 15382, 843, NULL },
+ { (void *) 15401, 793, NULL },
+ { (void *) 15414, 630, NULL },
+ { (void *) 15428, 630, NULL },
+ { (void *) 15443, 631, NULL },
+ { (void *) 15460, 631, NULL },
+ { (void *) 15478, 301, NULL },
+ { (void *) 15485, 302, NULL },
+ { (void *) 15492, 844, NULL },
+ { (void *) 15499, 844, NULL },
+ { (void *) 15509, 176, NULL },
+ { (void *) 15517, 642, NULL },
+ { (void *) 15534, 642, NULL },
+ { (void *) 15554, 643, NULL },
+ { (void *) 15572, 643, NULL },
+ { (void *) 15593, 644, NULL },
+ { (void *) 15610, 644, NULL },
+ { (void *) 15630, 645, NULL },
+ { (void *) 15648, 645, NULL },
+ { (void *) 15669, 646, NULL },
+ { (void *) 15686, 646, NULL },
+ { (void *) 15706, 647, NULL },
+ { (void *) 15724, 647, NULL },
+ { (void *) 15745, 648, NULL },
+ { (void *) 15762, 648, NULL },
+ { (void *) 15782, 649, NULL },
+ { (void *) 15800, 649, NULL },
+ { (void *) 15821, 650, NULL },
+ { (void *) 15838, 650, NULL },
+ { (void *) 15858, 651, NULL },
+ { (void *) 15876, 651, NULL },
+ { (void *) 15897, 652, NULL },
+ { (void *) 15915, 652, NULL },
+ { (void *) 15936, 653, NULL },
+ { (void *) 15955, 653, NULL },
+ { (void *) 15977, 654, NULL },
+ { (void *) 15995, 654, NULL },
+ { (void *) 16016, 655, NULL },
+ { (void *) 16035, 655, NULL },
+ { (void *) 16057, 656, NULL },
+ { (void *) 16075, 656, NULL },
+ { (void *) 16096, 657, NULL },
+ { (void *) 16115, 657, NULL },
+ { (void *) 16137, 658, NULL },
+ { (void *) 16159, 658, NULL },
+ { (void *) 16184, 195, NULL },
+ { (void *) 16197, 360, NULL },
+ { (void *) 16215, 360, NULL },
+ { (void *) 16236, 715, NULL },
+ { (void *) 16247, 794, NULL },
+ { (void *) 16276, 177, NULL },
+ { (void *) 16287, 609, NULL },
+ { (void *) 16300, 546, NULL },
+ { (void *) 16313, 546, NULL },
+ { (void *) 16329, 243, NULL },
+ { (void *) 16341, 421, NULL },
+ { (void *) 16361, 944, NULL },
+ { (void *) 16384, 209, NULL },
+ { (void *) 16396, 422, NULL },
+ { (void *) 16416, 244, NULL },
+ { (void *) 16426, 423, NULL },
+ { (void *) 16444, 423, NULL },
+ { (void *) 16465, 716, NULL },
+ { (void *) 16477, 436, NULL },
+ { (void *) 16487, 779, NULL },
+ { (void *) 16509, 780, NULL },
+ { (void *) 16531, 94, NULL },
+ { (void *) 16542, 95, NULL },
+ { (void *) 16554, 96, NULL },
+ { (void *) 16565, 97, NULL },
+ { (void *) 16577, 98, NULL },
+ { (void *) 16588, 99, NULL },
+ { (void *) 16600, 100, NULL },
+ { (void *) 16611, 101, NULL },
+ { (void *) 16623, 102, NULL },
+ { (void *) 16634, 103, NULL },
+ { (void *) 16646, 104, NULL },
+ { (void *) 16657, 105, NULL },
+ { (void *) 16669, 106, NULL },
+ { (void *) 16680, 107, NULL },
+ { (void *) 16692, 108, NULL },
+ { (void *) 16703, 109, NULL },
+ { (void *) 16715, 110, NULL },
+ { (void *) 16726, 111, NULL },
+ { (void *) 16738, 112, NULL },
+ { (void *) 16749, 113, NULL },
+ { (void *) 16761, 114, NULL },
+ { (void *) 16772, 115, NULL },
+ { (void *) 16784, 116, NULL },
+ { (void *) 16795, 117, NULL },
+ { (void *) 16807, 118, NULL },
+ { (void *) 16818, 119, NULL },
+ { (void *) 16830, 120, NULL },
+ { (void *) 16841, 121, NULL },
+ { (void *) 16853, 122, NULL },
+ { (void *) 16864, 123, NULL },
+ { (void *) 16876, 124, NULL },
+ { (void *) 16887, 125, NULL },
+ { (void *) 16899, 320, NULL },
+ { (void *) 16915, 636, NULL },
+ { (void *) 16934, 184, NULL },
+ { (void *) 16942, 185, NULL },
+ { (void *) 16951, 186, NULL },
+ { (void *) 16959, 187, NULL },
+ { (void *) 16968, 845, NULL },
+ { (void *) 16976, 845, NULL },
+ { (void *) 16987, 846, NULL },
+ { (void *) 16996, 846, NULL },
+ { (void *) 17008, 188, NULL },
+ { (void *) 17016, 189, NULL },
+ { (void *) 17025, 190, NULL },
+ { (void *) 17033, 190, NULL },
+ { (void *) 17044, 191, NULL },
+ { (void *) 17053, 191, NULL },
+ { (void *) 17065, 192, NULL },
+ { (void *) 17073, 192, NULL },
+ { (void *) 17084, 193, NULL },
+ { (void *) 17093, 193, NULL },
+ { (void *) 17105, 847, NULL },
+ { (void *) 17116, 848, NULL },
+ { (void *) 17128, 182, NULL },
+ { (void *) 17139, 183, NULL },
+ { (void *) 17150, 371, NULL },
+ { (void *) 17161, 371, NULL },
+ { (void *) 17175, 371, NULL },
+ { (void *) 17189, 923, NULL },
+ { (void *) 17205, 923, NULL },
+ { (void *) 17224, 924, NULL },
+ { (void *) 17241, 924, NULL },
+ { (void *) 17261, 178, NULL },
+ { (void *) 17275, 179, NULL },
+ { (void *) 17290, 180, NULL },
+ { (void *) 17304, 181, NULL },
+ { (void *) 17319, 849, NULL },
+ { (void *) 17333, 849, NULL },
+ { (void *) 17350, 850, NULL },
+ { (void *) 17365, 850, NULL },
+ { (void *) 17383, 332, NULL },
+ { (void *) 17397, 332, NULL },
+ { (void *) 17414, 333, NULL },
+ { (void *) 17428, 333, NULL },
+ { (void *) 17445, 372, NULL },
+ { (void *) 17459, 372, NULL },
+ { (void *) 17476, 372, NULL },
+ { (void *) 17493, 943, NULL },
+ { (void *) 17510, 936, NULL },
+ { (void *) 17528, 736, NULL },
+ { (void *) 17542, 933, NULL },
+ { (void *) 17568, 933, NULL },
+ { (void *) 17597, 303, NULL },
+ { (void *) 17608, 304, NULL },
+ { (void *) 17619, 851, NULL },
+ { (void *) 17630, 851, NULL },
+ { (void *) 17644, 547, NULL },
+ { (void *) 17654, 547, NULL },
+ { (void *) 17667, 548, NULL },
+ { (void *) 17678, 548, NULL },
+ { (void *) 17692, 549, NULL },
+ { (void *) 17702, 549, NULL },
+ { (void *) 17715, 550, NULL },
+ { (void *) 17726, 550, NULL },
+ { (void *) 17740, 883, NULL },
+ { (void *) 17751, 883, NULL },
+ { (void *) 17765, 884, NULL },
+ { (void *) 17777, 884, NULL },
+ { (void *) 17792, 551, NULL },
+ { (void *) 17802, 551, NULL },
+ { (void *) 17815, 552, NULL },
+ { (void *) 17826, 552, NULL },
+ { (void *) 17840, 553, NULL },
+ { (void *) 17850, 553, NULL },
+ { (void *) 17863, 554, NULL },
+ { (void *) 17874, 554, NULL },
+ { (void *) 17888, 885, NULL },
+ { (void *) 17899, 885, NULL },
+ { (void *) 17913, 886, NULL },
+ { (void *) 17925, 886, NULL },
+ { (void *) 17940, 555, NULL },
+ { (void *) 17950, 555, NULL },
+ { (void *) 17963, 556, NULL },
+ { (void *) 17974, 556, NULL },
+ { (void *) 17988, 557, NULL },
+ { (void *) 17998, 557, NULL },
+ { (void *) 18011, 558, NULL },
+ { (void *) 18022, 558, NULL },
+ { (void *) 18036, 887, NULL },
+ { (void *) 18047, 887, NULL },
+ { (void *) 18061, 888, NULL },
+ { (void *) 18073, 888, NULL },
+ { (void *) 18088, 559, NULL },
+ { (void *) 18098, 559, NULL },
+ { (void *) 18111, 560, NULL },
+ { (void *) 18122, 560, NULL },
+ { (void *) 18136, 561, NULL },
+ { (void *) 18146, 561, NULL },
+ { (void *) 18159, 562, NULL },
+ { (void *) 18170, 562, NULL },
+ { (void *) 18184, 889, NULL },
+ { (void *) 18195, 889, NULL },
+ { (void *) 18209, 890, NULL },
+ { (void *) 18221, 890, NULL },
+ { (void *) 18236, 563, NULL },
+ { (void *) 18253, 563, NULL },
+ { (void *) 18273, 424, NULL },
+ { (void *) 18292, 425, NULL },
+ { (void *) 18311, 564, NULL },
+ { (void *) 18328, 564, NULL },
+ { (void *) 18348, 426, NULL },
+ { (void *) 18367, 427, NULL },
+ { (void *) 18386, 565, NULL },
+ { (void *) 18403, 565, NULL },
+ { (void *) 18423, 428, NULL },
+ { (void *) 18442, 429, NULL },
+ { (void *) 18461, 641, NULL },
+ { (void *) 18477, 520, NULL },
+ { (void *) 18489, 520, NULL },
+ { (void *) 18504, 520, NULL },
+ { (void *) 18519, 566, NULL },
+ { (void *) 18530, 566, NULL },
+ { (void *) 18550, 942, NULL },
+ { (void *) 18570, 567, NULL },
+ { (void *) 18586, 567, NULL },
+ { (void *) 18605, 126, NULL },
+ { (void *) 18614, 127, NULL },
+ { (void *) 18624, 128, NULL },
+ { (void *) 18633, 129, NULL },
+ { (void *) 18643, 130, NULL },
+ { (void *) 18652, 131, NULL },
+ { (void *) 18662, 132, NULL },
+ { (void *) 18671, 133, NULL },
+ { (void *) 18681, 134, NULL },
+ { (void *) 18690, 135, NULL },
+ { (void *) 18700, 136, NULL },
+ { (void *) 18709, 137, NULL },
+ { (void *) 18719, 138, NULL },
+ { (void *) 18728, 139, NULL },
+ { (void *) 18738, 140, NULL },
+ { (void *) 18747, 141, NULL },
+ { (void *) 18757, 142, NULL },
+ { (void *) 18766, 143, NULL },
+ { (void *) 18776, 144, NULL },
+ { (void *) 18785, 145, NULL },
+ { (void *) 18795, 146, NULL },
+ { (void *) 18804, 147, NULL },
+ { (void *) 18814, 148, NULL },
+ { (void *) 18823, 149, NULL },
+ { (void *) 18833, 669, NULL },
+ { (void *) 18852, 473, NULL },
+ { (void *) 18867, 473, NULL },
+ { (void *) 18885, 737, NULL },
+ { (void *) 18902, 474, NULL },
+ { (void *) 18918, 474, NULL },
+ { (void *) 18937, 738, NULL },
+ { (void *) 18955, 475, NULL },
+ { (void *) 18970, 475, NULL },
+ { (void *) 18988, 739, NULL },
+ { (void *) 19005, 476, NULL },
+ { (void *) 19021, 476, NULL },
+ { (void *) 19040, 740, NULL },
+ { (void *) 19058, 477, NULL },
+ { (void *) 19073, 477, NULL },
+ { (void *) 19091, 741, NULL },
+ { (void *) 19108, 478, NULL },
+ { (void *) 19124, 478, NULL },
+ { (void *) 19143, 742, NULL },
+ { (void *) 19161, 479, NULL },
+ { (void *) 19176, 479, NULL },
+ { (void *) 19194, 743, NULL },
+ { (void *) 19211, 480, NULL },
+ { (void *) 19227, 480, NULL },
+ { (void *) 19246, 744, NULL },
+ { (void *) 19264, 481, NULL },
+ { (void *) 19279, 481, NULL },
+ { (void *) 19297, 745, NULL },
+ { (void *) 19314, 482, NULL },
+ { (void *) 19330, 482, NULL },
+ { (void *) 19349, 746, NULL },
+ { (void *) 19367, 483, NULL },
+ { (void *) 19382, 483, NULL },
+ { (void *) 19400, 747, NULL },
+ { (void *) 19417, 484, NULL },
+ { (void *) 19433, 484, NULL },
+ { (void *) 19452, 748, NULL },
+ { (void *) 19470, 485, NULL },
+ { (void *) 19485, 485, NULL },
+ { (void *) 19503, 749, NULL },
+ { (void *) 19520, 486, NULL },
+ { (void *) 19536, 486, NULL },
+ { (void *) 19555, 750, NULL },
+ { (void *) 19573, 487, NULL },
+ { (void *) 19588, 487, NULL },
+ { (void *) 19606, 751, NULL },
+ { (void *) 19623, 488, NULL },
+ { (void *) 19639, 488, NULL },
+ { (void *) 19658, 752, NULL },
+ { (void *) 19676, 489, NULL },
+ { (void *) 19691, 489, NULL },
+ { (void *) 19709, 753, NULL },
+ { (void *) 19726, 490, NULL },
+ { (void *) 19742, 490, NULL },
+ { (void *) 19761, 754, NULL },
+ { (void *) 19779, 491, NULL },
+ { (void *) 19796, 491, NULL },
+ { (void *) 19816, 492, NULL },
+ { (void *) 19833, 492, NULL },
+ { (void *) 19853, 493, NULL },
+ { (void *) 19870, 493, NULL },
+ { (void *) 19890, 494, NULL },
+ { (void *) 19907, 494, NULL },
+ { (void *) 19927, 495, NULL },
+ { (void *) 19945, 495, NULL },
+ { (void *) 19966, 496, NULL },
+ { (void *) 19984, 496, NULL },
+ { (void *) 20005, 497, NULL },
+ { (void *) 20023, 497, NULL },
+ { (void *) 20044, 498, NULL },
+ { (void *) 20060, 498, NULL },
+ { (void *) 20079, 499, NULL },
+ { (void *) 20094, 499, NULL },
+ { (void *) 20112, 755, NULL },
+ { (void *) 20129, 500, NULL },
+ { (void *) 20145, 500, NULL },
+ { (void *) 20164, 756, NULL },
+ { (void *) 20182, 501, NULL },
+ { (void *) 20197, 501, NULL },
+ { (void *) 20215, 757, NULL },
+ { (void *) 20232, 502, NULL },
+ { (void *) 20248, 502, NULL },
+ { (void *) 20267, 758, NULL },
+ { (void *) 20285, 503, NULL },
+ { (void *) 20301, 503, NULL },
+ { (void *) 20320, 504, NULL },
+ { (void *) 20335, 504, NULL },
+ { (void *) 20353, 759, NULL },
+ { (void *) 20370, 505, NULL },
+ { (void *) 20386, 505, NULL },
+ { (void *) 20405, 760, NULL },
+ { (void *) 20423, 761, NULL },
+ { (void *) 20441, 506, NULL },
+ { (void *) 20458, 506, NULL },
+ { (void *) 20478, 762, NULL },
+ { (void *) 20497, 507, NULL },
+ { (void *) 20514, 507, NULL },
+ { (void *) 20534, 508, NULL },
+ { (void *) 20551, 508, NULL },
+ { (void *) 20571, 440, NULL },
+ { (void *) 20591, 578, NULL },
+ { (void *) 20614, 891, NULL },
+ { (void *) 20630, 891, NULL },
+ { (void *) 20649, 892, NULL },
+ { (void *) 20666, 892, NULL },
+ { (void *) 20686, 893, NULL },
+ { (void *) 20703, 893, NULL },
+ { (void *) 20723, 894, NULL },
+ { (void *) 20741, 894, NULL },
+ { (void *) 20762, 895, NULL },
+ { (void *) 20778, 895, NULL },
+ { (void *) 20797, 896, NULL },
+ { (void *) 20814, 896, NULL },
+ { (void *) 20834, 897, NULL },
+ { (void *) 20851, 897, NULL },
+ { (void *) 20871, 898, NULL },
+ { (void *) 20889, 898, NULL },
+ { (void *) 20910, 899, NULL },
+ { (void *) 20926, 899, NULL },
+ { (void *) 20945, 900, NULL },
+ { (void *) 20962, 900, NULL },
+ { (void *) 20982, 901, NULL },
+ { (void *) 20999, 901, NULL },
+ { (void *) 21019, 902, NULL },
+ { (void *) 21037, 902, NULL },
+ { (void *) 21058, 903, NULL },
+ { (void *) 21075, 903, NULL },
+ { (void *) 21095, 904, NULL },
+ { (void *) 21111, 904, NULL },
+ { (void *) 21130, 905, NULL },
+ { (void *) 21147, 905, NULL },
+ { (void *) 21167, 906, NULL },
+ { (void *) 21184, 906, NULL },
+ { (void *) 21204, 907, NULL },
+ { (void *) 21222, 907, NULL },
+ { (void *) 21243, 908, NULL },
+ { (void *) 21260, 908, NULL },
+ { (void *) 21280, 909, NULL },
+ { (void *) 21298, 909, NULL },
+ { (void *) 21319, 910, NULL },
+ { (void *) 21337, 910, NULL },
+ { (void *) 21358, 911, NULL },
+ { (void *) 21379, 911, NULL },
+ { (void *) 21403, 509, NULL },
+ { (void *) 21423, 509, NULL },
+ { (void *) 21446, 763, NULL },
+ { (void *) 21468, 764, NULL },
+ { (void *) 21487, 765, NULL },
+ { (void *) 21506, 766, NULL },
+ { (void *) 21525, 767, NULL },
+ { (void *) 21544, 768, NULL },
+ { (void *) 21563, 769, NULL },
+ { (void *) 21582, 770, NULL },
+ { (void *) 21601, 771, NULL },
+ { (void *) 21620, 772, NULL },
+ { (void *) 21639, 773, NULL },
+ { (void *) 21658, 774, NULL },
+ { (void *) 21677, 775, NULL },
+ { (void *) 21696, 776, NULL },
+ { (void *) 21716, 321, NULL },
+ { (void *) 21730, 637, NULL },
+ { (void *) 21747, 305, NULL },
+ { (void *) 21756, 590, NULL },
+ { (void *) 21765, 684, NULL },
+ { (void *) 21777, 684, NULL },
+ { (void *) 21792, 684, NULL },
+ { (void *) 21808, 685, NULL },
+ { (void *) 21821, 685, NULL },
+ { (void *) 21837, 685, NULL },
+ { (void *) 21854, 686, NULL },
+ { (void *) 21866, 686, NULL },
+ { (void *) 21881, 686, NULL },
+ { (void *) 21897, 687, NULL },
+ { (void *) 21910, 687, NULL },
+ { (void *) 21926, 687, NULL },
+ { (void *) 21943, 688, NULL },
+ { (void *) 21955, 688, NULL },
+ { (void *) 21970, 688, NULL },
+ { (void *) 21986, 689, NULL },
+ { (void *) 21999, 689, NULL },
+ { (void *) 22015, 689, NULL },
+ { (void *) 22032, 690, NULL },
+ { (void *) 22044, 690, NULL },
+ { (void *) 22059, 690, NULL },
+ { (void *) 22075, 691, NULL },
+ { (void *) 22088, 691, NULL },
+ { (void *) 22104, 691, NULL },
+ { (void *) 22121, 692, NULL },
+ { (void *) 22133, 692, NULL },
+ { (void *) 22148, 692, NULL },
+ { (void *) 22164, 693, NULL },
+ { (void *) 22177, 693, NULL },
+ { (void *) 22193, 693, NULL },
+ { (void *) 22210, 694, NULL },
+ { (void *) 22222, 694, NULL },
+ { (void *) 22237, 694, NULL },
+ { (void *) 22253, 695, NULL },
+ { (void *) 22266, 695, NULL },
+ { (void *) 22282, 695, NULL },
+ { (void *) 22299, 696, NULL },
+ { (void *) 22311, 696, NULL },
+ { (void *) 22326, 696, NULL },
+ { (void *) 22342, 697, NULL },
+ { (void *) 22355, 697, NULL },
+ { (void *) 22371, 697, NULL },
+ { (void *) 22388, 698, NULL },
+ { (void *) 22400, 698, NULL },
+ { (void *) 22415, 698, NULL },
+ { (void *) 22431, 699, NULL },
+ { (void *) 22444, 699, NULL },
+ { (void *) 22460, 699, NULL },
+ { (void *) 22477, 700, NULL },
+ { (void *) 22493, 701, NULL },
+ { (void *) 22510, 702, NULL },
+ { (void *) 22526, 703, NULL },
+ { (void *) 22543, 704, NULL },
+ { (void *) 22559, 705, NULL },
+ { (void *) 22576, 706, NULL },
+ { (void *) 22592, 707, NULL }
+};
+#undef MAPI_TMP_PUBLIC_STUBS
+#endif /* MAPI_TMP_PUBLIC_STUBS */
+
+#ifdef MAPI_TMP_PUBLIC_ENTRIES
+void APIENTRY shared_dispatch_stub_0(GLuint list, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[0];
+ ((void (APIENTRY *)(GLuint list, GLenum mode)) _func)(list, mode);
+}
+
+void APIENTRY shared_dispatch_stub_1(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[1];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_2(GLuint list)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[2];
+ ((void (APIENTRY *)(GLuint list)) _func)(list);
+}
+
+void APIENTRY shared_dispatch_stub_3(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[3];
+ ((void (APIENTRY *)(GLsizei n, GLenum type, const GLvoid *lists)) _func)(n, type, lists);
+}
+
+void APIENTRY shared_dispatch_stub_4(GLuint list, GLsizei range)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[4];
+ ((void (APIENTRY *)(GLuint list, GLsizei range)) _func)(list, range);
+}
+
+GLuint APIENTRY shared_dispatch_stub_5(GLsizei range)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[5];
+ return ((GLuint (APIENTRY *)(GLsizei range)) _func)(range);
+}
+
+void APIENTRY shared_dispatch_stub_6(GLuint base)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[6];
+ ((void (APIENTRY *)(GLuint base)) _func)(base);
+}
+
+void APIENTRY shared_dispatch_stub_7(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[7];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_8(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[8];
+ ((void (APIENTRY *)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)) _func)(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+void APIENTRY shared_dispatch_stub_9(GLbyte red, GLbyte green, GLbyte blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[9];
+ ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_10(const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[10];
+ ((void (APIENTRY *)(const GLbyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_11(GLdouble red, GLdouble green, GLdouble blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[11];
+ ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_12(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[12];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_13(GLfloat red, GLfloat green, GLfloat blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[13];
+ ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_14(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[14];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_15(GLint red, GLint green, GLint blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[15];
+ ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_16(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[16];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_17(GLshort red, GLshort green, GLshort blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[17];
+ ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_18(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[18];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_19(GLubyte red, GLubyte green, GLubyte blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[19];
+ ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_20(const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[20];
+ ((void (APIENTRY *)(const GLubyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_21(GLuint red, GLuint green, GLuint blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[21];
+ ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_22(const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[22];
+ ((void (APIENTRY *)(const GLuint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_23(GLushort red, GLushort green, GLushort blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[23];
+ ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_24(const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[24];
+ ((void (APIENTRY *)(const GLushort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_25(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[25];
+ ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_26(const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[26];
+ ((void (APIENTRY *)(const GLbyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_27(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[27];
+ ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_28(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[28];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_29(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[29];
+ ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_30(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[30];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_31(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[31];
+ ((void (APIENTRY *)(GLint red, GLint green, GLint blue, GLint alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_32(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[32];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_33(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[33];
+ ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue, GLshort alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_34(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[34];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_35(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[35];
+ ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_36(const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[36];
+ ((void (APIENTRY *)(const GLubyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_37(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[37];
+ ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue, GLuint alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_38(const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[38];
+ ((void (APIENTRY *)(const GLuint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_39(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[39];
+ ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue, GLushort alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_40(const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[40];
+ ((void (APIENTRY *)(const GLushort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_41(GLboolean flag)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[41];
+ ((void (APIENTRY *)(GLboolean flag)) _func)(flag);
+}
+
+void APIENTRY shared_dispatch_stub_42(const GLboolean *flag)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[42];
+ ((void (APIENTRY *)(const GLboolean *flag)) _func)(flag);
+}
+
+void APIENTRY shared_dispatch_stub_43(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[43];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_44(GLdouble c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[44];
+ ((void (APIENTRY *)(GLdouble c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_45(const GLdouble *c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[45];
+ ((void (APIENTRY *)(const GLdouble *c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_46(GLfloat c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[46];
+ ((void (APIENTRY *)(GLfloat c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_47(const GLfloat *c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[47];
+ ((void (APIENTRY *)(const GLfloat *c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_48(GLint c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[48];
+ ((void (APIENTRY *)(GLint c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_49(const GLint *c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[49];
+ ((void (APIENTRY *)(const GLint *c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_50(GLshort c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[50];
+ ((void (APIENTRY *)(GLshort c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_51(const GLshort *c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[51];
+ ((void (APIENTRY *)(const GLshort *c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_52(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[52];
+ ((void (APIENTRY *)(GLbyte nx, GLbyte ny, GLbyte nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_53(const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[53];
+ ((void (APIENTRY *)(const GLbyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_54(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[54];
+ ((void (APIENTRY *)(GLdouble nx, GLdouble ny, GLdouble nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_55(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[55];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_56(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[56];
+ ((void (APIENTRY *)(GLfloat nx, GLfloat ny, GLfloat nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_57(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[57];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_58(GLint nx, GLint ny, GLint nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[58];
+ ((void (APIENTRY *)(GLint nx, GLint ny, GLint nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_59(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[59];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_60(GLshort nx, GLshort ny, GLshort nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[60];
+ ((void (APIENTRY *)(GLshort nx, GLshort ny, GLshort nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_61(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[61];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_62(GLdouble x, GLdouble y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[62];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_63(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[63];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_64(GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[64];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_65(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[65];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_66(GLint x, GLint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[66];
+ ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_67(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[67];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_68(GLshort x, GLshort y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[68];
+ ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_69(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[69];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_70(GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[70];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_71(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[71];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_72(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[72];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_73(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[73];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_74(GLint x, GLint y, GLint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[74];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_75(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[75];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_76(GLshort x, GLshort y, GLshort z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[76];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_77(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[77];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_78(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[78];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_79(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[79];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_80(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[80];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_81(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[81];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_82(GLint x, GLint y, GLint z, GLint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[82];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_83(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[83];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_84(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[84];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_85(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[85];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_86(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[86];
+ ((void (APIENTRY *)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)) _func)(x1, y1, x2, y2);
+}
+
+void APIENTRY shared_dispatch_stub_87(const GLdouble *v1, const GLdouble *v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[87];
+ ((void (APIENTRY *)(const GLdouble *v1, const GLdouble *v2)) _func)(v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_88(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[88];
+ ((void (APIENTRY *)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)) _func)(x1, y1, x2, y2);
+}
+
+void APIENTRY shared_dispatch_stub_89(const GLfloat *v1, const GLfloat *v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[89];
+ ((void (APIENTRY *)(const GLfloat *v1, const GLfloat *v2)) _func)(v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_90(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[90];
+ ((void (APIENTRY *)(GLint x1, GLint y1, GLint x2, GLint y2)) _func)(x1, y1, x2, y2);
+}
+
+void APIENTRY shared_dispatch_stub_91(const GLint *v1, const GLint *v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[91];
+ ((void (APIENTRY *)(const GLint *v1, const GLint *v2)) _func)(v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_92(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[92];
+ ((void (APIENTRY *)(GLshort x1, GLshort y1, GLshort x2, GLshort y2)) _func)(x1, y1, x2, y2);
+}
+
+void APIENTRY shared_dispatch_stub_93(const GLshort *v1, const GLshort *v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[93];
+ ((void (APIENTRY *)(const GLshort *v1, const GLshort *v2)) _func)(v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_94(GLdouble s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[94];
+ ((void (APIENTRY *)(GLdouble s)) _func)(s);
+}
+
+void APIENTRY shared_dispatch_stub_95(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[95];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_96(GLfloat s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[96];
+ ((void (APIENTRY *)(GLfloat s)) _func)(s);
+}
+
+void APIENTRY shared_dispatch_stub_97(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[97];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_98(GLint s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[98];
+ ((void (APIENTRY *)(GLint s)) _func)(s);
+}
+
+void APIENTRY shared_dispatch_stub_99(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[99];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_100(GLshort s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[100];
+ ((void (APIENTRY *)(GLshort s)) _func)(s);
+}
+
+void APIENTRY shared_dispatch_stub_101(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[101];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_102(GLdouble s, GLdouble t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[102];
+ ((void (APIENTRY *)(GLdouble s, GLdouble t)) _func)(s, t);
+}
+
+void APIENTRY shared_dispatch_stub_103(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[103];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_104(GLfloat s, GLfloat t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[104];
+ ((void (APIENTRY *)(GLfloat s, GLfloat t)) _func)(s, t);
+}
+
+void APIENTRY shared_dispatch_stub_105(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[105];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_106(GLint s, GLint t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[106];
+ ((void (APIENTRY *)(GLint s, GLint t)) _func)(s, t);
+}
+
+void APIENTRY shared_dispatch_stub_107(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[107];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_108(GLshort s, GLshort t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[108];
+ ((void (APIENTRY *)(GLshort s, GLshort t)) _func)(s, t);
+}
+
+void APIENTRY shared_dispatch_stub_109(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[109];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_110(GLdouble s, GLdouble t, GLdouble r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[110];
+ ((void (APIENTRY *)(GLdouble s, GLdouble t, GLdouble r)) _func)(s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_111(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[111];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_112(GLfloat s, GLfloat t, GLfloat r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[112];
+ ((void (APIENTRY *)(GLfloat s, GLfloat t, GLfloat r)) _func)(s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_113(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[113];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_114(GLint s, GLint t, GLint r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[114];
+ ((void (APIENTRY *)(GLint s, GLint t, GLint r)) _func)(s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_115(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[115];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_116(GLshort s, GLshort t, GLshort r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[116];
+ ((void (APIENTRY *)(GLshort s, GLshort t, GLshort r)) _func)(s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_117(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[117];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_118(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[118];
+ ((void (APIENTRY *)(GLdouble s, GLdouble t, GLdouble r, GLdouble q)) _func)(s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_119(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[119];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_120(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[120];
+ ((void (APIENTRY *)(GLfloat s, GLfloat t, GLfloat r, GLfloat q)) _func)(s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_121(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[121];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_122(GLint s, GLint t, GLint r, GLint q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[122];
+ ((void (APIENTRY *)(GLint s, GLint t, GLint r, GLint q)) _func)(s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_123(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[123];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_124(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[124];
+ ((void (APIENTRY *)(GLshort s, GLshort t, GLshort r, GLshort q)) _func)(s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_125(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[125];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_126(GLdouble x, GLdouble y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[126];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_127(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[127];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_128(GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[128];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_129(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[129];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_130(GLint x, GLint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[130];
+ ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_131(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[131];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_132(GLshort x, GLshort y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[132];
+ ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_133(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[133];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_134(GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[134];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_135(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[135];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_136(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[136];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_137(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[137];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_138(GLint x, GLint y, GLint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[138];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_139(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[139];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_140(GLshort x, GLshort y, GLshort z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[140];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_141(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[141];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_142(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[142];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_143(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[143];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_144(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[144];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_145(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[145];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_146(GLint x, GLint y, GLint z, GLint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[146];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_147(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[147];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_148(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[148];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_149(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[149];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_150(GLenum plane, const GLdouble *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[150];
+ ((void (APIENTRY *)(GLenum plane, const GLdouble *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_151(GLenum face, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[151];
+ ((void (APIENTRY *)(GLenum face, GLenum mode)) _func)(face, mode);
+}
+
+void APIENTRY shared_dispatch_stub_152(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[152];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_153(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[153];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_154(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[154];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_155(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[155];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_156(GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[156];
+ ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_157(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[157];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_158(GLenum target, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[158];
+ ((void (APIENTRY *)(GLenum target, GLenum mode)) _func)(target, mode);
+}
+
+void APIENTRY shared_dispatch_stub_159(GLenum light, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[159];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfloat param)) _func)(light, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_160(GLenum light, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[160];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLfloat *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_161(GLenum light, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[161];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLint param)) _func)(light, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_162(GLenum light, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[162];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLint *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_163(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[163];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_164(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[164];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_165(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[165];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_166(GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[166];
+ ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_167(GLint factor, GLushort pattern)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[167];
+ ((void (APIENTRY *)(GLint factor, GLushort pattern)) _func)(factor, pattern);
+}
+
+void APIENTRY shared_dispatch_stub_168(GLfloat width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[168];
+ ((void (APIENTRY *)(GLfloat width)) _func)(width);
+}
+
+void APIENTRY shared_dispatch_stub_169(GLenum face, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[169];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfloat param)) _func)(face, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_170(GLenum face, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[170];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLfloat *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_171(GLenum face, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[171];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLint param)) _func)(face, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_172(GLenum face, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[172];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLint *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_173(GLfloat size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[173];
+ ((void (APIENTRY *)(GLfloat size)) _func)(size);
+}
+
+void APIENTRY shared_dispatch_stub_174(GLenum face, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[174];
+ ((void (APIENTRY *)(GLenum face, GLenum mode)) _func)(face, mode);
+}
+
+void APIENTRY shared_dispatch_stub_175(const GLubyte *mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[175];
+ ((void (APIENTRY *)(const GLubyte *mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_176(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[176];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_177(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[177];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_178(GLenum target, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[178];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_179(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[179];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_180(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[180];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_181(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[181];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_182(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[182];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, border, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_183(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[183];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_184(GLenum target, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[184];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_185(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[185];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_186(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[186];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_187(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[187];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_188(GLenum coord, GLenum pname, GLdouble param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[188];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLdouble param)) _func)(coord, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_189(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[189];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLdouble *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_190(GLenum coord, GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[190];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfloat param)) _func)(coord, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_191(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[191];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLfloat *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_192(GLenum coord, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[192];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint param)) _func)(coord, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_193(GLenum coord, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[193];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLint *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_194(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[194];
+ ((void (APIENTRY *)(GLsizei size, GLenum type, GLfloat *buffer)) _func)(size, type, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_195(GLsizei size, GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[195];
+ ((void (APIENTRY *)(GLsizei size, GLuint *buffer)) _func)(size, buffer);
+}
+
+GLint APIENTRY shared_dispatch_stub_196(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[196];
+ return ((GLint (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_197(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[197];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_198(GLuint name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[198];
+ ((void (APIENTRY *)(GLuint name)) _func)(name);
+}
+
+void APIENTRY shared_dispatch_stub_199(GLfloat token)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[199];
+ ((void (APIENTRY *)(GLfloat token)) _func)(token);
+}
+
+void APIENTRY shared_dispatch_stub_200(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[200];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_201(GLuint name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[201];
+ ((void (APIENTRY *)(GLuint name)) _func)(name);
+}
+
+void APIENTRY shared_dispatch_stub_202(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[202];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_203(GLbitfield mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[203];
+ ((void (APIENTRY *)(GLbitfield mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_204(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[204];
+ ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_205(GLfloat c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[205];
+ ((void (APIENTRY *)(GLfloat c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_206(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[206];
+ ((void (APIENTRY *)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_207(GLint s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[207];
+ ((void (APIENTRY *)(GLint s)) _func)(s);
+}
+
+void APIENTRY shared_dispatch_stub_208(GLclampd depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[208];
+ ((void (APIENTRY *)(GLclampd depth)) _func)(depth);
+}
+
+void APIENTRY shared_dispatch_stub_209(GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[209];
+ ((void (APIENTRY *)(GLuint mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_210(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[210];
+ ((void (APIENTRY *)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_211(GLboolean flag)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[211];
+ ((void (APIENTRY *)(GLboolean flag)) _func)(flag);
+}
+
+void APIENTRY shared_dispatch_stub_212(GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[212];
+ ((void (APIENTRY *)(GLuint mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_213(GLenum op, GLfloat value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[213];
+ ((void (APIENTRY *)(GLenum op, GLfloat value)) _func)(op, value);
+}
+
+void APIENTRY shared_dispatch_stub_214(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[214];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+void APIENTRY shared_dispatch_stub_215(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[215];
+ ((void (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+void APIENTRY shared_dispatch_stub_216(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[216];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_217(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[217];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_218(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[218];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_219(GLbitfield mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[219];
+ ((void (APIENTRY *)(GLbitfield mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_220(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[220];
+ ((void (APIENTRY *)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)) _func)(target, u1, u2, stride, order, points);
+}
+
+void APIENTRY shared_dispatch_stub_221(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[221];
+ ((void (APIENTRY *)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)) _func)(target, u1, u2, stride, order, points);
+}
+
+void APIENTRY shared_dispatch_stub_222(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[222];
+ ((void (APIENTRY *)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)) _func)(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+void APIENTRY shared_dispatch_stub_223(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[223];
+ ((void (APIENTRY *)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)) _func)(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+void APIENTRY shared_dispatch_stub_224(GLint un, GLdouble u1, GLdouble u2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[224];
+ ((void (APIENTRY *)(GLint un, GLdouble u1, GLdouble u2)) _func)(un, u1, u2);
+}
+
+void APIENTRY shared_dispatch_stub_225(GLint un, GLfloat u1, GLfloat u2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[225];
+ ((void (APIENTRY *)(GLint un, GLfloat u1, GLfloat u2)) _func)(un, u1, u2);
+}
+
+void APIENTRY shared_dispatch_stub_226(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[226];
+ ((void (APIENTRY *)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)) _func)(un, u1, u2, vn, v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_227(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[227];
+ ((void (APIENTRY *)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)) _func)(un, u1, u2, vn, v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_228(GLdouble u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[228];
+ ((void (APIENTRY *)(GLdouble u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_229(const GLdouble *u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[229];
+ ((void (APIENTRY *)(const GLdouble *u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_230(GLfloat u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[230];
+ ((void (APIENTRY *)(GLfloat u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_231(const GLfloat *u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[231];
+ ((void (APIENTRY *)(const GLfloat *u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_232(GLdouble u, GLdouble v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[232];
+ ((void (APIENTRY *)(GLdouble u, GLdouble v)) _func)(u, v);
+}
+
+void APIENTRY shared_dispatch_stub_233(const GLdouble *u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[233];
+ ((void (APIENTRY *)(const GLdouble *u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_234(GLfloat u, GLfloat v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[234];
+ ((void (APIENTRY *)(GLfloat u, GLfloat v)) _func)(u, v);
+}
+
+void APIENTRY shared_dispatch_stub_235(const GLfloat *u)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[235];
+ ((void (APIENTRY *)(const GLfloat *u)) _func)(u);
+}
+
+void APIENTRY shared_dispatch_stub_236(GLenum mode, GLint i1, GLint i2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[236];
+ ((void (APIENTRY *)(GLenum mode, GLint i1, GLint i2)) _func)(mode, i1, i2);
+}
+
+void APIENTRY shared_dispatch_stub_237(GLint i)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[237];
+ ((void (APIENTRY *)(GLint i)) _func)(i);
+}
+
+void APIENTRY shared_dispatch_stub_238(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[238];
+ ((void (APIENTRY *)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)) _func)(mode, i1, i2, j1, j2);
+}
+
+void APIENTRY shared_dispatch_stub_239(GLint i, GLint j)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[239];
+ ((void (APIENTRY *)(GLint i, GLint j)) _func)(i, j);
+}
+
+void APIENTRY shared_dispatch_stub_240(GLenum func, GLclampf ref)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[240];
+ ((void (APIENTRY *)(GLenum func, GLclampf ref)) _func)(func, ref);
+}
+
+void APIENTRY shared_dispatch_stub_241(GLenum sfactor, GLenum dfactor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[241];
+ ((void (APIENTRY *)(GLenum sfactor, GLenum dfactor)) _func)(sfactor, dfactor);
+}
+
+void APIENTRY shared_dispatch_stub_242(GLenum opcode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[242];
+ ((void (APIENTRY *)(GLenum opcode)) _func)(opcode);
+}
+
+void APIENTRY shared_dispatch_stub_243(GLenum func, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[243];
+ ((void (APIENTRY *)(GLenum func, GLint ref, GLuint mask)) _func)(func, ref, mask);
+}
+
+void APIENTRY shared_dispatch_stub_244(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[244];
+ ((void (APIENTRY *)(GLenum fail, GLenum zfail, GLenum zpass)) _func)(fail, zfail, zpass);
+}
+
+void APIENTRY shared_dispatch_stub_245(GLenum func)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[245];
+ ((void (APIENTRY *)(GLenum func)) _func)(func);
+}
+
+void APIENTRY shared_dispatch_stub_246(GLfloat xfactor, GLfloat yfactor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[246];
+ ((void (APIENTRY *)(GLfloat xfactor, GLfloat yfactor)) _func)(xfactor, yfactor);
+}
+
+void APIENTRY shared_dispatch_stub_247(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[247];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_248(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[248];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_249(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[249];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_250(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[250];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_251(GLenum map, GLsizei mapsize, const GLfloat *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[251];
+ ((void (APIENTRY *)(GLenum map, GLsizei mapsize, const GLfloat *values)) _func)(map, mapsize, values);
+}
+
+void APIENTRY shared_dispatch_stub_252(GLenum map, GLsizei mapsize, const GLuint *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[252];
+ ((void (APIENTRY *)(GLenum map, GLsizei mapsize, const GLuint *values)) _func)(map, mapsize, values);
+}
+
+void APIENTRY shared_dispatch_stub_253(GLenum map, GLsizei mapsize, const GLushort *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[253];
+ ((void (APIENTRY *)(GLenum map, GLsizei mapsize, const GLushort *values)) _func)(map, mapsize, values);
+}
+
+void APIENTRY shared_dispatch_stub_254(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[254];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_255(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[255];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)) _func)(x, y, width, height, type);
+}
+
+void APIENTRY shared_dispatch_stub_256(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[256];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)) _func)(x, y, width, height, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_257(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[257];
+ ((void (APIENTRY *)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)) _func)(width, height, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_258(GLenum pname, GLboolean *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[258];
+ ((void (APIENTRY *)(GLenum pname, GLboolean *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_259(GLenum plane, GLdouble *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[259];
+ ((void (APIENTRY *)(GLenum plane, GLdouble *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_260(GLenum pname, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[260];
+ ((void (APIENTRY *)(GLenum pname, GLdouble *params)) _func)(pname, params);
+}
+
+GLenum APIENTRY shared_dispatch_stub_261(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[261];
+ return ((GLenum (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_262(GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[262];
+ ((void (APIENTRY *)(GLenum pname, GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_263(GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[263];
+ ((void (APIENTRY *)(GLenum pname, GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_264(GLenum light, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[264];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfloat *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_265(GLenum light, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[265];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLint *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_266(GLenum target, GLenum query, GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[266];
+ ((void (APIENTRY *)(GLenum target, GLenum query, GLdouble *v)) _func)(target, query, v);
+}
+
+void APIENTRY shared_dispatch_stub_267(GLenum target, GLenum query, GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[267];
+ ((void (APIENTRY *)(GLenum target, GLenum query, GLfloat *v)) _func)(target, query, v);
+}
+
+void APIENTRY shared_dispatch_stub_268(GLenum target, GLenum query, GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[268];
+ ((void (APIENTRY *)(GLenum target, GLenum query, GLint *v)) _func)(target, query, v);
+}
+
+void APIENTRY shared_dispatch_stub_269(GLenum face, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[269];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfloat *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_270(GLenum face, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[270];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLint *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_271(GLenum map, GLfloat *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[271];
+ ((void (APIENTRY *)(GLenum map, GLfloat *values)) _func)(map, values);
+}
+
+void APIENTRY shared_dispatch_stub_272(GLenum map, GLuint *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[272];
+ ((void (APIENTRY *)(GLenum map, GLuint *values)) _func)(map, values);
+}
+
+void APIENTRY shared_dispatch_stub_273(GLenum map, GLushort *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[273];
+ ((void (APIENTRY *)(GLenum map, GLushort *values)) _func)(map, values);
+}
+
+void APIENTRY shared_dispatch_stub_274(GLubyte *mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[274];
+ ((void (APIENTRY *)(GLubyte *mask)) _func)(mask);
+}
+
+const GLubyte * APIENTRY shared_dispatch_stub_275(GLenum name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[275];
+ return ((const GLubyte * (APIENTRY *)(GLenum name)) _func)(name);
+}
+
+void APIENTRY shared_dispatch_stub_276(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[276];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_277(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[277];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_278(GLenum coord, GLenum pname, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[278];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLdouble *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_279(GLenum coord, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[279];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfloat *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_280(GLenum coord, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[280];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_281(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[281];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)) _func)(target, level, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_282(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[282];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_283(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[283];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_284(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[284];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum pname, GLfloat *params)) _func)(target, level, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_285(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[285];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum pname, GLint *params)) _func)(target, level, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_286(GLenum cap)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[286];
+ return ((GLboolean (APIENTRY *)(GLenum cap)) _func)(cap);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_287(GLuint list)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[287];
+ return ((GLboolean (APIENTRY *)(GLuint list)) _func)(list);
+}
+
+void APIENTRY shared_dispatch_stub_288(GLclampd zNear, GLclampd zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[288];
+ ((void (APIENTRY *)(GLclampd zNear, GLclampd zFar)) _func)(zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_289(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[289];
+ ((void (APIENTRY *)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_290(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[290];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_291(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[291];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_292(const GLdouble *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[292];
+ ((void (APIENTRY *)(const GLdouble *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_293(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[293];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_294(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[294];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_295(const GLdouble *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[295];
+ ((void (APIENTRY *)(const GLdouble *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_296(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[296];
+ ((void (APIENTRY *)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_297(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[297];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_298(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[298];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_299(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[299];
+ ((void (APIENTRY *)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)) _func)(angle, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_300(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[300];
+ ((void (APIENTRY *)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)) _func)(angle, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_301(GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[301];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_302(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[302];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_303(GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[303];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_304(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[304];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_305(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[305];
+ ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height)) _func)(x, y, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_306(GLint i)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[306];
+ ((void (APIENTRY *)(GLint i)) _func)(i);
+}
+
+void APIENTRY shared_dispatch_stub_307(GLenum target, GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[307];
+ ((void (APIENTRY *)(GLenum target, GLuint texture)) _func)(target, texture);
+}
+
+void APIENTRY shared_dispatch_stub_308(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[308];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_309(GLenum array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[309];
+ ((void (APIENTRY *)(GLenum array)) _func)(array);
+}
+
+void APIENTRY shared_dispatch_stub_310(GLenum mode, GLint first, GLsizei count)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[310];
+ ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count)) _func)(mode, first, count);
+}
+
+void APIENTRY shared_dispatch_stub_311(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[311];
+ ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)) _func)(mode, count, type, indices);
+}
+
+void APIENTRY shared_dispatch_stub_312(GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[312];
+ ((void (APIENTRY *)(GLsizei stride, const GLvoid *pointer)) _func)(stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_313(GLenum array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[313];
+ ((void (APIENTRY *)(GLenum array)) _func)(array);
+}
+
+void APIENTRY shared_dispatch_stub_314(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[314];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_315(GLubyte c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[315];
+ ((void (APIENTRY *)(GLubyte c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_316(const GLubyte *c)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[316];
+ ((void (APIENTRY *)(const GLubyte *c)) _func)(c);
+}
+
+void APIENTRY shared_dispatch_stub_317(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[317];
+ ((void (APIENTRY *)(GLenum format, GLsizei stride, const GLvoid *pointer)) _func)(format, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_318(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[318];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_319(GLfloat factor, GLfloat units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[319];
+ ((void (APIENTRY *)(GLfloat factor, GLfloat units)) _func)(factor, units);
+}
+
+void APIENTRY shared_dispatch_stub_320(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[320];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_321(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[321];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_322(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[322];
+ return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *textures, GLboolean *residences)) _func)(n, textures, residences);
+}
+
+void APIENTRY shared_dispatch_stub_323(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[323];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)) _func)(target, level, internalformat, x, y, width, border);
+}
+
+void APIENTRY shared_dispatch_stub_324(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[324];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)) _func)(target, level, internalformat, x, y, width, height, border);
+}
+
+void APIENTRY shared_dispatch_stub_325(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[325];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)) _func)(target, level, xoffset, x, y, width);
+}
+
+void APIENTRY shared_dispatch_stub_326(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[326];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_327(GLsizei n, const GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[327];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *textures)) _func)(n, textures);
+}
+
+void APIENTRY shared_dispatch_stub_328(GLsizei n, GLuint *textures)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[328];
+ ((void (APIENTRY *)(GLsizei n, GLuint *textures)) _func)(n, textures);
+}
+
+void APIENTRY shared_dispatch_stub_329(GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[329];
+ ((void (APIENTRY *)(GLenum pname, GLvoid **params)) _func)(pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_330(GLuint texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[330];
+ return ((GLboolean (APIENTRY *)(GLuint texture)) _func)(texture);
+}
+
+void APIENTRY shared_dispatch_stub_331(GLsizei n, const GLuint *textures, const GLclampf *priorities)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[331];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *textures, const GLclampf *priorities)) _func)(n, textures, priorities);
+}
+
+void APIENTRY shared_dispatch_stub_332(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[332];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, width, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_333(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[333];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_334(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[334];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_335(GLbitfield mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[335];
+ ((void (APIENTRY *)(GLbitfield mask)) _func)(mask);
+}
+
+void APIENTRY shared_dispatch_stub_336(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[336];
+ ((void (APIENTRY *)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_337(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[337];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_338(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[338];
+ ((void (APIENTRY *)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)) _func)(mode, start, end, count, type, indices);
+}
+
+void APIENTRY shared_dispatch_stub_339(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[339];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)) _func)(target, internalformat, width, format, type, table);
+}
+
+void APIENTRY shared_dispatch_stub_340(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[340];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_341(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[341];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_342(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[342];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)) _func)(target, internalformat, x, y, width);
+}
+
+void APIENTRY shared_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[343];
+ ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLvoid *table)) _func)(target, format, type, table);
+}
+
+void APIENTRY shared_dispatch_stub_344(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[344];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_345(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[345];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_346(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[346];
+ ((void (APIENTRY *)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)) _func)(target, start, count, format, type, data);
+}
+
+void APIENTRY shared_dispatch_stub_347(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[347];
+ ((void (APIENTRY *)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)) _func)(target, start, x, y, width);
+}
+
+void APIENTRY shared_dispatch_stub_348(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[348];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)) _func)(target, internalformat, width, format, type, image);
+}
+
+void APIENTRY shared_dispatch_stub_349(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[349];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)) _func)(target, internalformat, width, height, format, type, image);
+}
+
+void APIENTRY shared_dispatch_stub_350(GLenum target, GLenum pname, GLfloat params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[350];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_351(GLenum target, GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[351];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_352(GLenum target, GLenum pname, GLint params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[352];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_353(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[353];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_354(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[354];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)) _func)(target, internalformat, x, y, width);
+}
+
+void APIENTRY shared_dispatch_stub_355(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[355];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, internalformat, x, y, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[356];
+ ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLvoid *image)) _func)(target, format, type, image);
+}
+
+void APIENTRY shared_dispatch_stub_357(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[357];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_358(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[358];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[359];
+ ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)) _func)(target, format, type, row, column, span);
+}
+
+void APIENTRY shared_dispatch_stub_360(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[360];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)) _func)(target, internalformat, width, height, format, type, row, column);
+}
+
+void APIENTRY shared_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[361];
+ ((void (APIENTRY *)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)) _func)(target, reset, format, type, values);
+}
+
+void APIENTRY shared_dispatch_stub_362(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[362];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_363(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[363];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[364];
+ ((void (APIENTRY *)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)) _func)(target, reset, format, type, values);
+}
+
+void APIENTRY shared_dispatch_stub_365(GLenum target, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[365];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfloat *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_366(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[366];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_367(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[367];
+ ((void (APIENTRY *)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)) _func)(target, width, internalformat, sink);
+}
+
+void APIENTRY shared_dispatch_stub_368(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[368];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLboolean sink)) _func)(target, internalformat, sink);
+}
+
+void APIENTRY shared_dispatch_stub_369(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[369];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_370(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[370];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_371(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[371];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_372(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[372];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)) _func)(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+void APIENTRY shared_dispatch_stub_373(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[373];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)) _func)(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_374(GLenum texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[374];
+ ((void (APIENTRY *)(GLenum texture)) _func)(texture);
+}
+
+void APIENTRY shared_dispatch_stub_375(GLenum texture)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[375];
+ ((void (APIENTRY *)(GLenum texture)) _func)(texture);
+}
+
+void APIENTRY shared_dispatch_stub_376(GLenum target, GLdouble s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[376];
+ ((void (APIENTRY *)(GLenum target, GLdouble s)) _func)(target, s);
+}
+
+void APIENTRY shared_dispatch_stub_377(GLenum target, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[377];
+ ((void (APIENTRY *)(GLenum target, const GLdouble *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_378(GLenum target, GLfloat s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[378];
+ ((void (APIENTRY *)(GLenum target, GLfloat s)) _func)(target, s);
+}
+
+void APIENTRY shared_dispatch_stub_379(GLenum target, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[379];
+ ((void (APIENTRY *)(GLenum target, const GLfloat *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_380(GLenum target, GLint s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[380];
+ ((void (APIENTRY *)(GLenum target, GLint s)) _func)(target, s);
+}
+
+void APIENTRY shared_dispatch_stub_381(GLenum target, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[381];
+ ((void (APIENTRY *)(GLenum target, const GLint *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_382(GLenum target, GLshort s)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[382];
+ ((void (APIENTRY *)(GLenum target, GLshort s)) _func)(target, s);
+}
+
+void APIENTRY shared_dispatch_stub_383(GLenum target, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[383];
+ ((void (APIENTRY *)(GLenum target, const GLshort *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_384(GLenum target, GLdouble s, GLdouble t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[384];
+ ((void (APIENTRY *)(GLenum target, GLdouble s, GLdouble t)) _func)(target, s, t);
+}
+
+void APIENTRY shared_dispatch_stub_385(GLenum target, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[385];
+ ((void (APIENTRY *)(GLenum target, const GLdouble *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_386(GLenum target, GLfloat s, GLfloat t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[386];
+ ((void (APIENTRY *)(GLenum target, GLfloat s, GLfloat t)) _func)(target, s, t);
+}
+
+void APIENTRY shared_dispatch_stub_387(GLenum target, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[387];
+ ((void (APIENTRY *)(GLenum target, const GLfloat *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_388(GLenum target, GLint s, GLint t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[388];
+ ((void (APIENTRY *)(GLenum target, GLint s, GLint t)) _func)(target, s, t);
+}
+
+void APIENTRY shared_dispatch_stub_389(GLenum target, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[389];
+ ((void (APIENTRY *)(GLenum target, const GLint *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_390(GLenum target, GLshort s, GLshort t)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[390];
+ ((void (APIENTRY *)(GLenum target, GLshort s, GLshort t)) _func)(target, s, t);
+}
+
+void APIENTRY shared_dispatch_stub_391(GLenum target, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[391];
+ ((void (APIENTRY *)(GLenum target, const GLshort *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_392(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[392];
+ ((void (APIENTRY *)(GLenum target, GLdouble s, GLdouble t, GLdouble r)) _func)(target, s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_393(GLenum target, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[393];
+ ((void (APIENTRY *)(GLenum target, const GLdouble *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_394(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[394];
+ ((void (APIENTRY *)(GLenum target, GLfloat s, GLfloat t, GLfloat r)) _func)(target, s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_395(GLenum target, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[395];
+ ((void (APIENTRY *)(GLenum target, const GLfloat *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_396(GLenum target, GLint s, GLint t, GLint r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[396];
+ ((void (APIENTRY *)(GLenum target, GLint s, GLint t, GLint r)) _func)(target, s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_397(GLenum target, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[397];
+ ((void (APIENTRY *)(GLenum target, const GLint *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_398(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[398];
+ ((void (APIENTRY *)(GLenum target, GLshort s, GLshort t, GLshort r)) _func)(target, s, t, r);
+}
+
+void APIENTRY shared_dispatch_stub_399(GLenum target, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[399];
+ ((void (APIENTRY *)(GLenum target, const GLshort *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_400(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[400];
+ ((void (APIENTRY *)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)) _func)(target, s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_401(GLenum target, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[401];
+ ((void (APIENTRY *)(GLenum target, const GLdouble *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_402(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[402];
+ ((void (APIENTRY *)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)) _func)(target, s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_403(GLenum target, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[403];
+ ((void (APIENTRY *)(GLenum target, const GLfloat *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_404(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[404];
+ ((void (APIENTRY *)(GLenum target, GLint s, GLint t, GLint r, GLint q)) _func)(target, s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_405(GLenum target, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[405];
+ ((void (APIENTRY *)(GLenum target, const GLint *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_406(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[406];
+ ((void (APIENTRY *)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)) _func)(target, s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_407(GLenum target, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[407];
+ ((void (APIENTRY *)(GLenum target, const GLshort *v)) _func)(target, v);
+}
+
+void APIENTRY shared_dispatch_stub_408(GLuint program, GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[408];
+ ((void (APIENTRY *)(GLuint program, GLuint shader)) _func)(program, shader);
+}
+
+GLuint APIENTRY shared_dispatch_stub_409(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[409];
+ return ((GLuint (APIENTRY *)(void)) _func)();
+}
+
+GLuint APIENTRY shared_dispatch_stub_410(GLenum type)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[410];
+ return ((GLuint (APIENTRY *)(GLenum type)) _func)(type);
+}
+
+void APIENTRY shared_dispatch_stub_411(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[411];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_412(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[412];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_413(GLuint program, GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[413];
+ ((void (APIENTRY *)(GLuint program, GLuint shader)) _func)(program, shader);
+}
+
+void APIENTRY shared_dispatch_stub_414(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[414];
+ ((void (APIENTRY *)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)) _func)(program, maxCount, count, obj);
+}
+
+void APIENTRY shared_dispatch_stub_415(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[415];
+ ((void (APIENTRY *)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)) _func)(program, bufSize, length, infoLog);
+}
+
+void APIENTRY shared_dispatch_stub_416(GLuint program, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[416];
+ ((void (APIENTRY *)(GLuint program, GLenum pname, GLint *params)) _func)(program, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_417(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[417];
+ ((void (APIENTRY *)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)) _func)(shader, bufSize, length, infoLog);
+}
+
+void APIENTRY shared_dispatch_stub_418(GLuint shader, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[418];
+ ((void (APIENTRY *)(GLuint shader, GLenum pname, GLint *params)) _func)(shader, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_419(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[419];
+ return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_420(GLuint shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[420];
+ return ((GLboolean (APIENTRY *)(GLuint shader)) _func)(shader);
+}
+
+void APIENTRY shared_dispatch_stub_421(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[421];
+ ((void (APIENTRY *)(GLenum face, GLenum func, GLint ref, GLuint mask)) _func)(face, func, ref, mask);
+}
+
+void APIENTRY shared_dispatch_stub_422(GLenum face, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[422];
+ ((void (APIENTRY *)(GLenum face, GLuint mask)) _func)(face, mask);
+}
+
+void APIENTRY shared_dispatch_stub_423(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[423];
+ ((void (APIENTRY *)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)) _func)(face, sfail, zfail, zpass);
+}
+
+void APIENTRY shared_dispatch_stub_424(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[424];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_425(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[425];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_426(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[426];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_427(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[427];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_428(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[428];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_429(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[429];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_430(GLenum target, GLenum clamp)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[430];
+ ((void (APIENTRY *)(GLenum target, GLenum clamp)) _func)(target, clamp);
+}
+
+void APIENTRY shared_dispatch_stub_431(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[431];
+ ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil)) _func)(buffer, drawbuffer, depth, stencil);
+}
+
+void APIENTRY shared_dispatch_stub_432(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[432];
+ ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, const GLfloat *value)) _func)(buffer, drawbuffer, value);
+}
+
+void APIENTRY shared_dispatch_stub_433(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[433];
+ ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, const GLint *value)) _func)(buffer, drawbuffer, value);
+}
+
+void APIENTRY shared_dispatch_stub_434(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[434];
+ ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, const GLuint *value)) _func)(buffer, drawbuffer, value);
+}
+
+const GLubyte * APIENTRY shared_dispatch_stub_435(GLenum name, GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[435];
+ return ((const GLubyte * (APIENTRY *)(GLenum name, GLuint index)) _func)(name, index);
+}
+
+void APIENTRY shared_dispatch_stub_436(GLenum target, GLenum internalFormat, GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[436];
+ ((void (APIENTRY *)(GLenum target, GLenum internalFormat, GLuint buffer)) _func)(target, internalFormat, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_437(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[437];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level)) _func)(target, attachment, texture, level);
+}
+
+void APIENTRY shared_dispatch_stub_438(GLenum target, GLenum pname, GLint64 *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[438];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint64 *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_439(GLenum cap, GLuint index, GLint64 *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[439];
+ ((void (APIENTRY *)(GLenum cap, GLuint index, GLint64 *data)) _func)(cap, index, data);
+}
+
+void APIENTRY shared_dispatch_stub_440(GLuint index, GLuint divisor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[440];
+ ((void (APIENTRY *)(GLuint index, GLuint divisor)) _func)(index, divisor);
+}
+
+void APIENTRY shared_dispatch_stub_441(const GLdouble *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[441];
+ ((void (APIENTRY *)(const GLdouble *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_442(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[442];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_443(const GLdouble *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[443];
+ ((void (APIENTRY *)(const GLdouble *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_444(const GLfloat *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[444];
+ ((void (APIENTRY *)(const GLfloat *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_445(GLclampf value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[445];
+ ((void (APIENTRY *)(GLclampf value, GLboolean invert)) _func)(value, invert);
+}
+
+void APIENTRY shared_dispatch_stub_446(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[446];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, border, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_447(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[447];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_448(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[448];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)) _func)(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_449(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[449];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, width, format, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_450(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[450];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_451(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[451];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)) _func)(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+void APIENTRY shared_dispatch_stub_452(GLenum target, GLint level, GLvoid *img)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[452];
+ ((void (APIENTRY *)(GLenum target, GLint level, GLvoid *img)) _func)(target, level, img);
+}
+
+void APIENTRY shared_dispatch_stub_453(GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[453];
+ ((void (APIENTRY *)(GLuint index)) _func)(index);
+}
+
+void APIENTRY shared_dispatch_stub_454(GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[454];
+ ((void (APIENTRY *)(GLuint index)) _func)(index);
+}
+
+void APIENTRY shared_dispatch_stub_455(GLenum target, GLuint index, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[455];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLdouble *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_456(GLenum target, GLuint index, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[456];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLfloat *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_457(GLenum target, GLuint index, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[457];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLdouble *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_458(GLenum target, GLuint index, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[458];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLfloat *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_459(GLenum target, GLenum pname, GLvoid *string)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[459];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLvoid *string)) _func)(target, pname, string);
+}
+
+void APIENTRY shared_dispatch_stub_460(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[460];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_461(GLuint index, GLenum pname, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[461];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_462(GLuint index, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[462];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_463(GLuint index, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[463];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_464(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[464];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(target, index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_465(GLenum target, GLuint index, const GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[465];
+ ((void (APIENTRY *)(GLenum target, GLuint index, const GLdouble *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_466(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[466];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(target, index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_467(GLenum target, GLuint index, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[467];
+ ((void (APIENTRY *)(GLenum target, GLuint index, const GLfloat *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_468(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[468];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(target, index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_469(GLenum target, GLuint index, const GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[469];
+ ((void (APIENTRY *)(GLenum target, GLuint index, const GLdouble *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_470(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[470];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(target, index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_471(GLenum target, GLuint index, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[471];
+ ((void (APIENTRY *)(GLenum target, GLuint index, const GLfloat *params)) _func)(target, index, params);
+}
+
+void APIENTRY shared_dispatch_stub_472(GLenum target, GLenum format, GLsizei len, const GLvoid *string)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[472];
+ ((void (APIENTRY *)(GLenum target, GLenum format, GLsizei len, const GLvoid *string)) _func)(target, format, len, string);
+}
+
+void APIENTRY shared_dispatch_stub_473(GLuint index, GLdouble x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[473];
+ ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_474(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[474];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_475(GLuint index, GLfloat x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[475];
+ ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_476(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[476];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_477(GLuint index, GLshort x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[477];
+ ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_478(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[478];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_479(GLuint index, GLdouble x, GLdouble y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[479];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_480(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[480];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_481(GLuint index, GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[481];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_482(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[482];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_483(GLuint index, GLshort x, GLshort y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[483];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_484(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[484];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_485(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[485];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_486(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[486];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_487(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[487];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_488(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[488];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_489(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[489];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_490(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[490];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_491(GLuint index, const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[491];
+ ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_492(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[492];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_493(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[493];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_494(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[494];
+ ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_495(GLuint index, const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[495];
+ ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_496(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[496];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_497(GLuint index, const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[497];
+ ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_498(GLuint index, const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[498];
+ ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_499(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[499];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_500(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[500];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_501(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[501];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_502(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[502];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_503(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[503];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_504(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[504];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_505(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[505];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_506(GLuint index, const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[506];
+ ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_507(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[507];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_508(GLuint index, const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[508];
+ ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_509(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[509];
+ ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, normalized, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_510(GLenum target, GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[510];
+ ((void (APIENTRY *)(GLenum target, GLuint buffer)) _func)(target, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_511(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[511];
+ ((void (APIENTRY *)(GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage)) _func)(target, size, data, usage);
+}
+
+void APIENTRY shared_dispatch_stub_512(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[512];
+ ((void (APIENTRY *)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data)) _func)(target, offset, size, data);
+}
+
+void APIENTRY shared_dispatch_stub_513(GLsizei n, const GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[513];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *buffer)) _func)(n, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_514(GLsizei n, GLuint *buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[514];
+ ((void (APIENTRY *)(GLsizei n, GLuint *buffer)) _func)(n, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_515(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[515];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_516(GLenum target, GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[516];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLvoid **params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_517(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[517];
+ ((void (APIENTRY *)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data)) _func)(target, offset, size, data);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_518(GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[518];
+ return ((GLboolean (APIENTRY *)(GLuint buffer)) _func)(buffer);
+}
+
+GLvoid * APIENTRY shared_dispatch_stub_519(GLenum target, GLenum access)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[519];
+ return ((GLvoid * (APIENTRY *)(GLenum target, GLenum access)) _func)(target, access);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_520(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[520];
+ return ((GLboolean (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_521(GLenum target, GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[521];
+ ((void (APIENTRY *)(GLenum target, GLuint id)) _func)(target, id);
+}
+
+void APIENTRY shared_dispatch_stub_522(GLsizei n, const GLuint *ids)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[522];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids);
+}
+
+void APIENTRY shared_dispatch_stub_523(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[523];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_524(GLsizei n, GLuint *ids)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[524];
+ ((void (APIENTRY *)(GLsizei n, GLuint *ids)) _func)(n, ids);
+}
+
+void APIENTRY shared_dispatch_stub_525(GLuint id, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[525];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_526(GLuint id, GLenum pname, GLuint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[526];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLuint *params)) _func)(id, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_527(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[527];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_528(GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[528];
+ return ((GLboolean (APIENTRY *)(GLuint id)) _func)(id);
+}
+
+void APIENTRY shared_dispatch_stub_529(GLhandleARB containerObj, GLhandleARB obj)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[529];
+ ((void (APIENTRY *)(GLhandleARB containerObj, GLhandleARB obj)) _func)(containerObj, obj);
+}
+
+void APIENTRY shared_dispatch_stub_530(GLhandleARB shader)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[530];
+ ((void (APIENTRY *)(GLhandleARB shader)) _func)(shader);
+}
+
+GLhandleARB APIENTRY shared_dispatch_stub_531(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[531];
+ return ((GLhandleARB (APIENTRY *)(void)) _func)();
+}
+
+GLhandleARB APIENTRY shared_dispatch_stub_532(GLenum shaderType)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[532];
+ return ((GLhandleARB (APIENTRY *)(GLenum shaderType)) _func)(shaderType);
+}
+
+void APIENTRY shared_dispatch_stub_533(GLhandleARB obj)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[533];
+ ((void (APIENTRY *)(GLhandleARB obj)) _func)(obj);
+}
+
+void APIENTRY shared_dispatch_stub_534(GLhandleARB containerObj, GLhandleARB attachedObj)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[534];
+ ((void (APIENTRY *)(GLhandleARB containerObj, GLhandleARB attachedObj)) _func)(containerObj, attachedObj);
+}
+
+void APIENTRY shared_dispatch_stub_535(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[535];
+ ((void (APIENTRY *)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)) _func)(program, index, bufSize, length, size, type, name);
+}
+
+void APIENTRY shared_dispatch_stub_536(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[536];
+ ((void (APIENTRY *)(GLhandleARB containerObj, GLsizei maxLength, GLsizei *length, GLhandleARB *infoLog)) _func)(containerObj, maxLength, length, infoLog);
+}
+
+GLhandleARB APIENTRY shared_dispatch_stub_537(GLenum pname)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[537];
+ return ((GLhandleARB (APIENTRY *)(GLenum pname)) _func)(pname);
+}
+
+void APIENTRY shared_dispatch_stub_538(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[538];
+ ((void (APIENTRY *)(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog)) _func)(obj, maxLength, length, infoLog);
+}
+
+void APIENTRY shared_dispatch_stub_539(GLhandleARB obj, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[539];
+ ((void (APIENTRY *)(GLhandleARB obj, GLenum pname, GLfloat *params)) _func)(obj, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_540(GLhandleARB obj, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[540];
+ ((void (APIENTRY *)(GLhandleARB obj, GLenum pname, GLint *params)) _func)(obj, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_541(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[541];
+ ((void (APIENTRY *)(GLhandleARB shader, GLsizei bufSize, GLsizei *length, GLcharARB *source)) _func)(shader, bufSize, length, source);
+}
+
+GLint APIENTRY shared_dispatch_stub_542(GLhandleARB program, const GLcharARB *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[542];
+ return ((GLint (APIENTRY *)(GLhandleARB program, const GLcharARB *name)) _func)(program, name);
+}
+
+void APIENTRY shared_dispatch_stub_543(GLhandleARB program, GLint location, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[543];
+ ((void (APIENTRY *)(GLhandleARB program, GLint location, GLfloat *params)) _func)(program, location, params);
+}
+
+void APIENTRY shared_dispatch_stub_544(GLhandleARB program, GLint location, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[544];
+ ((void (APIENTRY *)(GLhandleARB program, GLint location, GLint *params)) _func)(program, location, params);
+}
+
+void APIENTRY shared_dispatch_stub_545(GLhandleARB program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[545];
+ ((void (APIENTRY *)(GLhandleARB program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_546(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[546];
+ ((void (APIENTRY *)(GLhandleARB shader, GLsizei count, const GLcharARB **string, const GLint *length)) _func)(shader, count, string, length);
+}
+
+void APIENTRY shared_dispatch_stub_547(GLint location, GLfloat v0)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[547];
+ ((void (APIENTRY *)(GLint location, GLfloat v0)) _func)(location, v0);
+}
+
+void APIENTRY shared_dispatch_stub_548(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[548];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_549(GLint location, GLint v0)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[549];
+ ((void (APIENTRY *)(GLint location, GLint v0)) _func)(location, v0);
+}
+
+void APIENTRY shared_dispatch_stub_550(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[550];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_551(GLint location, GLfloat v0, GLfloat v1)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[551];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1)) _func)(location, v0, v1);
+}
+
+void APIENTRY shared_dispatch_stub_552(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[552];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_553(GLint location, GLint v0, GLint v1)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[553];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1)) _func)(location, v0, v1);
+}
+
+void APIENTRY shared_dispatch_stub_554(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[554];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_555(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[555];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)) _func)(location, v0, v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_556(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[556];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_557(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[557];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1, GLint v2)) _func)(location, v0, v1, v2);
+}
+
+void APIENTRY shared_dispatch_stub_558(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[558];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_559(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[559];
+ ((void (APIENTRY *)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)) _func)(location, v0, v1, v2, v3);
+}
+
+void APIENTRY shared_dispatch_stub_560(GLint location, GLsizei count, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[560];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLfloat *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_561(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[561];
+ ((void (APIENTRY *)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)) _func)(location, v0, v1, v2, v3);
+}
+
+void APIENTRY shared_dispatch_stub_562(GLint location, GLsizei count, const GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[562];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_563(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[563];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_564(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[564];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_565(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[565];
+ ((void (APIENTRY *)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)) _func)(location, count, transpose, value);
+}
+
+void APIENTRY shared_dispatch_stub_566(GLhandleARB program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[566];
+ ((void (APIENTRY *)(GLhandleARB program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_567(GLhandleARB program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[567];
+ ((void (APIENTRY *)(GLhandleARB program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_568(GLhandleARB program, GLuint index, const GLcharARB *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[568];
+ ((void (APIENTRY *)(GLhandleARB program, GLuint index, const GLcharARB *name)) _func)(program, index, name);
+}
+
+void APIENTRY shared_dispatch_stub_569(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[569];
+ ((void (APIENTRY *)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name)) _func)(program, index, bufSize, length, size, type, name);
+}
+
+GLint APIENTRY shared_dispatch_stub_570(GLhandleARB program, const GLcharARB *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[570];
+ return ((GLint (APIENTRY *)(GLhandleARB program, const GLcharARB *name)) _func)(program, name);
+}
+
+void APIENTRY shared_dispatch_stub_571(GLsizei n, const GLenum *bufs)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[571];
+ ((void (APIENTRY *)(GLsizei n, const GLenum *bufs)) _func)(n, bufs);
+}
+
+void APIENTRY shared_dispatch_stub_572(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[572];
+ ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)) _func)(mode, first, count, primcount);
+}
+
+void APIENTRY shared_dispatch_stub_573(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[573];
+ ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount);
+}
+
+void APIENTRY shared_dispatch_stub_574(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[574];
+ ((void (APIENTRY *)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, samples, internalformat, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_575(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[575];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level)) _func)(target, attachment, texture, level);
+}
+
+void APIENTRY shared_dispatch_stub_576(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[576];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)) _func)(target, attachment, texture, level, face);
+}
+
+void APIENTRY shared_dispatch_stub_577(GLuint program, GLenum pname, GLint value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[577];
+ ((void (APIENTRY *)(GLuint program, GLenum pname, GLint value)) _func)(program, pname, value);
+}
+
+void APIENTRY shared_dispatch_stub_578(GLuint index, GLuint divisor)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[578];
+ ((void (APIENTRY *)(GLuint index, GLuint divisor)) _func)(index, divisor);
+}
+
+void APIENTRY shared_dispatch_stub_579(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[579];
+ ((void (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr length)) _func)(target, offset, length);
+}
+
+GLvoid * APIENTRY shared_dispatch_stub_580(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[580];
+ return ((GLvoid * (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)) _func)(target, offset, length, access);
+}
+
+void APIENTRY shared_dispatch_stub_581(GLuint array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[581];
+ ((void (APIENTRY *)(GLuint array)) _func)(array);
+}
+
+void APIENTRY shared_dispatch_stub_582(GLsizei n, GLuint *arrays)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[582];
+ ((void (APIENTRY *)(GLsizei n, GLuint *arrays)) _func)(n, arrays);
+}
+
+void APIENTRY shared_dispatch_stub_583(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[583];
+ ((void (APIENTRY *)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)) _func)(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+GLenum APIENTRY shared_dispatch_stub_584(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[584];
+ return ((GLenum (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout);
+}
+
+void APIENTRY shared_dispatch_stub_585(GLsync sync)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[585];
+ ((void (APIENTRY *)(GLsync sync)) _func)(sync);
+}
+
+GLsync APIENTRY shared_dispatch_stub_586(GLenum condition, GLbitfield flags)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[586];
+ return ((GLsync (APIENTRY *)(GLenum condition, GLbitfield flags)) _func)(condition, flags);
+}
+
+void APIENTRY shared_dispatch_stub_587(GLenum pname, GLint64 *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[587];
+ ((void (APIENTRY *)(GLenum pname, GLint64 *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_588(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[588];
+ ((void (APIENTRY *)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)) _func)(sync, pname, bufSize, length, values);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_589(GLsync sync)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[589];
+ return ((GLboolean (APIENTRY *)(GLsync sync)) _func)(sync);
+}
+
+void APIENTRY shared_dispatch_stub_590(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[590];
+ ((void (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout);
+}
+
+void APIENTRY shared_dispatch_stub_591(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[591];
+ ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, count, type, indices, basevertex);
+}
+
+void APIENTRY shared_dispatch_stub_592(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[592];
+ ((void (APIENTRY *)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, start, end, count, type, indices, basevertex);
+}
+
+void APIENTRY shared_dispatch_stub_593(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[593];
+ ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex)) _func)(mode, count, type, indices, primcount, basevertex);
+}
+
+void APIENTRY shared_dispatch_stub_594(GLuint buf, GLenum modeRGB, GLenum modeA)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[594];
+ ((void (APIENTRY *)(GLuint buf, GLenum modeRGB, GLenum modeA)) _func)(buf, modeRGB, modeA);
+}
+
+void APIENTRY shared_dispatch_stub_595(GLuint buf, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[595];
+ ((void (APIENTRY *)(GLuint buf, GLenum mode)) _func)(buf, mode);
+}
+
+void APIENTRY shared_dispatch_stub_596(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[596];
+ ((void (APIENTRY *)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)) _func)(buf, srcRGB, dstRGB, srcA, dstA);
+}
+
+void APIENTRY shared_dispatch_stub_597(GLuint buf, GLenum src, GLenum dst)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[597];
+ ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst);
+}
+
+void APIENTRY shared_dispatch_stub_598(GLenum target, GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[598];
+ ((void (APIENTRY *)(GLenum target, GLuint id)) _func)(target, id);
+}
+
+void APIENTRY shared_dispatch_stub_599(GLsizei n, const GLuint *ids)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[599];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids);
+}
+
+void APIENTRY shared_dispatch_stub_600(GLenum mode, GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[600];
+ ((void (APIENTRY *)(GLenum mode, GLuint id)) _func)(mode, id);
+}
+
+void APIENTRY shared_dispatch_stub_601(GLsizei n, GLuint *ids)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[601];
+ ((void (APIENTRY *)(GLsizei n, GLuint *ids)) _func)(n, ids);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_602(GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[602];
+ return ((GLboolean (APIENTRY *)(GLuint id)) _func)(id);
+}
+
+void APIENTRY shared_dispatch_stub_603(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[603];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_604(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[604];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_605(GLclampf depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[605];
+ ((void (APIENTRY *)(GLclampf depth)) _func)(depth);
+}
+
+void APIENTRY shared_dispatch_stub_606(GLclampf zNear, GLclampf zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[606];
+ ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_607(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[607];
+ ((void (APIENTRY *)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)) _func)(shadertype, precisiontype, range, precision);
+}
+
+void APIENTRY shared_dispatch_stub_608(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[608];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_609(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[609];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length);
+}
+
+void APIENTRY shared_dispatch_stub_610(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[610];
+ ((void (APIENTRY *)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)) _func)(program, bufSize, length, binaryFormat, binary);
+}
+
+void APIENTRY shared_dispatch_stub_611(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[611];
+ ((void (APIENTRY *)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)) _func)(program, binaryFormat, binary, length);
+}
+
+void APIENTRY shared_dispatch_stub_612(GLuint program, GLenum pname, GLint value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[612];
+ ((void (APIENTRY *)(GLuint program, GLenum pname, GLint value)) _func)(program, pname, value);
+}
+
+void APIENTRY shared_dispatch_stub_613(GLfloat factor, GLfloat bias)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[613];
+ ((void (APIENTRY *)(GLfloat factor, GLfloat bias)) _func)(factor, bias);
+}
+
+void APIENTRY shared_dispatch_stub_614(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[614];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)) _func)(x, y, z, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_615(const GLfloat *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[615];
+ ((void (APIENTRY *)(const GLfloat *coords)) _func)(coords);
+}
+
+void APIENTRY shared_dispatch_stub_616(GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[616];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint width, GLint height)) _func)(x, y, z, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_617(const GLint *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[617];
+ ((void (APIENTRY *)(const GLint *coords)) _func)(coords);
+}
+
+void APIENTRY shared_dispatch_stub_618(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[618];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)) _func)(x, y, z, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_619(const GLshort *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[619];
+ ((void (APIENTRY *)(const GLshort *coords)) _func)(coords);
+}
+
+void APIENTRY shared_dispatch_stub_620(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[620];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)) _func)(x, y, z, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_621(const GLfixed *coords)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[621];
+ ((void (APIENTRY *)(const GLfixed *coords)) _func)(coords);
+}
+
+void APIENTRY shared_dispatch_stub_622(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[622];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_623(GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[623];
+ ((void (APIENTRY *)(GLenum pname, GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_624(GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[624];
+ ((void (APIENTRY *)(GLenum pname, GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_625(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[625];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_626(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[626];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_627(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[627];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_628(GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[628];
+ ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params);
+}
+
+GLbitfield APIENTRY shared_dispatch_stub_629(GLfixed *mantissa, GLint *exponent)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[629];
+ return ((GLbitfield (APIENTRY *)(GLfixed *mantissa, GLint *exponent)) _func)(mantissa, exponent);
+}
+
+void APIENTRY shared_dispatch_stub_630(GLclampf value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[630];
+ ((void (APIENTRY *)(GLclampf value, GLboolean invert)) _func)(value, invert);
+}
+
+void APIENTRY shared_dispatch_stub_631(GLenum pattern)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[631];
+ ((void (APIENTRY *)(GLenum pattern)) _func)(pattern);
+}
+
+void APIENTRY shared_dispatch_stub_632(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[632];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_633(GLsizei stride, GLsizei count, const GLboolean *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[633];
+ ((void (APIENTRY *)(GLsizei stride, GLsizei count, const GLboolean *pointer)) _func)(stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_634(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[634];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_635(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[635];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_636(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[636];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_637(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[637];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_638(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[638];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_639(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[639];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_640(GLint first, GLsizei count)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[640];
+ ((void (APIENTRY *)(GLint first, GLsizei count)) _func)(first, count);
+}
+
+void APIENTRY shared_dispatch_stub_641(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[641];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_642(GLbyte red, GLbyte green, GLbyte blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[642];
+ ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_643(const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[643];
+ ((void (APIENTRY *)(const GLbyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_644(GLdouble red, GLdouble green, GLdouble blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[644];
+ ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_645(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[645];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_646(GLfloat red, GLfloat green, GLfloat blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[646];
+ ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_647(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[647];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_648(GLint red, GLint green, GLint blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[648];
+ ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_649(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[649];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_650(GLshort red, GLshort green, GLshort blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[650];
+ ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_651(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[651];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_652(GLubyte red, GLubyte green, GLubyte blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[652];
+ ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_653(const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[653];
+ ((void (APIENTRY *)(const GLubyte *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_654(GLuint red, GLuint green, GLuint blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[654];
+ ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_655(const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[655];
+ ((void (APIENTRY *)(const GLuint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_656(GLushort red, GLushort green, GLushort blue)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[656];
+ ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue);
+}
+
+void APIENTRY shared_dispatch_stub_657(const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[657];
+ ((void (APIENTRY *)(const GLushort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_658(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[658];
+ ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_659(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[659];
+ ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount);
+}
+
+void APIENTRY shared_dispatch_stub_660(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[660];
+ ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount);
+}
+
+void APIENTRY shared_dispatch_stub_661(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[661];
+ ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_662(GLdouble coord)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[662];
+ ((void (APIENTRY *)(GLdouble coord)) _func)(coord);
+}
+
+void APIENTRY shared_dispatch_stub_663(const GLdouble *coord)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[663];
+ ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord);
+}
+
+void APIENTRY shared_dispatch_stub_664(GLfloat coord)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[664];
+ ((void (APIENTRY *)(GLfloat coord)) _func)(coord);
+}
+
+void APIENTRY shared_dispatch_stub_665(const GLfloat *coord)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[665];
+ ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord);
+}
+
+void APIENTRY shared_dispatch_stub_666(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[666];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_667(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[667];
+ ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+void APIENTRY shared_dispatch_stub_668(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[668];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_669(GLsizei length, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[669];
+ ((void (APIENTRY *)(GLsizei length, const GLvoid *pointer)) _func)(length, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_670(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[670];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(stage, portion, variable, input, mapping, componentUsage);
+}
+
+void APIENTRY shared_dispatch_stub_671(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[671];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)) _func)(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum);
+}
+
+void APIENTRY shared_dispatch_stub_672(GLenum pname, GLfloat param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[672];
+ ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_673(GLenum pname, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[673];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_674(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[674];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_675(GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[675];
+ ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_676(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[676];
+ ((void (APIENTRY *)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(variable, input, mapping, componentUsage);
+}
+
+void APIENTRY shared_dispatch_stub_677(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[677];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)) _func)(stage, portion, variable, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_678(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[678];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)) _func)(stage, portion, variable, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_679(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[679];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)) _func)(stage, portion, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_680(GLenum stage, GLenum portion, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[680];
+ ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLint *params)) _func)(stage, portion, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_681(GLenum variable, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[681];
+ ((void (APIENTRY *)(GLenum variable, GLenum pname, GLfloat *params)) _func)(variable, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_682(GLenum variable, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[682];
+ ((void (APIENTRY *)(GLenum variable, GLenum pname, GLint *params)) _func)(variable, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_683(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[683];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_684(GLdouble x, GLdouble y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[684];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_685(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[685];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_686(GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[686];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_687(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[687];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_688(GLint x, GLint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[688];
+ ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_689(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[689];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_690(GLshort x, GLshort y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[690];
+ ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y);
+}
+
+void APIENTRY shared_dispatch_stub_691(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[691];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_692(GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[692];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_693(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[693];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_694(GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[694];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_695(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[695];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_696(GLint x, GLint y, GLint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[696];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_697(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[697];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_698(GLshort x, GLshort y, GLshort z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[698];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_699(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[699];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_700(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[700];
+ ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_701(const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[701];
+ ((void (APIENTRY *)(const GLdouble *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_702(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[702];
+ ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_703(const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[703];
+ ((void (APIENTRY *)(const GLfloat *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_704(GLint x, GLint y, GLint z, GLint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[704];
+ ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_705(const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[705];
+ ((void (APIENTRY *)(const GLint *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_706(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[706];
+ ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_707(const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[707];
+ ((void (APIENTRY *)(const GLshort *v)) _func)(v);
+}
+
+void APIENTRY shared_dispatch_stub_708(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[708];
+ ((void (APIENTRY *)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride)) _func)(mode, first, count, primcount, modestride);
+}
+
+void APIENTRY shared_dispatch_stub_709(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[709];
+ ((void (APIENTRY *)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride)) _func)(mode, count, type, indices, primcount, modestride);
+}
+
+void APIENTRY shared_dispatch_stub_710(GLsizei n, const GLuint *fences)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[710];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *fences)) _func)(n, fences);
+}
+
+void APIENTRY shared_dispatch_stub_711(GLuint fence)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[711];
+ ((void (APIENTRY *)(GLuint fence)) _func)(fence);
+}
+
+void APIENTRY shared_dispatch_stub_712(GLsizei n, GLuint *fences)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[712];
+ ((void (APIENTRY *)(GLsizei n, GLuint *fences)) _func)(n, fences);
+}
+
+void APIENTRY shared_dispatch_stub_713(GLuint fence, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[713];
+ ((void (APIENTRY *)(GLuint fence, GLenum pname, GLint *params)) _func)(fence, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_714(GLuint fence)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[714];
+ return ((GLboolean (APIENTRY *)(GLuint fence)) _func)(fence);
+}
+
+void APIENTRY shared_dispatch_stub_715(GLuint fence, GLenum condition)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[715];
+ ((void (APIENTRY *)(GLuint fence, GLenum condition)) _func)(fence, condition);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_716(GLuint fence)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[716];
+ return ((GLboolean (APIENTRY *)(GLuint fence)) _func)(fence);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_717(GLsizei n, const GLuint *ids, GLboolean *residences)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[717];
+ return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *ids, GLboolean *residences)) _func)(n, ids, residences);
+}
+
+void APIENTRY shared_dispatch_stub_718(GLenum target, GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[718];
+ ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program);
+}
+
+void APIENTRY shared_dispatch_stub_719(GLsizei n, const GLuint *programs)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[719];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs);
+}
+
+void APIENTRY shared_dispatch_stub_720(GLenum target, GLuint id, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[720];
+ ((void (APIENTRY *)(GLenum target, GLuint id, const GLfloat *params)) _func)(target, id, params);
+}
+
+void APIENTRY shared_dispatch_stub_721(GLsizei n, GLuint *programs)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[721];
+ ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs);
+}
+
+void APIENTRY shared_dispatch_stub_722(GLenum target, GLuint index, GLenum pname, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[722];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLdouble *params)) _func)(target, index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_723(GLenum target, GLuint index, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[723];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLfloat *params)) _func)(target, index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_724(GLuint id, GLenum pname, GLubyte *program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[724];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLubyte *program)) _func)(id, pname, program);
+}
+
+void APIENTRY shared_dispatch_stub_725(GLuint id, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[725];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_726(GLenum target, GLuint address, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[726];
+ ((void (APIENTRY *)(GLenum target, GLuint address, GLenum pname, GLint *params)) _func)(target, address, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_727(GLuint index, GLenum pname, GLvoid **pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[727];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_728(GLuint index, GLenum pname, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[728];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_729(GLuint index, GLenum pname, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[729];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_730(GLuint index, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[730];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_731(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[731];
+ return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+void APIENTRY shared_dispatch_stub_732(GLenum target, GLuint id, GLsizei len, const GLubyte *program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[732];
+ ((void (APIENTRY *)(GLenum target, GLuint id, GLsizei len, const GLubyte *program)) _func)(target, id, len, program);
+}
+
+void APIENTRY shared_dispatch_stub_733(GLenum target, GLuint index, GLsizei num, const GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[733];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLdouble *params)) _func)(target, index, num, params);
+}
+
+void APIENTRY shared_dispatch_stub_734(GLenum target, GLuint index, GLsizei num, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[734];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLfloat *params)) _func)(target, index, num, params);
+}
+
+void APIENTRY shared_dispatch_stub_735(GLsizei n, const GLuint *ids)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[735];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids);
+}
+
+void APIENTRY shared_dispatch_stub_736(GLenum target, GLuint address, GLenum matrix, GLenum transform)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[736];
+ ((void (APIENTRY *)(GLenum target, GLuint address, GLenum matrix, GLenum transform)) _func)(target, address, matrix, transform);
+}
+
+void APIENTRY shared_dispatch_stub_737(GLuint index, GLdouble x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[737];
+ ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_738(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[738];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_739(GLuint index, GLfloat x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[739];
+ ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_740(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[740];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_741(GLuint index, GLshort x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[741];
+ ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_742(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[742];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_743(GLuint index, GLdouble x, GLdouble y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[743];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_744(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[744];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_745(GLuint index, GLfloat x, GLfloat y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[745];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_746(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[746];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_747(GLuint index, GLshort x, GLshort y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[747];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_748(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[748];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_749(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[749];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_750(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[750];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_751(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[751];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_752(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[752];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_753(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[753];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_754(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[754];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_755(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[755];
+ ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_756(GLuint index, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[756];
+ ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_757(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[757];
+ ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_758(GLuint index, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[758];
+ ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_759(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[759];
+ ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_760(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[760];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_761(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[761];
+ ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_762(GLuint index, const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[762];
+ ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_763(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[763];
+ ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_764(GLuint index, GLsizei n, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[764];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_765(GLuint index, GLsizei n, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[765];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_766(GLuint index, GLsizei n, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[766];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_767(GLuint index, GLsizei n, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[767];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_768(GLuint index, GLsizei n, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[768];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_769(GLuint index, GLsizei n, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[769];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_770(GLuint index, GLsizei n, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[770];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_771(GLuint index, GLsizei n, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[771];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_772(GLuint index, GLsizei n, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[772];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_773(GLuint index, GLsizei n, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[773];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_774(GLuint index, GLsizei n, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[774];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_775(GLuint index, GLsizei n, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[775];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_776(GLuint index, GLsizei n, const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[776];
+ ((void (APIENTRY *)(GLuint index, GLsizei n, const GLubyte *v)) _func)(index, n, v);
+}
+
+void APIENTRY shared_dispatch_stub_777(GLenum pname, GLfloat *param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[777];
+ ((void (APIENTRY *)(GLenum pname, GLfloat *param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_778(GLenum pname, GLint *param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[778];
+ ((void (APIENTRY *)(GLenum pname, GLint *param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_779(GLenum pname, const GLfloat *param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[779];
+ ((void (APIENTRY *)(GLenum pname, const GLfloat *param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_780(GLenum pname, const GLint *param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[780];
+ ((void (APIENTRY *)(GLenum pname, const GLint *param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_781(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[781];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod);
+}
+
+void APIENTRY shared_dispatch_stub_782(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[782];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod);
+}
+
+void APIENTRY shared_dispatch_stub_783(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[783];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod);
+}
+
+void APIENTRY shared_dispatch_stub_784(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[784];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_785(GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[785];
+ ((void (APIENTRY *)(GLuint id)) _func)(id);
+}
+
+void APIENTRY shared_dispatch_stub_786(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[786];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod);
+}
+
+void APIENTRY shared_dispatch_stub_787(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[787];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod);
+}
+
+void APIENTRY shared_dispatch_stub_788(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[788];
+ ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod);
+}
+
+void APIENTRY shared_dispatch_stub_789(GLuint id)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[789];
+ ((void (APIENTRY *)(GLuint id)) _func)(id);
+}
+
+void APIENTRY shared_dispatch_stub_790(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[790];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+GLuint APIENTRY shared_dispatch_stub_791(GLuint range)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[791];
+ return ((GLuint (APIENTRY *)(GLuint range)) _func)(range);
+}
+
+void APIENTRY shared_dispatch_stub_792(GLuint dst, GLuint coord, GLenum swizzle)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[792];
+ ((void (APIENTRY *)(GLuint dst, GLuint coord, GLenum swizzle)) _func)(dst, coord, swizzle);
+}
+
+void APIENTRY shared_dispatch_stub_793(GLuint dst, GLuint interp, GLenum swizzle)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[793];
+ ((void (APIENTRY *)(GLuint dst, GLuint interp, GLenum swizzle)) _func)(dst, interp, swizzle);
+}
+
+void APIENTRY shared_dispatch_stub_794(GLuint dst, const GLfloat *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[794];
+ ((void (APIENTRY *)(GLuint dst, const GLfloat *value)) _func)(dst, value);
+}
+
+void APIENTRY shared_dispatch_stub_795(GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[795];
+ ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_796(GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[796];
+ ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_797(GLenum face)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[797];
+ ((void (APIENTRY *)(GLenum face)) _func)(face);
+}
+
+void APIENTRY shared_dispatch_stub_798(GLuint array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[798];
+ ((void (APIENTRY *)(GLuint array)) _func)(array);
+}
+
+void APIENTRY shared_dispatch_stub_799(GLsizei n, const GLuint *arrays)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[799];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *arrays)) _func)(n, arrays);
+}
+
+void APIENTRY shared_dispatch_stub_800(GLsizei n, GLuint *arrays)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[800];
+ ((void (APIENTRY *)(GLsizei n, GLuint *arrays)) _func)(n, arrays);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_801(GLuint array)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[801];
+ return ((GLboolean (APIENTRY *)(GLuint array)) _func)(array);
+}
+
+void APIENTRY shared_dispatch_stub_802(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[802];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)) _func)(id, len, name, params);
+}
+
+void APIENTRY shared_dispatch_stub_803(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[803];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)) _func)(id, len, name, params);
+}
+
+void APIENTRY shared_dispatch_stub_804(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[804];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(id, len, name, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_805(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[805];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)) _func)(id, len, name, v);
+}
+
+void APIENTRY shared_dispatch_stub_806(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[806];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(id, len, name, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_807(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[807];
+ ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)) _func)(id, len, name, v);
+}
+
+void APIENTRY shared_dispatch_stub_808(GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[808];
+ ((void (APIENTRY *)(GLuint index)) _func)(index);
+}
+
+void APIENTRY shared_dispatch_stub_809(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[809];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_810(GLenum func, GLclampx ref)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[810];
+ ((void (APIENTRY *)(GLenum func, GLclampx ref)) _func)(func, ref);
+}
+
+void APIENTRY shared_dispatch_stub_811(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[811];
+ ((void (APIENTRY *)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_812(GLclampx depth)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[812];
+ ((void (APIENTRY *)(GLclampx depth)) _func)(depth);
+}
+
+void APIENTRY shared_dispatch_stub_813(GLenum plane, const GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[813];
+ ((void (APIENTRY *)(GLenum plane, const GLfixed *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_814(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[814];
+ ((void (APIENTRY *)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)) _func)(red, green, blue, alpha);
+}
+
+void APIENTRY shared_dispatch_stub_815(GLclampx zNear, GLclampx zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[815];
+ ((void (APIENTRY *)(GLclampx zNear, GLclampx zFar)) _func)(zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_816(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[816];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_817(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[817];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_818(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[818];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_819(GLenum plane, GLfixed *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[819];
+ ((void (APIENTRY *)(GLenum plane, GLfixed *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_820(GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[820];
+ ((void (APIENTRY *)(GLenum pname, GLfixed *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_821(GLenum light, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[821];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_822(GLenum face, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[822];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_823(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[823];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_824(GLenum coord, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[824];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLfixed *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_825(GLenum target, GLenum pname, GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[825];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_826(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[826];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_827(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[827];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_828(GLenum light, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[828];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, GLfixed param)) _func)(light, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_829(GLenum light, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[829];
+ ((void (APIENTRY *)(GLenum light, GLenum pname, const GLfixed *params)) _func)(light, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_830(GLfixed width)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[830];
+ ((void (APIENTRY *)(GLfixed width)) _func)(width);
+}
+
+void APIENTRY shared_dispatch_stub_831(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[831];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_832(GLenum face, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[832];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, GLfixed param)) _func)(face, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_833(GLenum face, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[833];
+ ((void (APIENTRY *)(GLenum face, GLenum pname, const GLfixed *params)) _func)(face, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_834(const GLfixed *m)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[834];
+ ((void (APIENTRY *)(const GLfixed *m)) _func)(m);
+}
+
+void APIENTRY shared_dispatch_stub_835(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[835];
+ ((void (APIENTRY *)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)) _func)(target, s, t, r, q);
+}
+
+void APIENTRY shared_dispatch_stub_836(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[836];
+ ((void (APIENTRY *)(GLfixed nx, GLfixed ny, GLfixed nz)) _func)(nx, ny, nz);
+}
+
+void APIENTRY shared_dispatch_stub_837(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[837];
+ ((void (APIENTRY *)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_838(GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[838];
+ ((void (APIENTRY *)(GLenum pname, GLfixed param)) _func)(pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_839(GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[839];
+ ((void (APIENTRY *)(GLenum pname, const GLfixed *params)) _func)(pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_840(GLfixed size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[840];
+ ((void (APIENTRY *)(GLfixed size)) _func)(size);
+}
+
+void APIENTRY shared_dispatch_stub_841(GLfixed factor, GLfixed units)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[841];
+ ((void (APIENTRY *)(GLfixed factor, GLfixed units)) _func)(factor, units);
+}
+
+void APIENTRY shared_dispatch_stub_842(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[842];
+ ((void (APIENTRY *)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)) _func)(angle, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_843(GLclampx value, GLboolean invert)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[843];
+ ((void (APIENTRY *)(GLclampx value, GLboolean invert)) _func)(value, invert);
+}
+
+void APIENTRY shared_dispatch_stub_844(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[844];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_845(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[845];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_846(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[846];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_847(GLenum coord, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[847];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, GLint param)) _func)(coord, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_848(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[848];
+ ((void (APIENTRY *)(GLenum coord, GLenum pname, const GLfixed *params)) _func)(coord, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_849(GLenum target, GLenum pname, GLfixed param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[849];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLfixed param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_850(GLenum target, GLenum pname, const GLfixed *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[850];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLfixed *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_851(GLfixed x, GLfixed y, GLfixed z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[851];
+ ((void (APIENTRY *)(GLfixed x, GLfixed y, GLfixed z)) _func)(x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_852(GLenum plane, const GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[852];
+ ((void (APIENTRY *)(GLenum plane, const GLfloat *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_853(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[853];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_854(GLenum plane, GLfloat *equation)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[854];
+ ((void (APIENTRY *)(GLenum plane, GLfloat *equation)) _func)(plane, equation);
+}
+
+void APIENTRY shared_dispatch_stub_855(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[855];
+ ((void (APIENTRY *)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)) _func)(left, right, bottom, top, zNear, zFar);
+}
+
+void APIENTRY shared_dispatch_stub_856(GLclampd zmin, GLclampd zmax)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[856];
+ ((void (APIENTRY *)(GLclampd zmin, GLclampd zmax)) _func)(zmin, zmax);
+}
+
+void APIENTRY shared_dispatch_stub_857(GLenum modeRGB, GLenum modeA)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[857];
+ ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA);
+}
+
+void APIENTRY shared_dispatch_stub_858(GLenum target, GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[858];
+ ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer);
+}
+
+void APIENTRY shared_dispatch_stub_859(GLenum target, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[859];
+ ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer);
+}
+
+GLenum APIENTRY shared_dispatch_stub_860(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[860];
+ return ((GLenum (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_861(GLsizei n, const GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[861];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+void APIENTRY shared_dispatch_stub_862(GLsizei n, const GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[862];
+ ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+void APIENTRY shared_dispatch_stub_863(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[863];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+void APIENTRY shared_dispatch_stub_864(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[864];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level);
+}
+
+void APIENTRY shared_dispatch_stub_865(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[865];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level);
+}
+
+void APIENTRY shared_dispatch_stub_866(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[866];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset);
+}
+
+void APIENTRY shared_dispatch_stub_867(GLsizei n, GLuint *framebuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[867];
+ ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers);
+}
+
+void APIENTRY shared_dispatch_stub_868(GLsizei n, GLuint *renderbuffers)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[868];
+ ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers);
+}
+
+void APIENTRY shared_dispatch_stub_869(GLenum target)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[869];
+ ((void (APIENTRY *)(GLenum target)) _func)(target);
+}
+
+void APIENTRY shared_dispatch_stub_870(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[870];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_871(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[871];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_872(GLuint framebuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[872];
+ return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_873(GLuint renderbuffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[873];
+ return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer);
+}
+
+void APIENTRY shared_dispatch_stub_874(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[874];
+ ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height);
+}
+
+void APIENTRY shared_dispatch_stub_875(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[875];
+ ((void (APIENTRY *)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)) _func)(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+void APIENTRY shared_dispatch_stub_876(GLenum target, GLenum pname, GLint param)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[876];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint param)) _func)(target, pname, param);
+}
+
+void APIENTRY shared_dispatch_stub_877(GLenum target, GLintptr offset, GLsizeiptr size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[877];
+ ((void (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr size)) _func)(target, offset, size);
+}
+
+void APIENTRY shared_dispatch_stub_878(GLuint program, GLuint colorNumber, const GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[878];
+ ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name);
+}
+
+GLint APIENTRY shared_dispatch_stub_879(GLuint program, const GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[879];
+ return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name);
+}
+
+void APIENTRY shared_dispatch_stub_880(GLuint program, GLint location, GLuint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[880];
+ ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params);
+}
+
+void APIENTRY shared_dispatch_stub_881(GLuint index, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[881];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_882(GLuint index, GLenum pname, GLuint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[882];
+ ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_883(GLint location, GLuint x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[883];
+ ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x);
+}
+
+void APIENTRY shared_dispatch_stub_884(GLint location, GLsizei count, const GLuint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[884];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_885(GLint location, GLuint x, GLuint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[885];
+ ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_886(GLint location, GLsizei count, const GLuint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[886];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_887(GLint location, GLuint x, GLuint y, GLuint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[887];
+ ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_888(GLint location, GLsizei count, const GLuint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[888];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_889(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[889];
+ ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_890(GLint location, GLsizei count, const GLuint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[890];
+ ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value);
+}
+
+void APIENTRY shared_dispatch_stub_891(GLuint index, GLint x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[891];
+ ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_892(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[892];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_893(GLuint index, GLuint x)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[893];
+ ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x);
+}
+
+void APIENTRY shared_dispatch_stub_894(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[894];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_895(GLuint index, GLint x, GLint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[895];
+ ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_896(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[896];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_897(GLuint index, GLuint x, GLuint y)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[897];
+ ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y);
+}
+
+void APIENTRY shared_dispatch_stub_898(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[898];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_899(GLuint index, GLint x, GLint y, GLint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[899];
+ ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_900(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[900];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_901(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[901];
+ ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z);
+}
+
+void APIENTRY shared_dispatch_stub_902(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[902];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_903(GLuint index, const GLbyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[903];
+ ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_904(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[904];
+ ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_905(GLuint index, const GLint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[905];
+ ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_906(GLuint index, const GLshort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[906];
+ ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_907(GLuint index, const GLubyte *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[907];
+ ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_908(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[908];
+ ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w);
+}
+
+void APIENTRY shared_dispatch_stub_909(GLuint index, const GLuint *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[909];
+ ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_910(GLuint index, const GLushort *v)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[910];
+ ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v);
+}
+
+void APIENTRY shared_dispatch_stub_911(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[911];
+ ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_912(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[912];
+ ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer);
+}
+
+void APIENTRY shared_dispatch_stub_913(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[913];
+ ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a);
+}
+
+void APIENTRY shared_dispatch_stub_914(GLenum target, GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[914];
+ ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index);
+}
+
+void APIENTRY shared_dispatch_stub_915(GLenum target, GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[915];
+ ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index);
+}
+
+void APIENTRY shared_dispatch_stub_916(GLenum value, GLuint index, GLboolean *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[916];
+ ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data);
+}
+
+void APIENTRY shared_dispatch_stub_917(GLenum value, GLuint index, GLint *data)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[917];
+ ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data);
+}
+
+GLboolean APIENTRY shared_dispatch_stub_918(GLenum target, GLuint index)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[918];
+ return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index);
+}
+
+void APIENTRY shared_dispatch_stub_919(GLint r, GLint g, GLint b, GLint a)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[919];
+ ((void (APIENTRY *)(GLint r, GLint g, GLint b, GLint a)) _func)(r, g, b, a);
+}
+
+void APIENTRY shared_dispatch_stub_920(GLuint r, GLuint g, GLuint b, GLuint a)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[920];
+ ((void (APIENTRY *)(GLuint r, GLuint g, GLuint b, GLuint a)) _func)(r, g, b, a);
+}
+
+void APIENTRY shared_dispatch_stub_921(GLenum target, GLenum pname, GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[921];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_922(GLenum target, GLenum pname, GLuint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[922];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_923(GLenum target, GLenum pname, const GLint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[923];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_924(GLenum target, GLenum pname, const GLuint *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[924];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_925(GLuint query, GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[925];
+ ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode);
+}
+
+void APIENTRY shared_dispatch_stub_926(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[926];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_927(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[927];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_928(GLenum target, GLuint index, GLuint buffer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[928];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer);
+}
+
+void APIENTRY shared_dispatch_stub_929(GLenum target, GLuint index, GLuint buffer, GLintptr offset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[929];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)) _func)(target, index, buffer, offset);
+}
+
+void APIENTRY shared_dispatch_stub_930(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[930];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size);
+}
+
+void APIENTRY shared_dispatch_stub_931(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[931];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_932(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[932];
+ ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name);
+}
+
+void APIENTRY shared_dispatch_stub_933(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[933];
+ ((void (APIENTRY *)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode);
+}
+
+void APIENTRY shared_dispatch_stub_934(GLenum mode)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[934];
+ ((void (APIENTRY *)(GLenum mode)) _func)(mode);
+}
+
+void APIENTRY shared_dispatch_stub_935(GLenum target, GLenum pname, GLvoid **params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[935];
+ ((void (APIENTRY *)(GLenum target, GLenum pname, GLvoid **params)) _func)(target, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_936(GLenum target, GLsizei length, GLvoid *pointer)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[936];
+ ((void (APIENTRY *)(GLenum target, GLsizei length, GLvoid *pointer)) _func)(target, length, pointer);
+}
+
+void APIENTRY shared_dispatch_stub_937(GLenum objectType, GLuint name, GLenum pname, GLint *value)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[937];
+ ((void (APIENTRY *)(GLenum objectType, GLuint name, GLenum pname, GLint *value)) _func)(objectType, name, pname, value);
+}
+
+GLenum APIENTRY shared_dispatch_stub_938(GLenum objectType, GLuint name, GLenum option)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[938];
+ return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option);
+}
+
+GLenum APIENTRY shared_dispatch_stub_939(GLenum objectType, GLuint name, GLenum option)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[939];
+ return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option);
+}
+
+void APIENTRY shared_dispatch_stub_940(GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[940];
+ ((void (APIENTRY *)(GLuint program)) _func)(program);
+}
+
+GLuint APIENTRY shared_dispatch_stub_941(GLenum type, const GLchar *string)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[941];
+ return ((GLuint (APIENTRY *)(GLenum type, const GLchar *string)) _func)(type, string);
+}
+
+void APIENTRY shared_dispatch_stub_942(GLenum type, GLuint program)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[942];
+ ((void (APIENTRY *)(GLenum type, GLuint program)) _func)(type, program);
+}
+
+void APIENTRY shared_dispatch_stub_943(void)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[943];
+ ((void (APIENTRY *)(void)) _func)();
+}
+
+void APIENTRY shared_dispatch_stub_944(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[944];
+ ((void (APIENTRY *)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)) _func)(frontfunc, backfunc, ref, mask);
+}
+
+void APIENTRY shared_dispatch_stub_945(GLenum target, GLuint index, GLsizei count, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[945];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei count, const GLfloat *params)) _func)(target, index, count, params);
+}
+
+void APIENTRY shared_dispatch_stub_946(GLenum target, GLuint index, GLsizei count, const GLfloat *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[946];
+ ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei count, const GLfloat *params)) _func)(target, index, count, params);
+}
+
+void APIENTRY shared_dispatch_stub_947(GLuint id, GLenum pname, GLint64EXT *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[947];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLint64EXT *params)) _func)(id, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_948(GLuint id, GLenum pname, GLuint64EXT *params)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[948];
+ ((void (APIENTRY *)(GLuint id, GLenum pname, GLuint64EXT *params)) _func)(id, pname, params);
+}
+
+void APIENTRY shared_dispatch_stub_949(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[949];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+void APIENTRY shared_dispatch_stub_950(GLenum target, GLvoid *writeOffset)
+{
+ const struct mapi_table *_tbl = entry_current_get();
+ mapi_func _func = ((const mapi_func *) _tbl)[950];
+ ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset);
+}
+
+static const mapi_func public_entries[] = {
+ (mapi_func) shared_dispatch_stub_0,
+ (mapi_func) shared_dispatch_stub_1,
+ (mapi_func) shared_dispatch_stub_2,
+ (mapi_func) shared_dispatch_stub_3,
+ (mapi_func) shared_dispatch_stub_4,
+ (mapi_func) shared_dispatch_stub_5,
+ (mapi_func) shared_dispatch_stub_6,
+ (mapi_func) shared_dispatch_stub_7,
+ (mapi_func) shared_dispatch_stub_8,
+ (mapi_func) shared_dispatch_stub_9,
+ (mapi_func) shared_dispatch_stub_10,
+ (mapi_func) shared_dispatch_stub_11,
+ (mapi_func) shared_dispatch_stub_12,
+ (mapi_func) shared_dispatch_stub_13,
+ (mapi_func) shared_dispatch_stub_14,
+ (mapi_func) shared_dispatch_stub_15,
+ (mapi_func) shared_dispatch_stub_16,
+ (mapi_func) shared_dispatch_stub_17,
+ (mapi_func) shared_dispatch_stub_18,
+ (mapi_func) shared_dispatch_stub_19,
+ (mapi_func) shared_dispatch_stub_20,
+ (mapi_func) shared_dispatch_stub_21,
+ (mapi_func) shared_dispatch_stub_22,
+ (mapi_func) shared_dispatch_stub_23,
+ (mapi_func) shared_dispatch_stub_24,
+ (mapi_func) shared_dispatch_stub_25,
+ (mapi_func) shared_dispatch_stub_26,
+ (mapi_func) shared_dispatch_stub_27,
+ (mapi_func) shared_dispatch_stub_28,
+ (mapi_func) shared_dispatch_stub_29,
+ (mapi_func) shared_dispatch_stub_30,
+ (mapi_func) shared_dispatch_stub_31,
+ (mapi_func) shared_dispatch_stub_32,
+ (mapi_func) shared_dispatch_stub_33,
+ (mapi_func) shared_dispatch_stub_34,
+ (mapi_func) shared_dispatch_stub_35,
+ (mapi_func) shared_dispatch_stub_36,
+ (mapi_func) shared_dispatch_stub_37,
+ (mapi_func) shared_dispatch_stub_38,
+ (mapi_func) shared_dispatch_stub_39,
+ (mapi_func) shared_dispatch_stub_40,
+ (mapi_func) shared_dispatch_stub_41,
+ (mapi_func) shared_dispatch_stub_42,
+ (mapi_func) shared_dispatch_stub_43,
+ (mapi_func) shared_dispatch_stub_44,
+ (mapi_func) shared_dispatch_stub_45,
+ (mapi_func) shared_dispatch_stub_46,
+ (mapi_func) shared_dispatch_stub_47,
+ (mapi_func) shared_dispatch_stub_48,
+ (mapi_func) shared_dispatch_stub_49,
+ (mapi_func) shared_dispatch_stub_50,
+ (mapi_func) shared_dispatch_stub_51,
+ (mapi_func) shared_dispatch_stub_52,
+ (mapi_func) shared_dispatch_stub_53,
+ (mapi_func) shared_dispatch_stub_54,
+ (mapi_func) shared_dispatch_stub_55,
+ (mapi_func) shared_dispatch_stub_56,
+ (mapi_func) shared_dispatch_stub_57,
+ (mapi_func) shared_dispatch_stub_58,
+ (mapi_func) shared_dispatch_stub_59,
+ (mapi_func) shared_dispatch_stub_60,
+ (mapi_func) shared_dispatch_stub_61,
+ (mapi_func) shared_dispatch_stub_62,
+ (mapi_func) shared_dispatch_stub_63,
+ (mapi_func) shared_dispatch_stub_64,
+ (mapi_func) shared_dispatch_stub_65,
+ (mapi_func) shared_dispatch_stub_66,
+ (mapi_func) shared_dispatch_stub_67,
+ (mapi_func) shared_dispatch_stub_68,
+ (mapi_func) shared_dispatch_stub_69,
+ (mapi_func) shared_dispatch_stub_70,
+ (mapi_func) shared_dispatch_stub_71,
+ (mapi_func) shared_dispatch_stub_72,
+ (mapi_func) shared_dispatch_stub_73,
+ (mapi_func) shared_dispatch_stub_74,
+ (mapi_func) shared_dispatch_stub_75,
+ (mapi_func) shared_dispatch_stub_76,
+ (mapi_func) shared_dispatch_stub_77,
+ (mapi_func) shared_dispatch_stub_78,
+ (mapi_func) shared_dispatch_stub_79,
+ (mapi_func) shared_dispatch_stub_80,
+ (mapi_func) shared_dispatch_stub_81,
+ (mapi_func) shared_dispatch_stub_82,
+ (mapi_func) shared_dispatch_stub_83,
+ (mapi_func) shared_dispatch_stub_84,
+ (mapi_func) shared_dispatch_stub_85,
+ (mapi_func) shared_dispatch_stub_86,
+ (mapi_func) shared_dispatch_stub_87,
+ (mapi_func) shared_dispatch_stub_88,
+ (mapi_func) shared_dispatch_stub_89,
+ (mapi_func) shared_dispatch_stub_90,
+ (mapi_func) shared_dispatch_stub_91,
+ (mapi_func) shared_dispatch_stub_92,
+ (mapi_func) shared_dispatch_stub_93,
+ (mapi_func) shared_dispatch_stub_94,
+ (mapi_func) shared_dispatch_stub_95,
+ (mapi_func) shared_dispatch_stub_96,
+ (mapi_func) shared_dispatch_stub_97,
+ (mapi_func) shared_dispatch_stub_98,
+ (mapi_func) shared_dispatch_stub_99,
+ (mapi_func) shared_dispatch_stub_100,
+ (mapi_func) shared_dispatch_stub_101,
+ (mapi_func) shared_dispatch_stub_102,
+ (mapi_func) shared_dispatch_stub_103,
+ (mapi_func) shared_dispatch_stub_104,
+ (mapi_func) shared_dispatch_stub_105,
+ (mapi_func) shared_dispatch_stub_106,
+ (mapi_func) shared_dispatch_stub_107,
+ (mapi_func) shared_dispatch_stub_108,
+ (mapi_func) shared_dispatch_stub_109,
+ (mapi_func) shared_dispatch_stub_110,
+ (mapi_func) shared_dispatch_stub_111,
+ (mapi_func) shared_dispatch_stub_112,
+ (mapi_func) shared_dispatch_stub_113,
+ (mapi_func) shared_dispatch_stub_114,
+ (mapi_func) shared_dispatch_stub_115,
+ (mapi_func) shared_dispatch_stub_116,
+ (mapi_func) shared_dispatch_stub_117,
+ (mapi_func) shared_dispatch_stub_118,
+ (mapi_func) shared_dispatch_stub_119,
+ (mapi_func) shared_dispatch_stub_120,
+ (mapi_func) shared_dispatch_stub_121,
+ (mapi_func) shared_dispatch_stub_122,
+ (mapi_func) shared_dispatch_stub_123,
+ (mapi_func) shared_dispatch_stub_124,
+ (mapi_func) shared_dispatch_stub_125,
+ (mapi_func) shared_dispatch_stub_126,
+ (mapi_func) shared_dispatch_stub_127,
+ (mapi_func) shared_dispatch_stub_128,
+ (mapi_func) shared_dispatch_stub_129,
+ (mapi_func) shared_dispatch_stub_130,
+ (mapi_func) shared_dispatch_stub_131,
+ (mapi_func) shared_dispatch_stub_132,
+ (mapi_func) shared_dispatch_stub_133,
+ (mapi_func) shared_dispatch_stub_134,
+ (mapi_func) shared_dispatch_stub_135,
+ (mapi_func) shared_dispatch_stub_136,
+ (mapi_func) shared_dispatch_stub_137,
+ (mapi_func) shared_dispatch_stub_138,
+ (mapi_func) shared_dispatch_stub_139,
+ (mapi_func) shared_dispatch_stub_140,
+ (mapi_func) shared_dispatch_stub_141,
+ (mapi_func) shared_dispatch_stub_142,
+ (mapi_func) shared_dispatch_stub_143,
+ (mapi_func) shared_dispatch_stub_144,
+ (mapi_func) shared_dispatch_stub_145,
+ (mapi_func) shared_dispatch_stub_146,
+ (mapi_func) shared_dispatch_stub_147,
+ (mapi_func) shared_dispatch_stub_148,
+ (mapi_func) shared_dispatch_stub_149,
+ (mapi_func) shared_dispatch_stub_150,
+ (mapi_func) shared_dispatch_stub_151,
+ (mapi_func) shared_dispatch_stub_152,
+ (mapi_func) shared_dispatch_stub_153,
+ (mapi_func) shared_dispatch_stub_154,
+ (mapi_func) shared_dispatch_stub_155,
+ (mapi_func) shared_dispatch_stub_156,
+ (mapi_func) shared_dispatch_stub_157,
+ (mapi_func) shared_dispatch_stub_158,
+ (mapi_func) shared_dispatch_stub_159,
+ (mapi_func) shared_dispatch_stub_160,
+ (mapi_func) shared_dispatch_stub_161,
+ (mapi_func) shared_dispatch_stub_162,
+ (mapi_func) shared_dispatch_stub_163,
+ (mapi_func) shared_dispatch_stub_164,
+ (mapi_func) shared_dispatch_stub_165,
+ (mapi_func) shared_dispatch_stub_166,
+ (mapi_func) shared_dispatch_stub_167,
+ (mapi_func) shared_dispatch_stub_168,
+ (mapi_func) shared_dispatch_stub_169,
+ (mapi_func) shared_dispatch_stub_170,
+ (mapi_func) shared_dispatch_stub_171,
+ (mapi_func) shared_dispatch_stub_172,
+ (mapi_func) shared_dispatch_stub_173,
+ (mapi_func) shared_dispatch_stub_174,
+ (mapi_func) shared_dispatch_stub_175,
+ (mapi_func) shared_dispatch_stub_176,
+ (mapi_func) shared_dispatch_stub_177,
+ (mapi_func) shared_dispatch_stub_178,
+ (mapi_func) shared_dispatch_stub_179,
+ (mapi_func) shared_dispatch_stub_180,
+ (mapi_func) shared_dispatch_stub_181,
+ (mapi_func) shared_dispatch_stub_182,
+ (mapi_func) shared_dispatch_stub_183,
+ (mapi_func) shared_dispatch_stub_184,
+ (mapi_func) shared_dispatch_stub_185,
+ (mapi_func) shared_dispatch_stub_186,
+ (mapi_func) shared_dispatch_stub_187,
+ (mapi_func) shared_dispatch_stub_188,
+ (mapi_func) shared_dispatch_stub_189,
+ (mapi_func) shared_dispatch_stub_190,
+ (mapi_func) shared_dispatch_stub_191,
+ (mapi_func) shared_dispatch_stub_192,
+ (mapi_func) shared_dispatch_stub_193,
+ (mapi_func) shared_dispatch_stub_194,
+ (mapi_func) shared_dispatch_stub_195,
+ (mapi_func) shared_dispatch_stub_196,
+ (mapi_func) shared_dispatch_stub_197,
+ (mapi_func) shared_dispatch_stub_198,
+ (mapi_func) shared_dispatch_stub_199,
+ (mapi_func) shared_dispatch_stub_200,
+ (mapi_func) shared_dispatch_stub_201,
+ (mapi_func) shared_dispatch_stub_202,
+ (mapi_func) shared_dispatch_stub_203,
+ (mapi_func) shared_dispatch_stub_204,
+ (mapi_func) shared_dispatch_stub_205,
+ (mapi_func) shared_dispatch_stub_206,
+ (mapi_func) shared_dispatch_stub_207,
+ (mapi_func) shared_dispatch_stub_208,
+ (mapi_func) shared_dispatch_stub_209,
+ (mapi_func) shared_dispatch_stub_210,
+ (mapi_func) shared_dispatch_stub_211,
+ (mapi_func) shared_dispatch_stub_212,
+ (mapi_func) shared_dispatch_stub_213,
+ (mapi_func) shared_dispatch_stub_214,
+ (mapi_func) shared_dispatch_stub_215,
+ (mapi_func) shared_dispatch_stub_216,
+ (mapi_func) shared_dispatch_stub_217,
+ (mapi_func) shared_dispatch_stub_218,
+ (mapi_func) shared_dispatch_stub_219,
+ (mapi_func) shared_dispatch_stub_220,
+ (mapi_func) shared_dispatch_stub_221,
+ (mapi_func) shared_dispatch_stub_222,
+ (mapi_func) shared_dispatch_stub_223,
+ (mapi_func) shared_dispatch_stub_224,
+ (mapi_func) shared_dispatch_stub_225,
+ (mapi_func) shared_dispatch_stub_226,
+ (mapi_func) shared_dispatch_stub_227,
+ (mapi_func) shared_dispatch_stub_228,
+ (mapi_func) shared_dispatch_stub_229,
+ (mapi_func) shared_dispatch_stub_230,
+ (mapi_func) shared_dispatch_stub_231,
+ (mapi_func) shared_dispatch_stub_232,
+ (mapi_func) shared_dispatch_stub_233,
+ (mapi_func) shared_dispatch_stub_234,
+ (mapi_func) shared_dispatch_stub_235,
+ (mapi_func) shared_dispatch_stub_236,
+ (mapi_func) shared_dispatch_stub_237,
+ (mapi_func) shared_dispatch_stub_238,
+ (mapi_func) shared_dispatch_stub_239,
+ (mapi_func) shared_dispatch_stub_240,
+ (mapi_func) shared_dispatch_stub_241,
+ (mapi_func) shared_dispatch_stub_242,
+ (mapi_func) shared_dispatch_stub_243,
+ (mapi_func) shared_dispatch_stub_244,
+ (mapi_func) shared_dispatch_stub_245,
+ (mapi_func) shared_dispatch_stub_246,
+ (mapi_func) shared_dispatch_stub_247,
+ (mapi_func) shared_dispatch_stub_248,
+ (mapi_func) shared_dispatch_stub_249,
+ (mapi_func) shared_dispatch_stub_250,
+ (mapi_func) shared_dispatch_stub_251,
+ (mapi_func) shared_dispatch_stub_252,
+ (mapi_func) shared_dispatch_stub_253,
+ (mapi_func) shared_dispatch_stub_254,
+ (mapi_func) shared_dispatch_stub_255,
+ (mapi_func) shared_dispatch_stub_256,
+ (mapi_func) shared_dispatch_stub_257,
+ (mapi_func) shared_dispatch_stub_258,
+ (mapi_func) shared_dispatch_stub_259,
+ (mapi_func) shared_dispatch_stub_260,
+ (mapi_func) shared_dispatch_stub_261,
+ (mapi_func) shared_dispatch_stub_262,
+ (mapi_func) shared_dispatch_stub_263,
+ (mapi_func) shared_dispatch_stub_264,
+ (mapi_func) shared_dispatch_stub_265,
+ (mapi_func) shared_dispatch_stub_266,
+ (mapi_func) shared_dispatch_stub_267,
+ (mapi_func) shared_dispatch_stub_268,
+ (mapi_func) shared_dispatch_stub_269,
+ (mapi_func) shared_dispatch_stub_270,
+ (mapi_func) shared_dispatch_stub_271,
+ (mapi_func) shared_dispatch_stub_272,
+ (mapi_func) shared_dispatch_stub_273,
+ (mapi_func) shared_dispatch_stub_274,
+ (mapi_func) shared_dispatch_stub_275,
+ (mapi_func) shared_dispatch_stub_276,
+ (mapi_func) shared_dispatch_stub_277,
+ (mapi_func) shared_dispatch_stub_278,
+ (mapi_func) shared_dispatch_stub_279,
+ (mapi_func) shared_dispatch_stub_280,
+ (mapi_func) shared_dispatch_stub_281,
+ (mapi_func) shared_dispatch_stub_282,
+ (mapi_func) shared_dispatch_stub_283,
+ (mapi_func) shared_dispatch_stub_284,
+ (mapi_func) shared_dispatch_stub_285,
+ (mapi_func) shared_dispatch_stub_286,
+ (mapi_func) shared_dispatch_stub_287,
+ (mapi_func) shared_dispatch_stub_288,
+ (mapi_func) shared_dispatch_stub_289,
+ (mapi_func) shared_dispatch_stub_290,
+ (mapi_func) shared_dispatch_stub_291,
+ (mapi_func) shared_dispatch_stub_292,
+ (mapi_func) shared_dispatch_stub_293,
+ (mapi_func) shared_dispatch_stub_294,
+ (mapi_func) shared_dispatch_stub_295,
+ (mapi_func) shared_dispatch_stub_296,
+ (mapi_func) shared_dispatch_stub_297,
+ (mapi_func) shared_dispatch_stub_298,
+ (mapi_func) shared_dispatch_stub_299,
+ (mapi_func) shared_dispatch_stub_300,
+ (mapi_func) shared_dispatch_stub_301,
+ (mapi_func) shared_dispatch_stub_302,
+ (mapi_func) shared_dispatch_stub_303,
+ (mapi_func) shared_dispatch_stub_304,
+ (mapi_func) shared_dispatch_stub_305,
+ (mapi_func) shared_dispatch_stub_306,
+ (mapi_func) shared_dispatch_stub_307,
+ (mapi_func) shared_dispatch_stub_308,
+ (mapi_func) shared_dispatch_stub_309,
+ (mapi_func) shared_dispatch_stub_310,
+ (mapi_func) shared_dispatch_stub_311,
+ (mapi_func) shared_dispatch_stub_312,
+ (mapi_func) shared_dispatch_stub_313,
+ (mapi_func) shared_dispatch_stub_314,
+ (mapi_func) shared_dispatch_stub_315,
+ (mapi_func) shared_dispatch_stub_316,
+ (mapi_func) shared_dispatch_stub_317,
+ (mapi_func) shared_dispatch_stub_318,
+ (mapi_func) shared_dispatch_stub_319,
+ (mapi_func) shared_dispatch_stub_320,
+ (mapi_func) shared_dispatch_stub_321,
+ (mapi_func) shared_dispatch_stub_322,
+ (mapi_func) shared_dispatch_stub_323,
+ (mapi_func) shared_dispatch_stub_324,
+ (mapi_func) shared_dispatch_stub_325,
+ (mapi_func) shared_dispatch_stub_326,
+ (mapi_func) shared_dispatch_stub_327,
+ (mapi_func) shared_dispatch_stub_328,
+ (mapi_func) shared_dispatch_stub_329,
+ (mapi_func) shared_dispatch_stub_330,
+ (mapi_func) shared_dispatch_stub_331,
+ (mapi_func) shared_dispatch_stub_332,
+ (mapi_func) shared_dispatch_stub_333,
+ (mapi_func) shared_dispatch_stub_334,
+ (mapi_func) shared_dispatch_stub_335,
+ (mapi_func) shared_dispatch_stub_336,
+ (mapi_func) shared_dispatch_stub_337,
+ (mapi_func) shared_dispatch_stub_338,
+ (mapi_func) shared_dispatch_stub_339,
+ (mapi_func) shared_dispatch_stub_340,
+ (mapi_func) shared_dispatch_stub_341,
+ (mapi_func) shared_dispatch_stub_342,
+ (mapi_func) shared_dispatch_stub_343,
+ (mapi_func) shared_dispatch_stub_344,
+ (mapi_func) shared_dispatch_stub_345,
+ (mapi_func) shared_dispatch_stub_346,
+ (mapi_func) shared_dispatch_stub_347,
+ (mapi_func) shared_dispatch_stub_348,
+ (mapi_func) shared_dispatch_stub_349,
+ (mapi_func) shared_dispatch_stub_350,
+ (mapi_func) shared_dispatch_stub_351,
+ (mapi_func) shared_dispatch_stub_352,
+ (mapi_func) shared_dispatch_stub_353,
+ (mapi_func) shared_dispatch_stub_354,
+ (mapi_func) shared_dispatch_stub_355,
+ (mapi_func) shared_dispatch_stub_356,
+ (mapi_func) shared_dispatch_stub_357,
+ (mapi_func) shared_dispatch_stub_358,
+ (mapi_func) shared_dispatch_stub_359,
+ (mapi_func) shared_dispatch_stub_360,
+ (mapi_func) shared_dispatch_stub_361,
+ (mapi_func) shared_dispatch_stub_362,
+ (mapi_func) shared_dispatch_stub_363,
+ (mapi_func) shared_dispatch_stub_364,
+ (mapi_func) shared_dispatch_stub_365,
+ (mapi_func) shared_dispatch_stub_366,
+ (mapi_func) shared_dispatch_stub_367,
+ (mapi_func) shared_dispatch_stub_368,
+ (mapi_func) shared_dispatch_stub_369,
+ (mapi_func) shared_dispatch_stub_370,
+ (mapi_func) shared_dispatch_stub_371,
+ (mapi_func) shared_dispatch_stub_372,
+ (mapi_func) shared_dispatch_stub_373,
+ (mapi_func) shared_dispatch_stub_374,
+ (mapi_func) shared_dispatch_stub_375,
+ (mapi_func) shared_dispatch_stub_376,
+ (mapi_func) shared_dispatch_stub_377,
+ (mapi_func) shared_dispatch_stub_378,
+ (mapi_func) shared_dispatch_stub_379,
+ (mapi_func) shared_dispatch_stub_380,
+ (mapi_func) shared_dispatch_stub_381,
+ (mapi_func) shared_dispatch_stub_382,
+ (mapi_func) shared_dispatch_stub_383,
+ (mapi_func) shared_dispatch_stub_384,
+ (mapi_func) shared_dispatch_stub_385,
+ (mapi_func) shared_dispatch_stub_386,
+ (mapi_func) shared_dispatch_stub_387,
+ (mapi_func) shared_dispatch_stub_388,
+ (mapi_func) shared_dispatch_stub_389,
+ (mapi_func) shared_dispatch_stub_390,
+ (mapi_func) shared_dispatch_stub_391,
+ (mapi_func) shared_dispatch_stub_392,
+ (mapi_func) shared_dispatch_stub_393,
+ (mapi_func) shared_dispatch_stub_394,
+ (mapi_func) shared_dispatch_stub_395,
+ (mapi_func) shared_dispatch_stub_396,
+ (mapi_func) shared_dispatch_stub_397,
+ (mapi_func) shared_dispatch_stub_398,
+ (mapi_func) shared_dispatch_stub_399,
+ (mapi_func) shared_dispatch_stub_400,
+ (mapi_func) shared_dispatch_stub_401,
+ (mapi_func) shared_dispatch_stub_402,
+ (mapi_func) shared_dispatch_stub_403,
+ (mapi_func) shared_dispatch_stub_404,
+ (mapi_func) shared_dispatch_stub_405,
+ (mapi_func) shared_dispatch_stub_406,
+ (mapi_func) shared_dispatch_stub_407,
+ (mapi_func) shared_dispatch_stub_408,
+ (mapi_func) shared_dispatch_stub_409,
+ (mapi_func) shared_dispatch_stub_410,
+ (mapi_func) shared_dispatch_stub_411,
+ (mapi_func) shared_dispatch_stub_412,
+ (mapi_func) shared_dispatch_stub_413,
+ (mapi_func) shared_dispatch_stub_414,
+ (mapi_func) shared_dispatch_stub_415,
+ (mapi_func) shared_dispatch_stub_416,
+ (mapi_func) shared_dispatch_stub_417,
+ (mapi_func) shared_dispatch_stub_418,
+ (mapi_func) shared_dispatch_stub_419,
+ (mapi_func) shared_dispatch_stub_420,
+ (mapi_func) shared_dispatch_stub_421,
+ (mapi_func) shared_dispatch_stub_422,
+ (mapi_func) shared_dispatch_stub_423,
+ (mapi_func) shared_dispatch_stub_424,
+ (mapi_func) shared_dispatch_stub_425,
+ (mapi_func) shared_dispatch_stub_426,
+ (mapi_func) shared_dispatch_stub_427,
+ (mapi_func) shared_dispatch_stub_428,
+ (mapi_func) shared_dispatch_stub_429,
+ (mapi_func) shared_dispatch_stub_430,
+ (mapi_func) shared_dispatch_stub_431,
+ (mapi_func) shared_dispatch_stub_432,
+ (mapi_func) shared_dispatch_stub_433,
+ (mapi_func) shared_dispatch_stub_434,
+ (mapi_func) shared_dispatch_stub_435,
+ (mapi_func) shared_dispatch_stub_436,
+ (mapi_func) shared_dispatch_stub_437,
+ (mapi_func) shared_dispatch_stub_438,
+ (mapi_func) shared_dispatch_stub_439,
+ (mapi_func) shared_dispatch_stub_440,
+ (mapi_func) shared_dispatch_stub_441,
+ (mapi_func) shared_dispatch_stub_442,
+ (mapi_func) shared_dispatch_stub_443,
+ (mapi_func) shared_dispatch_stub_444,
+ (mapi_func) shared_dispatch_stub_445,
+ (mapi_func) shared_dispatch_stub_446,
+ (mapi_func) shared_dispatch_stub_447,
+ (mapi_func) shared_dispatch_stub_448,
+ (mapi_func) shared_dispatch_stub_449,
+ (mapi_func) shared_dispatch_stub_450,
+ (mapi_func) shared_dispatch_stub_451,
+ (mapi_func) shared_dispatch_stub_452,
+ (mapi_func) shared_dispatch_stub_453,
+ (mapi_func) shared_dispatch_stub_454,
+ (mapi_func) shared_dispatch_stub_455,
+ (mapi_func) shared_dispatch_stub_456,
+ (mapi_func) shared_dispatch_stub_457,
+ (mapi_func) shared_dispatch_stub_458,
+ (mapi_func) shared_dispatch_stub_459,
+ (mapi_func) shared_dispatch_stub_460,
+ (mapi_func) shared_dispatch_stub_461,
+ (mapi_func) shared_dispatch_stub_462,
+ (mapi_func) shared_dispatch_stub_463,
+ (mapi_func) shared_dispatch_stub_464,
+ (mapi_func) shared_dispatch_stub_465,
+ (mapi_func) shared_dispatch_stub_466,
+ (mapi_func) shared_dispatch_stub_467,
+ (mapi_func) shared_dispatch_stub_468,
+ (mapi_func) shared_dispatch_stub_469,
+ (mapi_func) shared_dispatch_stub_470,
+ (mapi_func) shared_dispatch_stub_471,
+ (mapi_func) shared_dispatch_stub_472,
+ (mapi_func) shared_dispatch_stub_473,
+ (mapi_func) shared_dispatch_stub_474,
+ (mapi_func) shared_dispatch_stub_475,
+ (mapi_func) shared_dispatch_stub_476,
+ (mapi_func) shared_dispatch_stub_477,
+ (mapi_func) shared_dispatch_stub_478,
+ (mapi_func) shared_dispatch_stub_479,
+ (mapi_func) shared_dispatch_stub_480,
+ (mapi_func) shared_dispatch_stub_481,
+ (mapi_func) shared_dispatch_stub_482,
+ (mapi_func) shared_dispatch_stub_483,
+ (mapi_func) shared_dispatch_stub_484,
+ (mapi_func) shared_dispatch_stub_485,
+ (mapi_func) shared_dispatch_stub_486,
+ (mapi_func) shared_dispatch_stub_487,
+ (mapi_func) shared_dispatch_stub_488,
+ (mapi_func) shared_dispatch_stub_489,
+ (mapi_func) shared_dispatch_stub_490,
+ (mapi_func) shared_dispatch_stub_491,
+ (mapi_func) shared_dispatch_stub_492,
+ (mapi_func) shared_dispatch_stub_493,
+ (mapi_func) shared_dispatch_stub_494,
+ (mapi_func) shared_dispatch_stub_495,
+ (mapi_func) shared_dispatch_stub_496,
+ (mapi_func) shared_dispatch_stub_497,
+ (mapi_func) shared_dispatch_stub_498,
+ (mapi_func) shared_dispatch_stub_499,
+ (mapi_func) shared_dispatch_stub_500,
+ (mapi_func) shared_dispatch_stub_501,
+ (mapi_func) shared_dispatch_stub_502,
+ (mapi_func) shared_dispatch_stub_503,
+ (mapi_func) shared_dispatch_stub_504,
+ (mapi_func) shared_dispatch_stub_505,
+ (mapi_func) shared_dispatch_stub_506,
+ (mapi_func) shared_dispatch_stub_507,
+ (mapi_func) shared_dispatch_stub_508,
+ (mapi_func) shared_dispatch_stub_509,
+ (mapi_func) shared_dispatch_stub_510,
+ (mapi_func) shared_dispatch_stub_511,
+ (mapi_func) shared_dispatch_stub_512,
+ (mapi_func) shared_dispatch_stub_513,
+ (mapi_func) shared_dispatch_stub_514,
+ (mapi_func) shared_dispatch_stub_515,
+ (mapi_func) shared_dispatch_stub_516,
+ (mapi_func) shared_dispatch_stub_517,
+ (mapi_func) shared_dispatch_stub_518,
+ (mapi_func) shared_dispatch_stub_519,
+ (mapi_func) shared_dispatch_stub_520,
+ (mapi_func) shared_dispatch_stub_521,
+ (mapi_func) shared_dispatch_stub_522,
+ (mapi_func) shared_dispatch_stub_523,
+ (mapi_func) shared_dispatch_stub_524,
+ (mapi_func) shared_dispatch_stub_525,
+ (mapi_func) shared_dispatch_stub_526,
+ (mapi_func) shared_dispatch_stub_527,
+ (mapi_func) shared_dispatch_stub_528,
+ (mapi_func) shared_dispatch_stub_529,
+ (mapi_func) shared_dispatch_stub_530,
+ (mapi_func) shared_dispatch_stub_531,
+ (mapi_func) shared_dispatch_stub_532,
+ (mapi_func) shared_dispatch_stub_533,
+ (mapi_func) shared_dispatch_stub_534,
+ (mapi_func) shared_dispatch_stub_535,
+ (mapi_func) shared_dispatch_stub_536,
+ (mapi_func) shared_dispatch_stub_537,
+ (mapi_func) shared_dispatch_stub_538,
+ (mapi_func) shared_dispatch_stub_539,
+ (mapi_func) shared_dispatch_stub_540,
+ (mapi_func) shared_dispatch_stub_541,
+ (mapi_func) shared_dispatch_stub_542,
+ (mapi_func) shared_dispatch_stub_543,
+ (mapi_func) shared_dispatch_stub_544,
+ (mapi_func) shared_dispatch_stub_545,
+ (mapi_func) shared_dispatch_stub_546,
+ (mapi_func) shared_dispatch_stub_547,
+ (mapi_func) shared_dispatch_stub_548,
+ (mapi_func) shared_dispatch_stub_549,
+ (mapi_func) shared_dispatch_stub_550,
+ (mapi_func) shared_dispatch_stub_551,
+ (mapi_func) shared_dispatch_stub_552,
+ (mapi_func) shared_dispatch_stub_553,
+ (mapi_func) shared_dispatch_stub_554,
+ (mapi_func) shared_dispatch_stub_555,
+ (mapi_func) shared_dispatch_stub_556,
+ (mapi_func) shared_dispatch_stub_557,
+ (mapi_func) shared_dispatch_stub_558,
+ (mapi_func) shared_dispatch_stub_559,
+ (mapi_func) shared_dispatch_stub_560,
+ (mapi_func) shared_dispatch_stub_561,
+ (mapi_func) shared_dispatch_stub_562,
+ (mapi_func) shared_dispatch_stub_563,
+ (mapi_func) shared_dispatch_stub_564,
+ (mapi_func) shared_dispatch_stub_565,
+ (mapi_func) shared_dispatch_stub_566,
+ (mapi_func) shared_dispatch_stub_567,
+ (mapi_func) shared_dispatch_stub_568,
+ (mapi_func) shared_dispatch_stub_569,
+ (mapi_func) shared_dispatch_stub_570,
+ (mapi_func) shared_dispatch_stub_571,
+ (mapi_func) shared_dispatch_stub_572,
+ (mapi_func) shared_dispatch_stub_573,
+ (mapi_func) shared_dispatch_stub_574,
+ (mapi_func) shared_dispatch_stub_575,
+ (mapi_func) shared_dispatch_stub_576,
+ (mapi_func) shared_dispatch_stub_577,
+ (mapi_func) shared_dispatch_stub_578,
+ (mapi_func) shared_dispatch_stub_579,
+ (mapi_func) shared_dispatch_stub_580,
+ (mapi_func) shared_dispatch_stub_581,
+ (mapi_func) shared_dispatch_stub_582,
+ (mapi_func) shared_dispatch_stub_583,
+ (mapi_func) shared_dispatch_stub_584,
+ (mapi_func) shared_dispatch_stub_585,
+ (mapi_func) shared_dispatch_stub_586,
+ (mapi_func) shared_dispatch_stub_587,
+ (mapi_func) shared_dispatch_stub_588,
+ (mapi_func) shared_dispatch_stub_589,
+ (mapi_func) shared_dispatch_stub_590,
+ (mapi_func) shared_dispatch_stub_591,
+ (mapi_func) shared_dispatch_stub_592,
+ (mapi_func) shared_dispatch_stub_593,
+ (mapi_func) shared_dispatch_stub_594,
+ (mapi_func) shared_dispatch_stub_595,
+ (mapi_func) shared_dispatch_stub_596,
+ (mapi_func) shared_dispatch_stub_597,
+ (mapi_func) shared_dispatch_stub_598,
+ (mapi_func) shared_dispatch_stub_599,
+ (mapi_func) shared_dispatch_stub_600,
+ (mapi_func) shared_dispatch_stub_601,
+ (mapi_func) shared_dispatch_stub_602,
+ (mapi_func) shared_dispatch_stub_603,
+ (mapi_func) shared_dispatch_stub_604,
+ (mapi_func) shared_dispatch_stub_605,
+ (mapi_func) shared_dispatch_stub_606,
+ (mapi_func) shared_dispatch_stub_607,
+ (mapi_func) shared_dispatch_stub_608,
+ (mapi_func) shared_dispatch_stub_609,
+ (mapi_func) shared_dispatch_stub_610,
+ (mapi_func) shared_dispatch_stub_611,
+ (mapi_func) shared_dispatch_stub_612,
+ (mapi_func) shared_dispatch_stub_613,
+ (mapi_func) shared_dispatch_stub_614,
+ (mapi_func) shared_dispatch_stub_615,
+ (mapi_func) shared_dispatch_stub_616,
+ (mapi_func) shared_dispatch_stub_617,
+ (mapi_func) shared_dispatch_stub_618,
+ (mapi_func) shared_dispatch_stub_619,
+ (mapi_func) shared_dispatch_stub_620,
+ (mapi_func) shared_dispatch_stub_621,
+ (mapi_func) shared_dispatch_stub_622,
+ (mapi_func) shared_dispatch_stub_623,
+ (mapi_func) shared_dispatch_stub_624,
+ (mapi_func) shared_dispatch_stub_625,
+ (mapi_func) shared_dispatch_stub_626,
+ (mapi_func) shared_dispatch_stub_627,
+ (mapi_func) shared_dispatch_stub_628,
+ (mapi_func) shared_dispatch_stub_629,
+ (mapi_func) shared_dispatch_stub_630,
+ (mapi_func) shared_dispatch_stub_631,
+ (mapi_func) shared_dispatch_stub_632,
+ (mapi_func) shared_dispatch_stub_633,
+ (mapi_func) shared_dispatch_stub_634,
+ (mapi_func) shared_dispatch_stub_635,
+ (mapi_func) shared_dispatch_stub_636,
+ (mapi_func) shared_dispatch_stub_637,
+ (mapi_func) shared_dispatch_stub_638,
+ (mapi_func) shared_dispatch_stub_639,
+ (mapi_func) shared_dispatch_stub_640,
+ (mapi_func) shared_dispatch_stub_641,
+ (mapi_func) shared_dispatch_stub_642,
+ (mapi_func) shared_dispatch_stub_643,
+ (mapi_func) shared_dispatch_stub_644,
+ (mapi_func) shared_dispatch_stub_645,
+ (mapi_func) shared_dispatch_stub_646,
+ (mapi_func) shared_dispatch_stub_647,
+ (mapi_func) shared_dispatch_stub_648,
+ (mapi_func) shared_dispatch_stub_649,
+ (mapi_func) shared_dispatch_stub_650,
+ (mapi_func) shared_dispatch_stub_651,
+ (mapi_func) shared_dispatch_stub_652,
+ (mapi_func) shared_dispatch_stub_653,
+ (mapi_func) shared_dispatch_stub_654,
+ (mapi_func) shared_dispatch_stub_655,
+ (mapi_func) shared_dispatch_stub_656,
+ (mapi_func) shared_dispatch_stub_657,
+ (mapi_func) shared_dispatch_stub_658,
+ (mapi_func) shared_dispatch_stub_659,
+ (mapi_func) shared_dispatch_stub_660,
+ (mapi_func) shared_dispatch_stub_661,
+ (mapi_func) shared_dispatch_stub_662,
+ (mapi_func) shared_dispatch_stub_663,
+ (mapi_func) shared_dispatch_stub_664,
+ (mapi_func) shared_dispatch_stub_665,
+ (mapi_func) shared_dispatch_stub_666,
+ (mapi_func) shared_dispatch_stub_667,
+ (mapi_func) shared_dispatch_stub_668,
+ (mapi_func) shared_dispatch_stub_669,
+ (mapi_func) shared_dispatch_stub_670,
+ (mapi_func) shared_dispatch_stub_671,
+ (mapi_func) shared_dispatch_stub_672,
+ (mapi_func) shared_dispatch_stub_673,
+ (mapi_func) shared_dispatch_stub_674,
+ (mapi_func) shared_dispatch_stub_675,
+ (mapi_func) shared_dispatch_stub_676,
+ (mapi_func) shared_dispatch_stub_677,
+ (mapi_func) shared_dispatch_stub_678,
+ (mapi_func) shared_dispatch_stub_679,
+ (mapi_func) shared_dispatch_stub_680,
+ (mapi_func) shared_dispatch_stub_681,
+ (mapi_func) shared_dispatch_stub_682,
+ (mapi_func) shared_dispatch_stub_683,
+ (mapi_func) shared_dispatch_stub_684,
+ (mapi_func) shared_dispatch_stub_685,
+ (mapi_func) shared_dispatch_stub_686,
+ (mapi_func) shared_dispatch_stub_687,
+ (mapi_func) shared_dispatch_stub_688,
+ (mapi_func) shared_dispatch_stub_689,
+ (mapi_func) shared_dispatch_stub_690,
+ (mapi_func) shared_dispatch_stub_691,
+ (mapi_func) shared_dispatch_stub_692,
+ (mapi_func) shared_dispatch_stub_693,
+ (mapi_func) shared_dispatch_stub_694,
+ (mapi_func) shared_dispatch_stub_695,
+ (mapi_func) shared_dispatch_stub_696,
+ (mapi_func) shared_dispatch_stub_697,
+ (mapi_func) shared_dispatch_stub_698,
+ (mapi_func) shared_dispatch_stub_699,
+ (mapi_func) shared_dispatch_stub_700,
+ (mapi_func) shared_dispatch_stub_701,
+ (mapi_func) shared_dispatch_stub_702,
+ (mapi_func) shared_dispatch_stub_703,
+ (mapi_func) shared_dispatch_stub_704,
+ (mapi_func) shared_dispatch_stub_705,
+ (mapi_func) shared_dispatch_stub_706,
+ (mapi_func) shared_dispatch_stub_707,
+ (mapi_func) shared_dispatch_stub_708,
+ (mapi_func) shared_dispatch_stub_709,
+ (mapi_func) shared_dispatch_stub_710,
+ (mapi_func) shared_dispatch_stub_711,
+ (mapi_func) shared_dispatch_stub_712,
+ (mapi_func) shared_dispatch_stub_713,
+ (mapi_func) shared_dispatch_stub_714,
+ (mapi_func) shared_dispatch_stub_715,
+ (mapi_func) shared_dispatch_stub_716,
+ (mapi_func) shared_dispatch_stub_717,
+ (mapi_func) shared_dispatch_stub_718,
+ (mapi_func) shared_dispatch_stub_719,
+ (mapi_func) shared_dispatch_stub_720,
+ (mapi_func) shared_dispatch_stub_721,
+ (mapi_func) shared_dispatch_stub_722,
+ (mapi_func) shared_dispatch_stub_723,
+ (mapi_func) shared_dispatch_stub_724,
+ (mapi_func) shared_dispatch_stub_725,
+ (mapi_func) shared_dispatch_stub_726,
+ (mapi_func) shared_dispatch_stub_727,
+ (mapi_func) shared_dispatch_stub_728,
+ (mapi_func) shared_dispatch_stub_729,
+ (mapi_func) shared_dispatch_stub_730,
+ (mapi_func) shared_dispatch_stub_731,
+ (mapi_func) shared_dispatch_stub_732,
+ (mapi_func) shared_dispatch_stub_733,
+ (mapi_func) shared_dispatch_stub_734,
+ (mapi_func) shared_dispatch_stub_735,
+ (mapi_func) shared_dispatch_stub_736,
+ (mapi_func) shared_dispatch_stub_737,
+ (mapi_func) shared_dispatch_stub_738,
+ (mapi_func) shared_dispatch_stub_739,
+ (mapi_func) shared_dispatch_stub_740,
+ (mapi_func) shared_dispatch_stub_741,
+ (mapi_func) shared_dispatch_stub_742,
+ (mapi_func) shared_dispatch_stub_743,
+ (mapi_func) shared_dispatch_stub_744,
+ (mapi_func) shared_dispatch_stub_745,
+ (mapi_func) shared_dispatch_stub_746,
+ (mapi_func) shared_dispatch_stub_747,
+ (mapi_func) shared_dispatch_stub_748,
+ (mapi_func) shared_dispatch_stub_749,
+ (mapi_func) shared_dispatch_stub_750,
+ (mapi_func) shared_dispatch_stub_751,
+ (mapi_func) shared_dispatch_stub_752,
+ (mapi_func) shared_dispatch_stub_753,
+ (mapi_func) shared_dispatch_stub_754,
+ (mapi_func) shared_dispatch_stub_755,
+ (mapi_func) shared_dispatch_stub_756,
+ (mapi_func) shared_dispatch_stub_757,
+ (mapi_func) shared_dispatch_stub_758,
+ (mapi_func) shared_dispatch_stub_759,
+ (mapi_func) shared_dispatch_stub_760,
+ (mapi_func) shared_dispatch_stub_761,
+ (mapi_func) shared_dispatch_stub_762,
+ (mapi_func) shared_dispatch_stub_763,
+ (mapi_func) shared_dispatch_stub_764,
+ (mapi_func) shared_dispatch_stub_765,
+ (mapi_func) shared_dispatch_stub_766,
+ (mapi_func) shared_dispatch_stub_767,
+ (mapi_func) shared_dispatch_stub_768,
+ (mapi_func) shared_dispatch_stub_769,
+ (mapi_func) shared_dispatch_stub_770,
+ (mapi_func) shared_dispatch_stub_771,
+ (mapi_func) shared_dispatch_stub_772,
+ (mapi_func) shared_dispatch_stub_773,
+ (mapi_func) shared_dispatch_stub_774,
+ (mapi_func) shared_dispatch_stub_775,
+ (mapi_func) shared_dispatch_stub_776,
+ (mapi_func) shared_dispatch_stub_777,
+ (mapi_func) shared_dispatch_stub_778,
+ (mapi_func) shared_dispatch_stub_779,
+ (mapi_func) shared_dispatch_stub_780,
+ (mapi_func) shared_dispatch_stub_781,
+ (mapi_func) shared_dispatch_stub_782,
+ (mapi_func) shared_dispatch_stub_783,
+ (mapi_func) shared_dispatch_stub_784,
+ (mapi_func) shared_dispatch_stub_785,
+ (mapi_func) shared_dispatch_stub_786,
+ (mapi_func) shared_dispatch_stub_787,
+ (mapi_func) shared_dispatch_stub_788,
+ (mapi_func) shared_dispatch_stub_789,
+ (mapi_func) shared_dispatch_stub_790,
+ (mapi_func) shared_dispatch_stub_791,
+ (mapi_func) shared_dispatch_stub_792,
+ (mapi_func) shared_dispatch_stub_793,
+ (mapi_func) shared_dispatch_stub_794,
+ (mapi_func) shared_dispatch_stub_795,
+ (mapi_func) shared_dispatch_stub_796,
+ (mapi_func) shared_dispatch_stub_797,
+ (mapi_func) shared_dispatch_stub_798,
+ (mapi_func) shared_dispatch_stub_799,
+ (mapi_func) shared_dispatch_stub_800,
+ (mapi_func) shared_dispatch_stub_801,
+ (mapi_func) shared_dispatch_stub_802,
+ (mapi_func) shared_dispatch_stub_803,
+ (mapi_func) shared_dispatch_stub_804,
+ (mapi_func) shared_dispatch_stub_805,
+ (mapi_func) shared_dispatch_stub_806,
+ (mapi_func) shared_dispatch_stub_807,
+ (mapi_func) shared_dispatch_stub_808,
+ (mapi_func) shared_dispatch_stub_809,
+ (mapi_func) shared_dispatch_stub_810,
+ (mapi_func) shared_dispatch_stub_811,
+ (mapi_func) shared_dispatch_stub_812,
+ (mapi_func) shared_dispatch_stub_813,
+ (mapi_func) shared_dispatch_stub_814,
+ (mapi_func) shared_dispatch_stub_815,
+ (mapi_func) shared_dispatch_stub_816,
+ (mapi_func) shared_dispatch_stub_817,
+ (mapi_func) shared_dispatch_stub_818,
+ (mapi_func) shared_dispatch_stub_819,
+ (mapi_func) shared_dispatch_stub_820,
+ (mapi_func) shared_dispatch_stub_821,
+ (mapi_func) shared_dispatch_stub_822,
+ (mapi_func) shared_dispatch_stub_823,
+ (mapi_func) shared_dispatch_stub_824,
+ (mapi_func) shared_dispatch_stub_825,
+ (mapi_func) shared_dispatch_stub_826,
+ (mapi_func) shared_dispatch_stub_827,
+ (mapi_func) shared_dispatch_stub_828,
+ (mapi_func) shared_dispatch_stub_829,
+ (mapi_func) shared_dispatch_stub_830,
+ (mapi_func) shared_dispatch_stub_831,
+ (mapi_func) shared_dispatch_stub_832,
+ (mapi_func) shared_dispatch_stub_833,
+ (mapi_func) shared_dispatch_stub_834,
+ (mapi_func) shared_dispatch_stub_835,
+ (mapi_func) shared_dispatch_stub_836,
+ (mapi_func) shared_dispatch_stub_837,
+ (mapi_func) shared_dispatch_stub_838,
+ (mapi_func) shared_dispatch_stub_839,
+ (mapi_func) shared_dispatch_stub_840,
+ (mapi_func) shared_dispatch_stub_841,
+ (mapi_func) shared_dispatch_stub_842,
+ (mapi_func) shared_dispatch_stub_843,
+ (mapi_func) shared_dispatch_stub_844,
+ (mapi_func) shared_dispatch_stub_845,
+ (mapi_func) shared_dispatch_stub_846,
+ (mapi_func) shared_dispatch_stub_847,
+ (mapi_func) shared_dispatch_stub_848,
+ (mapi_func) shared_dispatch_stub_849,
+ (mapi_func) shared_dispatch_stub_850,
+ (mapi_func) shared_dispatch_stub_851,
+ (mapi_func) shared_dispatch_stub_852,
+ (mapi_func) shared_dispatch_stub_853,
+ (mapi_func) shared_dispatch_stub_854,
+ (mapi_func) shared_dispatch_stub_855,
+ (mapi_func) shared_dispatch_stub_856,
+ (mapi_func) shared_dispatch_stub_857,
+ (mapi_func) shared_dispatch_stub_858,
+ (mapi_func) shared_dispatch_stub_859,
+ (mapi_func) shared_dispatch_stub_860,
+ (mapi_func) shared_dispatch_stub_861,
+ (mapi_func) shared_dispatch_stub_862,
+ (mapi_func) shared_dispatch_stub_863,
+ (mapi_func) shared_dispatch_stub_864,
+ (mapi_func) shared_dispatch_stub_865,
+ (mapi_func) shared_dispatch_stub_866,
+ (mapi_func) shared_dispatch_stub_867,
+ (mapi_func) shared_dispatch_stub_868,
+ (mapi_func) shared_dispatch_stub_869,
+ (mapi_func) shared_dispatch_stub_870,
+ (mapi_func) shared_dispatch_stub_871,
+ (mapi_func) shared_dispatch_stub_872,
+ (mapi_func) shared_dispatch_stub_873,
+ (mapi_func) shared_dispatch_stub_874,
+ (mapi_func) shared_dispatch_stub_875,
+ (mapi_func) shared_dispatch_stub_876,
+ (mapi_func) shared_dispatch_stub_877,
+ (mapi_func) shared_dispatch_stub_878,
+ (mapi_func) shared_dispatch_stub_879,
+ (mapi_func) shared_dispatch_stub_880,
+ (mapi_func) shared_dispatch_stub_881,
+ (mapi_func) shared_dispatch_stub_882,
+ (mapi_func) shared_dispatch_stub_883,
+ (mapi_func) shared_dispatch_stub_884,
+ (mapi_func) shared_dispatch_stub_885,
+ (mapi_func) shared_dispatch_stub_886,
+ (mapi_func) shared_dispatch_stub_887,
+ (mapi_func) shared_dispatch_stub_888,
+ (mapi_func) shared_dispatch_stub_889,
+ (mapi_func) shared_dispatch_stub_890,
+ (mapi_func) shared_dispatch_stub_891,
+ (mapi_func) shared_dispatch_stub_892,
+ (mapi_func) shared_dispatch_stub_893,
+ (mapi_func) shared_dispatch_stub_894,
+ (mapi_func) shared_dispatch_stub_895,
+ (mapi_func) shared_dispatch_stub_896,
+ (mapi_func) shared_dispatch_stub_897,
+ (mapi_func) shared_dispatch_stub_898,
+ (mapi_func) shared_dispatch_stub_899,
+ (mapi_func) shared_dispatch_stub_900,
+ (mapi_func) shared_dispatch_stub_901,
+ (mapi_func) shared_dispatch_stub_902,
+ (mapi_func) shared_dispatch_stub_903,
+ (mapi_func) shared_dispatch_stub_904,
+ (mapi_func) shared_dispatch_stub_905,
+ (mapi_func) shared_dispatch_stub_906,
+ (mapi_func) shared_dispatch_stub_907,
+ (mapi_func) shared_dispatch_stub_908,
+ (mapi_func) shared_dispatch_stub_909,
+ (mapi_func) shared_dispatch_stub_910,
+ (mapi_func) shared_dispatch_stub_911,
+ (mapi_func) shared_dispatch_stub_912,
+ (mapi_func) shared_dispatch_stub_913,
+ (mapi_func) shared_dispatch_stub_914,
+ (mapi_func) shared_dispatch_stub_915,
+ (mapi_func) shared_dispatch_stub_916,
+ (mapi_func) shared_dispatch_stub_917,
+ (mapi_func) shared_dispatch_stub_918,
+ (mapi_func) shared_dispatch_stub_919,
+ (mapi_func) shared_dispatch_stub_920,
+ (mapi_func) shared_dispatch_stub_921,
+ (mapi_func) shared_dispatch_stub_922,
+ (mapi_func) shared_dispatch_stub_923,
+ (mapi_func) shared_dispatch_stub_924,
+ (mapi_func) shared_dispatch_stub_925,
+ (mapi_func) shared_dispatch_stub_926,
+ (mapi_func) shared_dispatch_stub_927,
+ (mapi_func) shared_dispatch_stub_928,
+ (mapi_func) shared_dispatch_stub_929,
+ (mapi_func) shared_dispatch_stub_930,
+ (mapi_func) shared_dispatch_stub_931,
+ (mapi_func) shared_dispatch_stub_932,
+ (mapi_func) shared_dispatch_stub_933,
+ (mapi_func) shared_dispatch_stub_934,
+ (mapi_func) shared_dispatch_stub_935,
+ (mapi_func) shared_dispatch_stub_936,
+ (mapi_func) shared_dispatch_stub_937,
+ (mapi_func) shared_dispatch_stub_938,
+ (mapi_func) shared_dispatch_stub_939,
+ (mapi_func) shared_dispatch_stub_940,
+ (mapi_func) shared_dispatch_stub_941,
+ (mapi_func) shared_dispatch_stub_942,
+ (mapi_func) shared_dispatch_stub_943,
+ (mapi_func) shared_dispatch_stub_944,
+ (mapi_func) shared_dispatch_stub_945,
+ (mapi_func) shared_dispatch_stub_946,
+ (mapi_func) shared_dispatch_stub_947,
+ (mapi_func) shared_dispatch_stub_948,
+ (mapi_func) shared_dispatch_stub_949,
+ (mapi_func) shared_dispatch_stub_950
+};
+#undef MAPI_TMP_PUBLIC_ENTRIES
+#endif /* MAPI_TMP_PUBLIC_ENTRIES */
+
+#ifdef MAPI_TMP_STUB_ASM_GCC
+__asm__(
+".hidden ""shared_dispatch_stub_0""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_0")"\n"
+"\t"STUB_ASM_CODE("0")"\n"
+
+".hidden ""shared_dispatch_stub_1""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_1")"\n"
+"\t"STUB_ASM_CODE("1")"\n"
+
+".hidden ""shared_dispatch_stub_2""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_2")"\n"
+"\t"STUB_ASM_CODE("2")"\n"
+
+".hidden ""shared_dispatch_stub_3""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_3")"\n"
+"\t"STUB_ASM_CODE("3")"\n"
+
+".hidden ""shared_dispatch_stub_4""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_4")"\n"
+"\t"STUB_ASM_CODE("4")"\n"
+
+".hidden ""shared_dispatch_stub_5""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_5")"\n"
+"\t"STUB_ASM_CODE("5")"\n"
+
+".hidden ""shared_dispatch_stub_6""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_6")"\n"
+"\t"STUB_ASM_CODE("6")"\n"
+
+".hidden ""shared_dispatch_stub_7""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_7")"\n"
+"\t"STUB_ASM_CODE("7")"\n"
+
+".hidden ""shared_dispatch_stub_8""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_8")"\n"
+"\t"STUB_ASM_CODE("8")"\n"
+
+".hidden ""shared_dispatch_stub_9""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_9")"\n"
+"\t"STUB_ASM_CODE("9")"\n"
+
+".hidden ""shared_dispatch_stub_10""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_10")"\n"
+"\t"STUB_ASM_CODE("10")"\n"
+
+".hidden ""shared_dispatch_stub_11""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_11")"\n"
+"\t"STUB_ASM_CODE("11")"\n"
+
+".hidden ""shared_dispatch_stub_12""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_12")"\n"
+"\t"STUB_ASM_CODE("12")"\n"
+
+".hidden ""shared_dispatch_stub_13""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_13")"\n"
+"\t"STUB_ASM_CODE("13")"\n"
+
+".hidden ""shared_dispatch_stub_14""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_14")"\n"
+"\t"STUB_ASM_CODE("14")"\n"
+
+".hidden ""shared_dispatch_stub_15""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_15")"\n"
+"\t"STUB_ASM_CODE("15")"\n"
+
+".hidden ""shared_dispatch_stub_16""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_16")"\n"
+"\t"STUB_ASM_CODE("16")"\n"
+
+".hidden ""shared_dispatch_stub_17""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_17")"\n"
+"\t"STUB_ASM_CODE("17")"\n"
+
+".hidden ""shared_dispatch_stub_18""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_18")"\n"
+"\t"STUB_ASM_CODE("18")"\n"
+
+".hidden ""shared_dispatch_stub_19""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_19")"\n"
+"\t"STUB_ASM_CODE("19")"\n"
+
+".hidden ""shared_dispatch_stub_20""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_20")"\n"
+"\t"STUB_ASM_CODE("20")"\n"
+
+".hidden ""shared_dispatch_stub_21""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_21")"\n"
+"\t"STUB_ASM_CODE("21")"\n"
+
+".hidden ""shared_dispatch_stub_22""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_22")"\n"
+"\t"STUB_ASM_CODE("22")"\n"
+
+".hidden ""shared_dispatch_stub_23""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_23")"\n"
+"\t"STUB_ASM_CODE("23")"\n"
+
+".hidden ""shared_dispatch_stub_24""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_24")"\n"
+"\t"STUB_ASM_CODE("24")"\n"
+
+".hidden ""shared_dispatch_stub_25""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_25")"\n"
+"\t"STUB_ASM_CODE("25")"\n"
+
+".hidden ""shared_dispatch_stub_26""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_26")"\n"
+"\t"STUB_ASM_CODE("26")"\n"
+
+".hidden ""shared_dispatch_stub_27""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_27")"\n"
+"\t"STUB_ASM_CODE("27")"\n"
+
+".hidden ""shared_dispatch_stub_28""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_28")"\n"
+"\t"STUB_ASM_CODE("28")"\n"
+
+".hidden ""shared_dispatch_stub_29""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_29")"\n"
+"\t"STUB_ASM_CODE("29")"\n"
+
+".hidden ""shared_dispatch_stub_30""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_30")"\n"
+"\t"STUB_ASM_CODE("30")"\n"
+
+".hidden ""shared_dispatch_stub_31""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_31")"\n"
+"\t"STUB_ASM_CODE("31")"\n"
+
+".hidden ""shared_dispatch_stub_32""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_32")"\n"
+"\t"STUB_ASM_CODE("32")"\n"
+
+".hidden ""shared_dispatch_stub_33""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_33")"\n"
+"\t"STUB_ASM_CODE("33")"\n"
+
+".hidden ""shared_dispatch_stub_34""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_34")"\n"
+"\t"STUB_ASM_CODE("34")"\n"
+
+".hidden ""shared_dispatch_stub_35""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_35")"\n"
+"\t"STUB_ASM_CODE("35")"\n"
+
+".hidden ""shared_dispatch_stub_36""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_36")"\n"
+"\t"STUB_ASM_CODE("36")"\n"
+
+".hidden ""shared_dispatch_stub_37""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_37")"\n"
+"\t"STUB_ASM_CODE("37")"\n"
+
+".hidden ""shared_dispatch_stub_38""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_38")"\n"
+"\t"STUB_ASM_CODE("38")"\n"
+
+".hidden ""shared_dispatch_stub_39""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_39")"\n"
+"\t"STUB_ASM_CODE("39")"\n"
+
+".hidden ""shared_dispatch_stub_40""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_40")"\n"
+"\t"STUB_ASM_CODE("40")"\n"
+
+".hidden ""shared_dispatch_stub_41""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_41")"\n"
+"\t"STUB_ASM_CODE("41")"\n"
+
+".hidden ""shared_dispatch_stub_42""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_42")"\n"
+"\t"STUB_ASM_CODE("42")"\n"
+
+".hidden ""shared_dispatch_stub_43""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_43")"\n"
+"\t"STUB_ASM_CODE("43")"\n"
+
+".hidden ""shared_dispatch_stub_44""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_44")"\n"
+"\t"STUB_ASM_CODE("44")"\n"
+
+".hidden ""shared_dispatch_stub_45""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_45")"\n"
+"\t"STUB_ASM_CODE("45")"\n"
+
+".hidden ""shared_dispatch_stub_46""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_46")"\n"
+"\t"STUB_ASM_CODE("46")"\n"
+
+".hidden ""shared_dispatch_stub_47""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_47")"\n"
+"\t"STUB_ASM_CODE("47")"\n"
+
+".hidden ""shared_dispatch_stub_48""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_48")"\n"
+"\t"STUB_ASM_CODE("48")"\n"
+
+".hidden ""shared_dispatch_stub_49""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_49")"\n"
+"\t"STUB_ASM_CODE("49")"\n"
+
+".hidden ""shared_dispatch_stub_50""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_50")"\n"
+"\t"STUB_ASM_CODE("50")"\n"
+
+".hidden ""shared_dispatch_stub_51""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_51")"\n"
+"\t"STUB_ASM_CODE("51")"\n"
+
+".hidden ""shared_dispatch_stub_52""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_52")"\n"
+"\t"STUB_ASM_CODE("52")"\n"
+
+".hidden ""shared_dispatch_stub_53""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_53")"\n"
+"\t"STUB_ASM_CODE("53")"\n"
+
+".hidden ""shared_dispatch_stub_54""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_54")"\n"
+"\t"STUB_ASM_CODE("54")"\n"
+
+".hidden ""shared_dispatch_stub_55""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_55")"\n"
+"\t"STUB_ASM_CODE("55")"\n"
+
+".hidden ""shared_dispatch_stub_56""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_56")"\n"
+"\t"STUB_ASM_CODE("56")"\n"
+
+".hidden ""shared_dispatch_stub_57""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_57")"\n"
+"\t"STUB_ASM_CODE("57")"\n"
+
+".hidden ""shared_dispatch_stub_58""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_58")"\n"
+"\t"STUB_ASM_CODE("58")"\n"
+
+".hidden ""shared_dispatch_stub_59""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_59")"\n"
+"\t"STUB_ASM_CODE("59")"\n"
+
+".hidden ""shared_dispatch_stub_60""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_60")"\n"
+"\t"STUB_ASM_CODE("60")"\n"
+
+".hidden ""shared_dispatch_stub_61""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_61")"\n"
+"\t"STUB_ASM_CODE("61")"\n"
+
+".hidden ""shared_dispatch_stub_62""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_62")"\n"
+"\t"STUB_ASM_CODE("62")"\n"
+
+".hidden ""shared_dispatch_stub_63""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_63")"\n"
+"\t"STUB_ASM_CODE("63")"\n"
+
+".hidden ""shared_dispatch_stub_64""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_64")"\n"
+"\t"STUB_ASM_CODE("64")"\n"
+
+".hidden ""shared_dispatch_stub_65""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_65")"\n"
+"\t"STUB_ASM_CODE("65")"\n"
+
+".hidden ""shared_dispatch_stub_66""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_66")"\n"
+"\t"STUB_ASM_CODE("66")"\n"
+
+".hidden ""shared_dispatch_stub_67""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_67")"\n"
+"\t"STUB_ASM_CODE("67")"\n"
+
+".hidden ""shared_dispatch_stub_68""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_68")"\n"
+"\t"STUB_ASM_CODE("68")"\n"
+
+".hidden ""shared_dispatch_stub_69""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_69")"\n"
+"\t"STUB_ASM_CODE("69")"\n"
+
+".hidden ""shared_dispatch_stub_70""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_70")"\n"
+"\t"STUB_ASM_CODE("70")"\n"
+
+".hidden ""shared_dispatch_stub_71""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_71")"\n"
+"\t"STUB_ASM_CODE("71")"\n"
+
+".hidden ""shared_dispatch_stub_72""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_72")"\n"
+"\t"STUB_ASM_CODE("72")"\n"
+
+".hidden ""shared_dispatch_stub_73""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_73")"\n"
+"\t"STUB_ASM_CODE("73")"\n"
+
+".hidden ""shared_dispatch_stub_74""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_74")"\n"
+"\t"STUB_ASM_CODE("74")"\n"
+
+".hidden ""shared_dispatch_stub_75""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_75")"\n"
+"\t"STUB_ASM_CODE("75")"\n"
+
+".hidden ""shared_dispatch_stub_76""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_76")"\n"
+"\t"STUB_ASM_CODE("76")"\n"
+
+".hidden ""shared_dispatch_stub_77""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_77")"\n"
+"\t"STUB_ASM_CODE("77")"\n"
+
+".hidden ""shared_dispatch_stub_78""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_78")"\n"
+"\t"STUB_ASM_CODE("78")"\n"
+
+".hidden ""shared_dispatch_stub_79""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_79")"\n"
+"\t"STUB_ASM_CODE("79")"\n"
+
+".hidden ""shared_dispatch_stub_80""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_80")"\n"
+"\t"STUB_ASM_CODE("80")"\n"
+
+".hidden ""shared_dispatch_stub_81""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_81")"\n"
+"\t"STUB_ASM_CODE("81")"\n"
+
+".hidden ""shared_dispatch_stub_82""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_82")"\n"
+"\t"STUB_ASM_CODE("82")"\n"
+
+".hidden ""shared_dispatch_stub_83""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_83")"\n"
+"\t"STUB_ASM_CODE("83")"\n"
+
+".hidden ""shared_dispatch_stub_84""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_84")"\n"
+"\t"STUB_ASM_CODE("84")"\n"
+
+".hidden ""shared_dispatch_stub_85""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_85")"\n"
+"\t"STUB_ASM_CODE("85")"\n"
+
+".hidden ""shared_dispatch_stub_86""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_86")"\n"
+"\t"STUB_ASM_CODE("86")"\n"
+
+".hidden ""shared_dispatch_stub_87""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_87")"\n"
+"\t"STUB_ASM_CODE("87")"\n"
+
+".hidden ""shared_dispatch_stub_88""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_88")"\n"
+"\t"STUB_ASM_CODE("88")"\n"
+
+".hidden ""shared_dispatch_stub_89""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_89")"\n"
+"\t"STUB_ASM_CODE("89")"\n"
+
+".hidden ""shared_dispatch_stub_90""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_90")"\n"
+"\t"STUB_ASM_CODE("90")"\n"
+
+".hidden ""shared_dispatch_stub_91""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_91")"\n"
+"\t"STUB_ASM_CODE("91")"\n"
+
+".hidden ""shared_dispatch_stub_92""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_92")"\n"
+"\t"STUB_ASM_CODE("92")"\n"
+
+".hidden ""shared_dispatch_stub_93""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_93")"\n"
+"\t"STUB_ASM_CODE("93")"\n"
+
+".hidden ""shared_dispatch_stub_94""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_94")"\n"
+"\t"STUB_ASM_CODE("94")"\n"
+
+".hidden ""shared_dispatch_stub_95""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_95")"\n"
+"\t"STUB_ASM_CODE("95")"\n"
+
+".hidden ""shared_dispatch_stub_96""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_96")"\n"
+"\t"STUB_ASM_CODE("96")"\n"
+
+".hidden ""shared_dispatch_stub_97""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_97")"\n"
+"\t"STUB_ASM_CODE("97")"\n"
+
+".hidden ""shared_dispatch_stub_98""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_98")"\n"
+"\t"STUB_ASM_CODE("98")"\n"
+
+".hidden ""shared_dispatch_stub_99""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_99")"\n"
+"\t"STUB_ASM_CODE("99")"\n"
+
+".hidden ""shared_dispatch_stub_100""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_100")"\n"
+"\t"STUB_ASM_CODE("100")"\n"
+
+".hidden ""shared_dispatch_stub_101""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_101")"\n"
+"\t"STUB_ASM_CODE("101")"\n"
+
+".hidden ""shared_dispatch_stub_102""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_102")"\n"
+"\t"STUB_ASM_CODE("102")"\n"
+
+".hidden ""shared_dispatch_stub_103""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_103")"\n"
+"\t"STUB_ASM_CODE("103")"\n"
+
+".hidden ""shared_dispatch_stub_104""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_104")"\n"
+"\t"STUB_ASM_CODE("104")"\n"
+
+".hidden ""shared_dispatch_stub_105""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_105")"\n"
+"\t"STUB_ASM_CODE("105")"\n"
+
+".hidden ""shared_dispatch_stub_106""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_106")"\n"
+"\t"STUB_ASM_CODE("106")"\n"
+
+".hidden ""shared_dispatch_stub_107""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_107")"\n"
+"\t"STUB_ASM_CODE("107")"\n"
+
+".hidden ""shared_dispatch_stub_108""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_108")"\n"
+"\t"STUB_ASM_CODE("108")"\n"
+
+".hidden ""shared_dispatch_stub_109""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_109")"\n"
+"\t"STUB_ASM_CODE("109")"\n"
+
+".hidden ""shared_dispatch_stub_110""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_110")"\n"
+"\t"STUB_ASM_CODE("110")"\n"
+
+".hidden ""shared_dispatch_stub_111""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_111")"\n"
+"\t"STUB_ASM_CODE("111")"\n"
+
+".hidden ""shared_dispatch_stub_112""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_112")"\n"
+"\t"STUB_ASM_CODE("112")"\n"
+
+".hidden ""shared_dispatch_stub_113""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_113")"\n"
+"\t"STUB_ASM_CODE("113")"\n"
+
+".hidden ""shared_dispatch_stub_114""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_114")"\n"
+"\t"STUB_ASM_CODE("114")"\n"
+
+".hidden ""shared_dispatch_stub_115""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_115")"\n"
+"\t"STUB_ASM_CODE("115")"\n"
+
+".hidden ""shared_dispatch_stub_116""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_116")"\n"
+"\t"STUB_ASM_CODE("116")"\n"
+
+".hidden ""shared_dispatch_stub_117""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_117")"\n"
+"\t"STUB_ASM_CODE("117")"\n"
+
+".hidden ""shared_dispatch_stub_118""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_118")"\n"
+"\t"STUB_ASM_CODE("118")"\n"
+
+".hidden ""shared_dispatch_stub_119""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_119")"\n"
+"\t"STUB_ASM_CODE("119")"\n"
+
+".hidden ""shared_dispatch_stub_120""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_120")"\n"
+"\t"STUB_ASM_CODE("120")"\n"
+
+".hidden ""shared_dispatch_stub_121""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_121")"\n"
+"\t"STUB_ASM_CODE("121")"\n"
+
+".hidden ""shared_dispatch_stub_122""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_122")"\n"
+"\t"STUB_ASM_CODE("122")"\n"
+
+".hidden ""shared_dispatch_stub_123""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_123")"\n"
+"\t"STUB_ASM_CODE("123")"\n"
+
+".hidden ""shared_dispatch_stub_124""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_124")"\n"
+"\t"STUB_ASM_CODE("124")"\n"
+
+".hidden ""shared_dispatch_stub_125""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_125")"\n"
+"\t"STUB_ASM_CODE("125")"\n"
+
+".hidden ""shared_dispatch_stub_126""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_126")"\n"
+"\t"STUB_ASM_CODE("126")"\n"
+
+".hidden ""shared_dispatch_stub_127""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_127")"\n"
+"\t"STUB_ASM_CODE("127")"\n"
+
+".hidden ""shared_dispatch_stub_128""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_128")"\n"
+"\t"STUB_ASM_CODE("128")"\n"
+
+".hidden ""shared_dispatch_stub_129""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_129")"\n"
+"\t"STUB_ASM_CODE("129")"\n"
+
+".hidden ""shared_dispatch_stub_130""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_130")"\n"
+"\t"STUB_ASM_CODE("130")"\n"
+
+".hidden ""shared_dispatch_stub_131""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_131")"\n"
+"\t"STUB_ASM_CODE("131")"\n"
+
+".hidden ""shared_dispatch_stub_132""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_132")"\n"
+"\t"STUB_ASM_CODE("132")"\n"
+
+".hidden ""shared_dispatch_stub_133""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_133")"\n"
+"\t"STUB_ASM_CODE("133")"\n"
+
+".hidden ""shared_dispatch_stub_134""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_134")"\n"
+"\t"STUB_ASM_CODE("134")"\n"
+
+".hidden ""shared_dispatch_stub_135""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_135")"\n"
+"\t"STUB_ASM_CODE("135")"\n"
+
+".hidden ""shared_dispatch_stub_136""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_136")"\n"
+"\t"STUB_ASM_CODE("136")"\n"
+
+".hidden ""shared_dispatch_stub_137""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_137")"\n"
+"\t"STUB_ASM_CODE("137")"\n"
+
+".hidden ""shared_dispatch_stub_138""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_138")"\n"
+"\t"STUB_ASM_CODE("138")"\n"
+
+".hidden ""shared_dispatch_stub_139""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_139")"\n"
+"\t"STUB_ASM_CODE("139")"\n"
+
+".hidden ""shared_dispatch_stub_140""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_140")"\n"
+"\t"STUB_ASM_CODE("140")"\n"
+
+".hidden ""shared_dispatch_stub_141""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_141")"\n"
+"\t"STUB_ASM_CODE("141")"\n"
+
+".hidden ""shared_dispatch_stub_142""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_142")"\n"
+"\t"STUB_ASM_CODE("142")"\n"
+
+".hidden ""shared_dispatch_stub_143""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_143")"\n"
+"\t"STUB_ASM_CODE("143")"\n"
+
+".hidden ""shared_dispatch_stub_144""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_144")"\n"
+"\t"STUB_ASM_CODE("144")"\n"
+
+".hidden ""shared_dispatch_stub_145""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_145")"\n"
+"\t"STUB_ASM_CODE("145")"\n"
+
+".hidden ""shared_dispatch_stub_146""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_146")"\n"
+"\t"STUB_ASM_CODE("146")"\n"
+
+".hidden ""shared_dispatch_stub_147""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_147")"\n"
+"\t"STUB_ASM_CODE("147")"\n"
+
+".hidden ""shared_dispatch_stub_148""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_148")"\n"
+"\t"STUB_ASM_CODE("148")"\n"
+
+".hidden ""shared_dispatch_stub_149""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_149")"\n"
+"\t"STUB_ASM_CODE("149")"\n"
+
+".hidden ""shared_dispatch_stub_150""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_150")"\n"
+"\t"STUB_ASM_CODE("150")"\n"
+
+".hidden ""shared_dispatch_stub_151""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_151")"\n"
+"\t"STUB_ASM_CODE("151")"\n"
+
+".hidden ""shared_dispatch_stub_152""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_152")"\n"
+"\t"STUB_ASM_CODE("152")"\n"
+
+".hidden ""shared_dispatch_stub_153""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_153")"\n"
+"\t"STUB_ASM_CODE("153")"\n"
+
+".hidden ""shared_dispatch_stub_154""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_154")"\n"
+"\t"STUB_ASM_CODE("154")"\n"
+
+".hidden ""shared_dispatch_stub_155""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_155")"\n"
+"\t"STUB_ASM_CODE("155")"\n"
+
+".hidden ""shared_dispatch_stub_156""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_156")"\n"
+"\t"STUB_ASM_CODE("156")"\n"
+
+".hidden ""shared_dispatch_stub_157""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_157")"\n"
+"\t"STUB_ASM_CODE("157")"\n"
+
+".hidden ""shared_dispatch_stub_158""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_158")"\n"
+"\t"STUB_ASM_CODE("158")"\n"
+
+".hidden ""shared_dispatch_stub_159""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_159")"\n"
+"\t"STUB_ASM_CODE("159")"\n"
+
+".hidden ""shared_dispatch_stub_160""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_160")"\n"
+"\t"STUB_ASM_CODE("160")"\n"
+
+".hidden ""shared_dispatch_stub_161""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_161")"\n"
+"\t"STUB_ASM_CODE("161")"\n"
+
+".hidden ""shared_dispatch_stub_162""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_162")"\n"
+"\t"STUB_ASM_CODE("162")"\n"
+
+".hidden ""shared_dispatch_stub_163""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_163")"\n"
+"\t"STUB_ASM_CODE("163")"\n"
+
+".hidden ""shared_dispatch_stub_164""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_164")"\n"
+"\t"STUB_ASM_CODE("164")"\n"
+
+".hidden ""shared_dispatch_stub_165""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_165")"\n"
+"\t"STUB_ASM_CODE("165")"\n"
+
+".hidden ""shared_dispatch_stub_166""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_166")"\n"
+"\t"STUB_ASM_CODE("166")"\n"
+
+".hidden ""shared_dispatch_stub_167""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_167")"\n"
+"\t"STUB_ASM_CODE("167")"\n"
+
+".hidden ""shared_dispatch_stub_168""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_168")"\n"
+"\t"STUB_ASM_CODE("168")"\n"
+
+".hidden ""shared_dispatch_stub_169""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_169")"\n"
+"\t"STUB_ASM_CODE("169")"\n"
+
+".hidden ""shared_dispatch_stub_170""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_170")"\n"
+"\t"STUB_ASM_CODE("170")"\n"
+
+".hidden ""shared_dispatch_stub_171""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_171")"\n"
+"\t"STUB_ASM_CODE("171")"\n"
+
+".hidden ""shared_dispatch_stub_172""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_172")"\n"
+"\t"STUB_ASM_CODE("172")"\n"
+
+".hidden ""shared_dispatch_stub_173""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_173")"\n"
+"\t"STUB_ASM_CODE("173")"\n"
+
+".hidden ""shared_dispatch_stub_174""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_174")"\n"
+"\t"STUB_ASM_CODE("174")"\n"
+
+".hidden ""shared_dispatch_stub_175""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_175")"\n"
+"\t"STUB_ASM_CODE("175")"\n"
+
+".hidden ""shared_dispatch_stub_176""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_176")"\n"
+"\t"STUB_ASM_CODE("176")"\n"
+
+".hidden ""shared_dispatch_stub_177""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_177")"\n"
+"\t"STUB_ASM_CODE("177")"\n"
+
+".hidden ""shared_dispatch_stub_178""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_178")"\n"
+"\t"STUB_ASM_CODE("178")"\n"
+
+".hidden ""shared_dispatch_stub_179""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_179")"\n"
+"\t"STUB_ASM_CODE("179")"\n"
+
+".hidden ""shared_dispatch_stub_180""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_180")"\n"
+"\t"STUB_ASM_CODE("180")"\n"
+
+".hidden ""shared_dispatch_stub_181""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_181")"\n"
+"\t"STUB_ASM_CODE("181")"\n"
+
+".hidden ""shared_dispatch_stub_182""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_182")"\n"
+"\t"STUB_ASM_CODE("182")"\n"
+
+".hidden ""shared_dispatch_stub_183""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_183")"\n"
+"\t"STUB_ASM_CODE("183")"\n"
+
+".hidden ""shared_dispatch_stub_184""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_184")"\n"
+"\t"STUB_ASM_CODE("184")"\n"
+
+".hidden ""shared_dispatch_stub_185""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_185")"\n"
+"\t"STUB_ASM_CODE("185")"\n"
+
+".hidden ""shared_dispatch_stub_186""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_186")"\n"
+"\t"STUB_ASM_CODE("186")"\n"
+
+".hidden ""shared_dispatch_stub_187""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_187")"\n"
+"\t"STUB_ASM_CODE("187")"\n"
+
+".hidden ""shared_dispatch_stub_188""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_188")"\n"
+"\t"STUB_ASM_CODE("188")"\n"
+
+".hidden ""shared_dispatch_stub_189""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_189")"\n"
+"\t"STUB_ASM_CODE("189")"\n"
+
+".hidden ""shared_dispatch_stub_190""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_190")"\n"
+"\t"STUB_ASM_CODE("190")"\n"
+
+".hidden ""shared_dispatch_stub_191""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_191")"\n"
+"\t"STUB_ASM_CODE("191")"\n"
+
+".hidden ""shared_dispatch_stub_192""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_192")"\n"
+"\t"STUB_ASM_CODE("192")"\n"
+
+".hidden ""shared_dispatch_stub_193""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_193")"\n"
+"\t"STUB_ASM_CODE("193")"\n"
+
+".hidden ""shared_dispatch_stub_194""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_194")"\n"
+"\t"STUB_ASM_CODE("194")"\n"
+
+".hidden ""shared_dispatch_stub_195""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_195")"\n"
+"\t"STUB_ASM_CODE("195")"\n"
+
+".hidden ""shared_dispatch_stub_196""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_196")"\n"
+"\t"STUB_ASM_CODE("196")"\n"
+
+".hidden ""shared_dispatch_stub_197""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_197")"\n"
+"\t"STUB_ASM_CODE("197")"\n"
+
+".hidden ""shared_dispatch_stub_198""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_198")"\n"
+"\t"STUB_ASM_CODE("198")"\n"
+
+".hidden ""shared_dispatch_stub_199""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_199")"\n"
+"\t"STUB_ASM_CODE("199")"\n"
+
+".hidden ""shared_dispatch_stub_200""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_200")"\n"
+"\t"STUB_ASM_CODE("200")"\n"
+
+".hidden ""shared_dispatch_stub_201""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_201")"\n"
+"\t"STUB_ASM_CODE("201")"\n"
+
+".hidden ""shared_dispatch_stub_202""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_202")"\n"
+"\t"STUB_ASM_CODE("202")"\n"
+
+".hidden ""shared_dispatch_stub_203""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_203")"\n"
+"\t"STUB_ASM_CODE("203")"\n"
+
+".hidden ""shared_dispatch_stub_204""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_204")"\n"
+"\t"STUB_ASM_CODE("204")"\n"
+
+".hidden ""shared_dispatch_stub_205""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_205")"\n"
+"\t"STUB_ASM_CODE("205")"\n"
+
+".hidden ""shared_dispatch_stub_206""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_206")"\n"
+"\t"STUB_ASM_CODE("206")"\n"
+
+".hidden ""shared_dispatch_stub_207""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_207")"\n"
+"\t"STUB_ASM_CODE("207")"\n"
+
+".hidden ""shared_dispatch_stub_208""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_208")"\n"
+"\t"STUB_ASM_CODE("208")"\n"
+
+".hidden ""shared_dispatch_stub_209""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_209")"\n"
+"\t"STUB_ASM_CODE("209")"\n"
+
+".hidden ""shared_dispatch_stub_210""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_210")"\n"
+"\t"STUB_ASM_CODE("210")"\n"
+
+".hidden ""shared_dispatch_stub_211""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_211")"\n"
+"\t"STUB_ASM_CODE("211")"\n"
+
+".hidden ""shared_dispatch_stub_212""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_212")"\n"
+"\t"STUB_ASM_CODE("212")"\n"
+
+".hidden ""shared_dispatch_stub_213""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_213")"\n"
+"\t"STUB_ASM_CODE("213")"\n"
+
+".hidden ""shared_dispatch_stub_214""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_214")"\n"
+"\t"STUB_ASM_CODE("214")"\n"
+
+".hidden ""shared_dispatch_stub_215""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_215")"\n"
+"\t"STUB_ASM_CODE("215")"\n"
+
+".hidden ""shared_dispatch_stub_216""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_216")"\n"
+"\t"STUB_ASM_CODE("216")"\n"
+
+".hidden ""shared_dispatch_stub_217""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_217")"\n"
+"\t"STUB_ASM_CODE("217")"\n"
+
+".hidden ""shared_dispatch_stub_218""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_218")"\n"
+"\t"STUB_ASM_CODE("218")"\n"
+
+".hidden ""shared_dispatch_stub_219""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_219")"\n"
+"\t"STUB_ASM_CODE("219")"\n"
+
+".hidden ""shared_dispatch_stub_220""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_220")"\n"
+"\t"STUB_ASM_CODE("220")"\n"
+
+".hidden ""shared_dispatch_stub_221""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_221")"\n"
+"\t"STUB_ASM_CODE("221")"\n"
+
+".hidden ""shared_dispatch_stub_222""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_222")"\n"
+"\t"STUB_ASM_CODE("222")"\n"
+
+".hidden ""shared_dispatch_stub_223""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_223")"\n"
+"\t"STUB_ASM_CODE("223")"\n"
+
+".hidden ""shared_dispatch_stub_224""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_224")"\n"
+"\t"STUB_ASM_CODE("224")"\n"
+
+".hidden ""shared_dispatch_stub_225""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_225")"\n"
+"\t"STUB_ASM_CODE("225")"\n"
+
+".hidden ""shared_dispatch_stub_226""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_226")"\n"
+"\t"STUB_ASM_CODE("226")"\n"
+
+".hidden ""shared_dispatch_stub_227""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_227")"\n"
+"\t"STUB_ASM_CODE("227")"\n"
+
+".hidden ""shared_dispatch_stub_228""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_228")"\n"
+"\t"STUB_ASM_CODE("228")"\n"
+
+".hidden ""shared_dispatch_stub_229""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_229")"\n"
+"\t"STUB_ASM_CODE("229")"\n"
+
+".hidden ""shared_dispatch_stub_230""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_230")"\n"
+"\t"STUB_ASM_CODE("230")"\n"
+
+".hidden ""shared_dispatch_stub_231""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_231")"\n"
+"\t"STUB_ASM_CODE("231")"\n"
+
+".hidden ""shared_dispatch_stub_232""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_232")"\n"
+"\t"STUB_ASM_CODE("232")"\n"
+
+".hidden ""shared_dispatch_stub_233""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_233")"\n"
+"\t"STUB_ASM_CODE("233")"\n"
+
+".hidden ""shared_dispatch_stub_234""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_234")"\n"
+"\t"STUB_ASM_CODE("234")"\n"
+
+".hidden ""shared_dispatch_stub_235""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_235")"\n"
+"\t"STUB_ASM_CODE("235")"\n"
+
+".hidden ""shared_dispatch_stub_236""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_236")"\n"
+"\t"STUB_ASM_CODE("236")"\n"
+
+".hidden ""shared_dispatch_stub_237""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_237")"\n"
+"\t"STUB_ASM_CODE("237")"\n"
+
+".hidden ""shared_dispatch_stub_238""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_238")"\n"
+"\t"STUB_ASM_CODE("238")"\n"
+
+".hidden ""shared_dispatch_stub_239""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_239")"\n"
+"\t"STUB_ASM_CODE("239")"\n"
+
+".hidden ""shared_dispatch_stub_240""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_240")"\n"
+"\t"STUB_ASM_CODE("240")"\n"
+
+".hidden ""shared_dispatch_stub_241""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_241")"\n"
+"\t"STUB_ASM_CODE("241")"\n"
+
+".hidden ""shared_dispatch_stub_242""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_242")"\n"
+"\t"STUB_ASM_CODE("242")"\n"
+
+".hidden ""shared_dispatch_stub_243""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_243")"\n"
+"\t"STUB_ASM_CODE("243")"\n"
+
+".hidden ""shared_dispatch_stub_244""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_244")"\n"
+"\t"STUB_ASM_CODE("244")"\n"
+
+".hidden ""shared_dispatch_stub_245""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_245")"\n"
+"\t"STUB_ASM_CODE("245")"\n"
+
+".hidden ""shared_dispatch_stub_246""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_246")"\n"
+"\t"STUB_ASM_CODE("246")"\n"
+
+".hidden ""shared_dispatch_stub_247""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_247")"\n"
+"\t"STUB_ASM_CODE("247")"\n"
+
+".hidden ""shared_dispatch_stub_248""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_248")"\n"
+"\t"STUB_ASM_CODE("248")"\n"
+
+".hidden ""shared_dispatch_stub_249""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_249")"\n"
+"\t"STUB_ASM_CODE("249")"\n"
+
+".hidden ""shared_dispatch_stub_250""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_250")"\n"
+"\t"STUB_ASM_CODE("250")"\n"
+
+".hidden ""shared_dispatch_stub_251""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_251")"\n"
+"\t"STUB_ASM_CODE("251")"\n"
+
+".hidden ""shared_dispatch_stub_252""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_252")"\n"
+"\t"STUB_ASM_CODE("252")"\n"
+
+".hidden ""shared_dispatch_stub_253""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_253")"\n"
+"\t"STUB_ASM_CODE("253")"\n"
+
+".hidden ""shared_dispatch_stub_254""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_254")"\n"
+"\t"STUB_ASM_CODE("254")"\n"
+
+".hidden ""shared_dispatch_stub_255""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_255")"\n"
+"\t"STUB_ASM_CODE("255")"\n"
+
+".hidden ""shared_dispatch_stub_256""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_256")"\n"
+"\t"STUB_ASM_CODE("256")"\n"
+
+".hidden ""shared_dispatch_stub_257""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_257")"\n"
+"\t"STUB_ASM_CODE("257")"\n"
+
+".hidden ""shared_dispatch_stub_258""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_258")"\n"
+"\t"STUB_ASM_CODE("258")"\n"
+
+".hidden ""shared_dispatch_stub_259""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_259")"\n"
+"\t"STUB_ASM_CODE("259")"\n"
+
+".hidden ""shared_dispatch_stub_260""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_260")"\n"
+"\t"STUB_ASM_CODE("260")"\n"
+
+".hidden ""shared_dispatch_stub_261""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_261")"\n"
+"\t"STUB_ASM_CODE("261")"\n"
+
+".hidden ""shared_dispatch_stub_262""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_262")"\n"
+"\t"STUB_ASM_CODE("262")"\n"
+
+".hidden ""shared_dispatch_stub_263""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_263")"\n"
+"\t"STUB_ASM_CODE("263")"\n"
+
+".hidden ""shared_dispatch_stub_264""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_264")"\n"
+"\t"STUB_ASM_CODE("264")"\n"
+
+".hidden ""shared_dispatch_stub_265""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_265")"\n"
+"\t"STUB_ASM_CODE("265")"\n"
+
+".hidden ""shared_dispatch_stub_266""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_266")"\n"
+"\t"STUB_ASM_CODE("266")"\n"
+
+".hidden ""shared_dispatch_stub_267""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_267")"\n"
+"\t"STUB_ASM_CODE("267")"\n"
+
+".hidden ""shared_dispatch_stub_268""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_268")"\n"
+"\t"STUB_ASM_CODE("268")"\n"
+
+".hidden ""shared_dispatch_stub_269""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_269")"\n"
+"\t"STUB_ASM_CODE("269")"\n"
+
+".hidden ""shared_dispatch_stub_270""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_270")"\n"
+"\t"STUB_ASM_CODE("270")"\n"
+
+".hidden ""shared_dispatch_stub_271""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_271")"\n"
+"\t"STUB_ASM_CODE("271")"\n"
+
+".hidden ""shared_dispatch_stub_272""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_272")"\n"
+"\t"STUB_ASM_CODE("272")"\n"
+
+".hidden ""shared_dispatch_stub_273""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_273")"\n"
+"\t"STUB_ASM_CODE("273")"\n"
+
+".hidden ""shared_dispatch_stub_274""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_274")"\n"
+"\t"STUB_ASM_CODE("274")"\n"
+
+".hidden ""shared_dispatch_stub_275""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_275")"\n"
+"\t"STUB_ASM_CODE("275")"\n"
+
+".hidden ""shared_dispatch_stub_276""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_276")"\n"
+"\t"STUB_ASM_CODE("276")"\n"
+
+".hidden ""shared_dispatch_stub_277""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_277")"\n"
+"\t"STUB_ASM_CODE("277")"\n"
+
+".hidden ""shared_dispatch_stub_278""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_278")"\n"
+"\t"STUB_ASM_CODE("278")"\n"
+
+".hidden ""shared_dispatch_stub_279""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_279")"\n"
+"\t"STUB_ASM_CODE("279")"\n"
+
+".hidden ""shared_dispatch_stub_280""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_280")"\n"
+"\t"STUB_ASM_CODE("280")"\n"
+
+".hidden ""shared_dispatch_stub_281""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_281")"\n"
+"\t"STUB_ASM_CODE("281")"\n"
+
+".hidden ""shared_dispatch_stub_282""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_282")"\n"
+"\t"STUB_ASM_CODE("282")"\n"
+
+".hidden ""shared_dispatch_stub_283""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_283")"\n"
+"\t"STUB_ASM_CODE("283")"\n"
+
+".hidden ""shared_dispatch_stub_284""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_284")"\n"
+"\t"STUB_ASM_CODE("284")"\n"
+
+".hidden ""shared_dispatch_stub_285""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_285")"\n"
+"\t"STUB_ASM_CODE("285")"\n"
+
+".hidden ""shared_dispatch_stub_286""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_286")"\n"
+"\t"STUB_ASM_CODE("286")"\n"
+
+".hidden ""shared_dispatch_stub_287""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_287")"\n"
+"\t"STUB_ASM_CODE("287")"\n"
+
+".hidden ""shared_dispatch_stub_288""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_288")"\n"
+"\t"STUB_ASM_CODE("288")"\n"
+
+".hidden ""shared_dispatch_stub_289""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_289")"\n"
+"\t"STUB_ASM_CODE("289")"\n"
+
+".hidden ""shared_dispatch_stub_290""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_290")"\n"
+"\t"STUB_ASM_CODE("290")"\n"
+
+".hidden ""shared_dispatch_stub_291""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_291")"\n"
+"\t"STUB_ASM_CODE("291")"\n"
+
+".hidden ""shared_dispatch_stub_292""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_292")"\n"
+"\t"STUB_ASM_CODE("292")"\n"
+
+".hidden ""shared_dispatch_stub_293""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_293")"\n"
+"\t"STUB_ASM_CODE("293")"\n"
+
+".hidden ""shared_dispatch_stub_294""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_294")"\n"
+"\t"STUB_ASM_CODE("294")"\n"
+
+".hidden ""shared_dispatch_stub_295""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_295")"\n"
+"\t"STUB_ASM_CODE("295")"\n"
+
+".hidden ""shared_dispatch_stub_296""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_296")"\n"
+"\t"STUB_ASM_CODE("296")"\n"
+
+".hidden ""shared_dispatch_stub_297""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_297")"\n"
+"\t"STUB_ASM_CODE("297")"\n"
+
+".hidden ""shared_dispatch_stub_298""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_298")"\n"
+"\t"STUB_ASM_CODE("298")"\n"
+
+".hidden ""shared_dispatch_stub_299""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_299")"\n"
+"\t"STUB_ASM_CODE("299")"\n"
+
+".hidden ""shared_dispatch_stub_300""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_300")"\n"
+"\t"STUB_ASM_CODE("300")"\n"
+
+".hidden ""shared_dispatch_stub_301""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_301")"\n"
+"\t"STUB_ASM_CODE("301")"\n"
+
+".hidden ""shared_dispatch_stub_302""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_302")"\n"
+"\t"STUB_ASM_CODE("302")"\n"
+
+".hidden ""shared_dispatch_stub_303""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_303")"\n"
+"\t"STUB_ASM_CODE("303")"\n"
+
+".hidden ""shared_dispatch_stub_304""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_304")"\n"
+"\t"STUB_ASM_CODE("304")"\n"
+
+".hidden ""shared_dispatch_stub_305""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_305")"\n"
+"\t"STUB_ASM_CODE("305")"\n"
+
+".hidden ""shared_dispatch_stub_306""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_306")"\n"
+"\t"STUB_ASM_CODE("306")"\n"
+
+".hidden ""shared_dispatch_stub_307""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_307")"\n"
+"\t"STUB_ASM_CODE("307")"\n"
+
+".hidden ""shared_dispatch_stub_308""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_308")"\n"
+"\t"STUB_ASM_CODE("308")"\n"
+
+".hidden ""shared_dispatch_stub_309""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_309")"\n"
+"\t"STUB_ASM_CODE("309")"\n"
+
+".hidden ""shared_dispatch_stub_310""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_310")"\n"
+"\t"STUB_ASM_CODE("310")"\n"
+
+".hidden ""shared_dispatch_stub_311""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_311")"\n"
+"\t"STUB_ASM_CODE("311")"\n"
+
+".hidden ""shared_dispatch_stub_312""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_312")"\n"
+"\t"STUB_ASM_CODE("312")"\n"
+
+".hidden ""shared_dispatch_stub_313""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_313")"\n"
+"\t"STUB_ASM_CODE("313")"\n"
+
+".hidden ""shared_dispatch_stub_314""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_314")"\n"
+"\t"STUB_ASM_CODE("314")"\n"
+
+".hidden ""shared_dispatch_stub_315""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_315")"\n"
+"\t"STUB_ASM_CODE("315")"\n"
+
+".hidden ""shared_dispatch_stub_316""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_316")"\n"
+"\t"STUB_ASM_CODE("316")"\n"
+
+".hidden ""shared_dispatch_stub_317""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_317")"\n"
+"\t"STUB_ASM_CODE("317")"\n"
+
+".hidden ""shared_dispatch_stub_318""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_318")"\n"
+"\t"STUB_ASM_CODE("318")"\n"
+
+".hidden ""shared_dispatch_stub_319""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_319")"\n"
+"\t"STUB_ASM_CODE("319")"\n"
+
+".hidden ""shared_dispatch_stub_320""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_320")"\n"
+"\t"STUB_ASM_CODE("320")"\n"
+
+".hidden ""shared_dispatch_stub_321""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_321")"\n"
+"\t"STUB_ASM_CODE("321")"\n"
+
+".hidden ""shared_dispatch_stub_322""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_322")"\n"
+"\t"STUB_ASM_CODE("322")"\n"
+
+".hidden ""shared_dispatch_stub_323""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_323")"\n"
+"\t"STUB_ASM_CODE("323")"\n"
+
+".hidden ""shared_dispatch_stub_324""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_324")"\n"
+"\t"STUB_ASM_CODE("324")"\n"
+
+".hidden ""shared_dispatch_stub_325""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_325")"\n"
+"\t"STUB_ASM_CODE("325")"\n"
+
+".hidden ""shared_dispatch_stub_326""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_326")"\n"
+"\t"STUB_ASM_CODE("326")"\n"
+
+".hidden ""shared_dispatch_stub_327""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_327")"\n"
+"\t"STUB_ASM_CODE("327")"\n"
+
+".hidden ""shared_dispatch_stub_328""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_328")"\n"
+"\t"STUB_ASM_CODE("328")"\n"
+
+".hidden ""shared_dispatch_stub_329""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_329")"\n"
+"\t"STUB_ASM_CODE("329")"\n"
+
+".hidden ""shared_dispatch_stub_330""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_330")"\n"
+"\t"STUB_ASM_CODE("330")"\n"
+
+".hidden ""shared_dispatch_stub_331""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_331")"\n"
+"\t"STUB_ASM_CODE("331")"\n"
+
+".hidden ""shared_dispatch_stub_332""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_332")"\n"
+"\t"STUB_ASM_CODE("332")"\n"
+
+".hidden ""shared_dispatch_stub_333""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_333")"\n"
+"\t"STUB_ASM_CODE("333")"\n"
+
+".hidden ""shared_dispatch_stub_334""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_334")"\n"
+"\t"STUB_ASM_CODE("334")"\n"
+
+".hidden ""shared_dispatch_stub_335""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_335")"\n"
+"\t"STUB_ASM_CODE("335")"\n"
+
+".hidden ""shared_dispatch_stub_336""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_336")"\n"
+"\t"STUB_ASM_CODE("336")"\n"
+
+".hidden ""shared_dispatch_stub_337""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_337")"\n"
+"\t"STUB_ASM_CODE("337")"\n"
+
+".hidden ""shared_dispatch_stub_338""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_338")"\n"
+"\t"STUB_ASM_CODE("338")"\n"
+
+".hidden ""shared_dispatch_stub_339""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_339")"\n"
+"\t"STUB_ASM_CODE("339")"\n"
+
+".hidden ""shared_dispatch_stub_340""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_340")"\n"
+"\t"STUB_ASM_CODE("340")"\n"
+
+".hidden ""shared_dispatch_stub_341""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_341")"\n"
+"\t"STUB_ASM_CODE("341")"\n"
+
+".hidden ""shared_dispatch_stub_342""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_342")"\n"
+"\t"STUB_ASM_CODE("342")"\n"
+
+".hidden ""shared_dispatch_stub_343""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_343")"\n"
+"\t"STUB_ASM_CODE("343")"\n"
+
+".hidden ""shared_dispatch_stub_344""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_344")"\n"
+"\t"STUB_ASM_CODE("344")"\n"
+
+".hidden ""shared_dispatch_stub_345""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_345")"\n"
+"\t"STUB_ASM_CODE("345")"\n"
+
+".hidden ""shared_dispatch_stub_346""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_346")"\n"
+"\t"STUB_ASM_CODE("346")"\n"
+
+".hidden ""shared_dispatch_stub_347""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_347")"\n"
+"\t"STUB_ASM_CODE("347")"\n"
+
+".hidden ""shared_dispatch_stub_348""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_348")"\n"
+"\t"STUB_ASM_CODE("348")"\n"
+
+".hidden ""shared_dispatch_stub_349""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_349")"\n"
+"\t"STUB_ASM_CODE("349")"\n"
+
+".hidden ""shared_dispatch_stub_350""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_350")"\n"
+"\t"STUB_ASM_CODE("350")"\n"
+
+".hidden ""shared_dispatch_stub_351""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_351")"\n"
+"\t"STUB_ASM_CODE("351")"\n"
+
+".hidden ""shared_dispatch_stub_352""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_352")"\n"
+"\t"STUB_ASM_CODE("352")"\n"
+
+".hidden ""shared_dispatch_stub_353""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_353")"\n"
+"\t"STUB_ASM_CODE("353")"\n"
+
+".hidden ""shared_dispatch_stub_354""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_354")"\n"
+"\t"STUB_ASM_CODE("354")"\n"
+
+".hidden ""shared_dispatch_stub_355""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_355")"\n"
+"\t"STUB_ASM_CODE("355")"\n"
+
+".hidden ""shared_dispatch_stub_356""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_356")"\n"
+"\t"STUB_ASM_CODE("356")"\n"
+
+".hidden ""shared_dispatch_stub_357""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_357")"\n"
+"\t"STUB_ASM_CODE("357")"\n"
+
+".hidden ""shared_dispatch_stub_358""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_358")"\n"
+"\t"STUB_ASM_CODE("358")"\n"
+
+".hidden ""shared_dispatch_stub_359""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_359")"\n"
+"\t"STUB_ASM_CODE("359")"\n"
+
+".hidden ""shared_dispatch_stub_360""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_360")"\n"
+"\t"STUB_ASM_CODE("360")"\n"
+
+".hidden ""shared_dispatch_stub_361""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_361")"\n"
+"\t"STUB_ASM_CODE("361")"\n"
+
+".hidden ""shared_dispatch_stub_362""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_362")"\n"
+"\t"STUB_ASM_CODE("362")"\n"
+
+".hidden ""shared_dispatch_stub_363""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_363")"\n"
+"\t"STUB_ASM_CODE("363")"\n"
+
+".hidden ""shared_dispatch_stub_364""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_364")"\n"
+"\t"STUB_ASM_CODE("364")"\n"
+
+".hidden ""shared_dispatch_stub_365""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_365")"\n"
+"\t"STUB_ASM_CODE("365")"\n"
+
+".hidden ""shared_dispatch_stub_366""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_366")"\n"
+"\t"STUB_ASM_CODE("366")"\n"
+
+".hidden ""shared_dispatch_stub_367""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_367")"\n"
+"\t"STUB_ASM_CODE("367")"\n"
+
+".hidden ""shared_dispatch_stub_368""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_368")"\n"
+"\t"STUB_ASM_CODE("368")"\n"
+
+".hidden ""shared_dispatch_stub_369""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_369")"\n"
+"\t"STUB_ASM_CODE("369")"\n"
+
+".hidden ""shared_dispatch_stub_370""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_370")"\n"
+"\t"STUB_ASM_CODE("370")"\n"
+
+".hidden ""shared_dispatch_stub_371""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_371")"\n"
+"\t"STUB_ASM_CODE("371")"\n"
+
+".hidden ""shared_dispatch_stub_372""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_372")"\n"
+"\t"STUB_ASM_CODE("372")"\n"
+
+".hidden ""shared_dispatch_stub_373""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_373")"\n"
+"\t"STUB_ASM_CODE("373")"\n"
+
+".hidden ""shared_dispatch_stub_374""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_374")"\n"
+"\t"STUB_ASM_CODE("374")"\n"
+
+".hidden ""shared_dispatch_stub_375""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_375")"\n"
+"\t"STUB_ASM_CODE("375")"\n"
+
+".hidden ""shared_dispatch_stub_376""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_376")"\n"
+"\t"STUB_ASM_CODE("376")"\n"
+
+".hidden ""shared_dispatch_stub_377""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_377")"\n"
+"\t"STUB_ASM_CODE("377")"\n"
+
+".hidden ""shared_dispatch_stub_378""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_378")"\n"
+"\t"STUB_ASM_CODE("378")"\n"
+
+".hidden ""shared_dispatch_stub_379""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_379")"\n"
+"\t"STUB_ASM_CODE("379")"\n"
+
+".hidden ""shared_dispatch_stub_380""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_380")"\n"
+"\t"STUB_ASM_CODE("380")"\n"
+
+".hidden ""shared_dispatch_stub_381""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_381")"\n"
+"\t"STUB_ASM_CODE("381")"\n"
+
+".hidden ""shared_dispatch_stub_382""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_382")"\n"
+"\t"STUB_ASM_CODE("382")"\n"
+
+".hidden ""shared_dispatch_stub_383""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_383")"\n"
+"\t"STUB_ASM_CODE("383")"\n"
+
+".hidden ""shared_dispatch_stub_384""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_384")"\n"
+"\t"STUB_ASM_CODE("384")"\n"
+
+".hidden ""shared_dispatch_stub_385""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_385")"\n"
+"\t"STUB_ASM_CODE("385")"\n"
+
+".hidden ""shared_dispatch_stub_386""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_386")"\n"
+"\t"STUB_ASM_CODE("386")"\n"
+
+".hidden ""shared_dispatch_stub_387""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_387")"\n"
+"\t"STUB_ASM_CODE("387")"\n"
+
+".hidden ""shared_dispatch_stub_388""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_388")"\n"
+"\t"STUB_ASM_CODE("388")"\n"
+
+".hidden ""shared_dispatch_stub_389""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_389")"\n"
+"\t"STUB_ASM_CODE("389")"\n"
+
+".hidden ""shared_dispatch_stub_390""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_390")"\n"
+"\t"STUB_ASM_CODE("390")"\n"
+
+".hidden ""shared_dispatch_stub_391""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_391")"\n"
+"\t"STUB_ASM_CODE("391")"\n"
+
+".hidden ""shared_dispatch_stub_392""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_392")"\n"
+"\t"STUB_ASM_CODE("392")"\n"
+
+".hidden ""shared_dispatch_stub_393""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_393")"\n"
+"\t"STUB_ASM_CODE("393")"\n"
+
+".hidden ""shared_dispatch_stub_394""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_394")"\n"
+"\t"STUB_ASM_CODE("394")"\n"
+
+".hidden ""shared_dispatch_stub_395""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_395")"\n"
+"\t"STUB_ASM_CODE("395")"\n"
+
+".hidden ""shared_dispatch_stub_396""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_396")"\n"
+"\t"STUB_ASM_CODE("396")"\n"
+
+".hidden ""shared_dispatch_stub_397""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_397")"\n"
+"\t"STUB_ASM_CODE("397")"\n"
+
+".hidden ""shared_dispatch_stub_398""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_398")"\n"
+"\t"STUB_ASM_CODE("398")"\n"
+
+".hidden ""shared_dispatch_stub_399""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_399")"\n"
+"\t"STUB_ASM_CODE("399")"\n"
+
+".hidden ""shared_dispatch_stub_400""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_400")"\n"
+"\t"STUB_ASM_CODE("400")"\n"
+
+".hidden ""shared_dispatch_stub_401""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_401")"\n"
+"\t"STUB_ASM_CODE("401")"\n"
+
+".hidden ""shared_dispatch_stub_402""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_402")"\n"
+"\t"STUB_ASM_CODE("402")"\n"
+
+".hidden ""shared_dispatch_stub_403""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_403")"\n"
+"\t"STUB_ASM_CODE("403")"\n"
+
+".hidden ""shared_dispatch_stub_404""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_404")"\n"
+"\t"STUB_ASM_CODE("404")"\n"
+
+".hidden ""shared_dispatch_stub_405""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_405")"\n"
+"\t"STUB_ASM_CODE("405")"\n"
+
+".hidden ""shared_dispatch_stub_406""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_406")"\n"
+"\t"STUB_ASM_CODE("406")"\n"
+
+".hidden ""shared_dispatch_stub_407""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_407")"\n"
+"\t"STUB_ASM_CODE("407")"\n"
+
+".hidden ""shared_dispatch_stub_408""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_408")"\n"
+"\t"STUB_ASM_CODE("408")"\n"
+
+".hidden ""shared_dispatch_stub_409""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_409")"\n"
+"\t"STUB_ASM_CODE("409")"\n"
+
+".hidden ""shared_dispatch_stub_410""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_410")"\n"
+"\t"STUB_ASM_CODE("410")"\n"
+
+".hidden ""shared_dispatch_stub_411""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_411")"\n"
+"\t"STUB_ASM_CODE("411")"\n"
+
+".hidden ""shared_dispatch_stub_412""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_412")"\n"
+"\t"STUB_ASM_CODE("412")"\n"
+
+".hidden ""shared_dispatch_stub_413""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_413")"\n"
+"\t"STUB_ASM_CODE("413")"\n"
+
+".hidden ""shared_dispatch_stub_414""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_414")"\n"
+"\t"STUB_ASM_CODE("414")"\n"
+
+".hidden ""shared_dispatch_stub_415""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_415")"\n"
+"\t"STUB_ASM_CODE("415")"\n"
+
+".hidden ""shared_dispatch_stub_416""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_416")"\n"
+"\t"STUB_ASM_CODE("416")"\n"
+
+".hidden ""shared_dispatch_stub_417""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_417")"\n"
+"\t"STUB_ASM_CODE("417")"\n"
+
+".hidden ""shared_dispatch_stub_418""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_418")"\n"
+"\t"STUB_ASM_CODE("418")"\n"
+
+".hidden ""shared_dispatch_stub_419""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_419")"\n"
+"\t"STUB_ASM_CODE("419")"\n"
+
+".hidden ""shared_dispatch_stub_420""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_420")"\n"
+"\t"STUB_ASM_CODE("420")"\n"
+
+".hidden ""shared_dispatch_stub_421""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_421")"\n"
+"\t"STUB_ASM_CODE("421")"\n"
+
+".hidden ""shared_dispatch_stub_422""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_422")"\n"
+"\t"STUB_ASM_CODE("422")"\n"
+
+".hidden ""shared_dispatch_stub_423""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_423")"\n"
+"\t"STUB_ASM_CODE("423")"\n"
+
+".hidden ""shared_dispatch_stub_424""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_424")"\n"
+"\t"STUB_ASM_CODE("424")"\n"
+
+".hidden ""shared_dispatch_stub_425""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_425")"\n"
+"\t"STUB_ASM_CODE("425")"\n"
+
+".hidden ""shared_dispatch_stub_426""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_426")"\n"
+"\t"STUB_ASM_CODE("426")"\n"
+
+".hidden ""shared_dispatch_stub_427""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_427")"\n"
+"\t"STUB_ASM_CODE("427")"\n"
+
+".hidden ""shared_dispatch_stub_428""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_428")"\n"
+"\t"STUB_ASM_CODE("428")"\n"
+
+".hidden ""shared_dispatch_stub_429""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_429")"\n"
+"\t"STUB_ASM_CODE("429")"\n"
+
+".hidden ""shared_dispatch_stub_430""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_430")"\n"
+"\t"STUB_ASM_CODE("430")"\n"
+
+".hidden ""shared_dispatch_stub_431""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_431")"\n"
+"\t"STUB_ASM_CODE("431")"\n"
+
+".hidden ""shared_dispatch_stub_432""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_432")"\n"
+"\t"STUB_ASM_CODE("432")"\n"
+
+".hidden ""shared_dispatch_stub_433""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_433")"\n"
+"\t"STUB_ASM_CODE("433")"\n"
+
+".hidden ""shared_dispatch_stub_434""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_434")"\n"
+"\t"STUB_ASM_CODE("434")"\n"
+
+".hidden ""shared_dispatch_stub_435""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_435")"\n"
+"\t"STUB_ASM_CODE("435")"\n"
+
+".hidden ""shared_dispatch_stub_436""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_436")"\n"
+"\t"STUB_ASM_CODE("436")"\n"
+
+".hidden ""shared_dispatch_stub_437""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_437")"\n"
+"\t"STUB_ASM_CODE("437")"\n"
+
+".hidden ""shared_dispatch_stub_438""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_438")"\n"
+"\t"STUB_ASM_CODE("438")"\n"
+
+".hidden ""shared_dispatch_stub_439""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_439")"\n"
+"\t"STUB_ASM_CODE("439")"\n"
+
+".hidden ""shared_dispatch_stub_440""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_440")"\n"
+"\t"STUB_ASM_CODE("440")"\n"
+
+".hidden ""shared_dispatch_stub_441""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_441")"\n"
+"\t"STUB_ASM_CODE("441")"\n"
+
+".hidden ""shared_dispatch_stub_442""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_442")"\n"
+"\t"STUB_ASM_CODE("442")"\n"
+
+".hidden ""shared_dispatch_stub_443""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_443")"\n"
+"\t"STUB_ASM_CODE("443")"\n"
+
+".hidden ""shared_dispatch_stub_444""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_444")"\n"
+"\t"STUB_ASM_CODE("444")"\n"
+
+".hidden ""shared_dispatch_stub_445""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_445")"\n"
+"\t"STUB_ASM_CODE("445")"\n"
+
+".hidden ""shared_dispatch_stub_446""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_446")"\n"
+"\t"STUB_ASM_CODE("446")"\n"
+
+".hidden ""shared_dispatch_stub_447""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_447")"\n"
+"\t"STUB_ASM_CODE("447")"\n"
+
+".hidden ""shared_dispatch_stub_448""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_448")"\n"
+"\t"STUB_ASM_CODE("448")"\n"
+
+".hidden ""shared_dispatch_stub_449""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_449")"\n"
+"\t"STUB_ASM_CODE("449")"\n"
+
+".hidden ""shared_dispatch_stub_450""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_450")"\n"
+"\t"STUB_ASM_CODE("450")"\n"
+
+".hidden ""shared_dispatch_stub_451""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_451")"\n"
+"\t"STUB_ASM_CODE("451")"\n"
+
+".hidden ""shared_dispatch_stub_452""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_452")"\n"
+"\t"STUB_ASM_CODE("452")"\n"
+
+".hidden ""shared_dispatch_stub_453""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_453")"\n"
+"\t"STUB_ASM_CODE("453")"\n"
+
+".hidden ""shared_dispatch_stub_454""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_454")"\n"
+"\t"STUB_ASM_CODE("454")"\n"
+
+".hidden ""shared_dispatch_stub_455""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_455")"\n"
+"\t"STUB_ASM_CODE("455")"\n"
+
+".hidden ""shared_dispatch_stub_456""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_456")"\n"
+"\t"STUB_ASM_CODE("456")"\n"
+
+".hidden ""shared_dispatch_stub_457""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_457")"\n"
+"\t"STUB_ASM_CODE("457")"\n"
+
+".hidden ""shared_dispatch_stub_458""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_458")"\n"
+"\t"STUB_ASM_CODE("458")"\n"
+
+".hidden ""shared_dispatch_stub_459""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_459")"\n"
+"\t"STUB_ASM_CODE("459")"\n"
+
+".hidden ""shared_dispatch_stub_460""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_460")"\n"
+"\t"STUB_ASM_CODE("460")"\n"
+
+".hidden ""shared_dispatch_stub_461""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_461")"\n"
+"\t"STUB_ASM_CODE("461")"\n"
+
+".hidden ""shared_dispatch_stub_462""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_462")"\n"
+"\t"STUB_ASM_CODE("462")"\n"
+
+".hidden ""shared_dispatch_stub_463""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_463")"\n"
+"\t"STUB_ASM_CODE("463")"\n"
+
+".hidden ""shared_dispatch_stub_464""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_464")"\n"
+"\t"STUB_ASM_CODE("464")"\n"
+
+".hidden ""shared_dispatch_stub_465""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_465")"\n"
+"\t"STUB_ASM_CODE("465")"\n"
+
+".hidden ""shared_dispatch_stub_466""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_466")"\n"
+"\t"STUB_ASM_CODE("466")"\n"
+
+".hidden ""shared_dispatch_stub_467""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_467")"\n"
+"\t"STUB_ASM_CODE("467")"\n"
+
+".hidden ""shared_dispatch_stub_468""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_468")"\n"
+"\t"STUB_ASM_CODE("468")"\n"
+
+".hidden ""shared_dispatch_stub_469""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_469")"\n"
+"\t"STUB_ASM_CODE("469")"\n"
+
+".hidden ""shared_dispatch_stub_470""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_470")"\n"
+"\t"STUB_ASM_CODE("470")"\n"
+
+".hidden ""shared_dispatch_stub_471""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_471")"\n"
+"\t"STUB_ASM_CODE("471")"\n"
+
+".hidden ""shared_dispatch_stub_472""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_472")"\n"
+"\t"STUB_ASM_CODE("472")"\n"
+
+".hidden ""shared_dispatch_stub_473""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_473")"\n"
+"\t"STUB_ASM_CODE("473")"\n"
+
+".hidden ""shared_dispatch_stub_474""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_474")"\n"
+"\t"STUB_ASM_CODE("474")"\n"
+
+".hidden ""shared_dispatch_stub_475""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_475")"\n"
+"\t"STUB_ASM_CODE("475")"\n"
+
+".hidden ""shared_dispatch_stub_476""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_476")"\n"
+"\t"STUB_ASM_CODE("476")"\n"
+
+".hidden ""shared_dispatch_stub_477""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_477")"\n"
+"\t"STUB_ASM_CODE("477")"\n"
+
+".hidden ""shared_dispatch_stub_478""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_478")"\n"
+"\t"STUB_ASM_CODE("478")"\n"
+
+".hidden ""shared_dispatch_stub_479""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_479")"\n"
+"\t"STUB_ASM_CODE("479")"\n"
+
+".hidden ""shared_dispatch_stub_480""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_480")"\n"
+"\t"STUB_ASM_CODE("480")"\n"
+
+".hidden ""shared_dispatch_stub_481""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_481")"\n"
+"\t"STUB_ASM_CODE("481")"\n"
+
+".hidden ""shared_dispatch_stub_482""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_482")"\n"
+"\t"STUB_ASM_CODE("482")"\n"
+
+".hidden ""shared_dispatch_stub_483""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_483")"\n"
+"\t"STUB_ASM_CODE("483")"\n"
+
+".hidden ""shared_dispatch_stub_484""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_484")"\n"
+"\t"STUB_ASM_CODE("484")"\n"
+
+".hidden ""shared_dispatch_stub_485""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_485")"\n"
+"\t"STUB_ASM_CODE("485")"\n"
+
+".hidden ""shared_dispatch_stub_486""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_486")"\n"
+"\t"STUB_ASM_CODE("486")"\n"
+
+".hidden ""shared_dispatch_stub_487""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_487")"\n"
+"\t"STUB_ASM_CODE("487")"\n"
+
+".hidden ""shared_dispatch_stub_488""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_488")"\n"
+"\t"STUB_ASM_CODE("488")"\n"
+
+".hidden ""shared_dispatch_stub_489""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_489")"\n"
+"\t"STUB_ASM_CODE("489")"\n"
+
+".hidden ""shared_dispatch_stub_490""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_490")"\n"
+"\t"STUB_ASM_CODE("490")"\n"
+
+".hidden ""shared_dispatch_stub_491""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_491")"\n"
+"\t"STUB_ASM_CODE("491")"\n"
+
+".hidden ""shared_dispatch_stub_492""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_492")"\n"
+"\t"STUB_ASM_CODE("492")"\n"
+
+".hidden ""shared_dispatch_stub_493""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_493")"\n"
+"\t"STUB_ASM_CODE("493")"\n"
+
+".hidden ""shared_dispatch_stub_494""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_494")"\n"
+"\t"STUB_ASM_CODE("494")"\n"
+
+".hidden ""shared_dispatch_stub_495""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_495")"\n"
+"\t"STUB_ASM_CODE("495")"\n"
+
+".hidden ""shared_dispatch_stub_496""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_496")"\n"
+"\t"STUB_ASM_CODE("496")"\n"
+
+".hidden ""shared_dispatch_stub_497""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_497")"\n"
+"\t"STUB_ASM_CODE("497")"\n"
+
+".hidden ""shared_dispatch_stub_498""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_498")"\n"
+"\t"STUB_ASM_CODE("498")"\n"
+
+".hidden ""shared_dispatch_stub_499""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_499")"\n"
+"\t"STUB_ASM_CODE("499")"\n"
+
+".hidden ""shared_dispatch_stub_500""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_500")"\n"
+"\t"STUB_ASM_CODE("500")"\n"
+
+".hidden ""shared_dispatch_stub_501""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_501")"\n"
+"\t"STUB_ASM_CODE("501")"\n"
+
+".hidden ""shared_dispatch_stub_502""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_502")"\n"
+"\t"STUB_ASM_CODE("502")"\n"
+
+".hidden ""shared_dispatch_stub_503""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_503")"\n"
+"\t"STUB_ASM_CODE("503")"\n"
+
+".hidden ""shared_dispatch_stub_504""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_504")"\n"
+"\t"STUB_ASM_CODE("504")"\n"
+
+".hidden ""shared_dispatch_stub_505""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_505")"\n"
+"\t"STUB_ASM_CODE("505")"\n"
+
+".hidden ""shared_dispatch_stub_506""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_506")"\n"
+"\t"STUB_ASM_CODE("506")"\n"
+
+".hidden ""shared_dispatch_stub_507""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_507")"\n"
+"\t"STUB_ASM_CODE("507")"\n"
+
+".hidden ""shared_dispatch_stub_508""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_508")"\n"
+"\t"STUB_ASM_CODE("508")"\n"
+
+".hidden ""shared_dispatch_stub_509""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_509")"\n"
+"\t"STUB_ASM_CODE("509")"\n"
+
+".hidden ""shared_dispatch_stub_510""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_510")"\n"
+"\t"STUB_ASM_CODE("510")"\n"
+
+".hidden ""shared_dispatch_stub_511""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_511")"\n"
+"\t"STUB_ASM_CODE("511")"\n"
+
+".hidden ""shared_dispatch_stub_512""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_512")"\n"
+"\t"STUB_ASM_CODE("512")"\n"
+
+".hidden ""shared_dispatch_stub_513""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_513")"\n"
+"\t"STUB_ASM_CODE("513")"\n"
+
+".hidden ""shared_dispatch_stub_514""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_514")"\n"
+"\t"STUB_ASM_CODE("514")"\n"
+
+".hidden ""shared_dispatch_stub_515""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_515")"\n"
+"\t"STUB_ASM_CODE("515")"\n"
+
+".hidden ""shared_dispatch_stub_516""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_516")"\n"
+"\t"STUB_ASM_CODE("516")"\n"
+
+".hidden ""shared_dispatch_stub_517""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_517")"\n"
+"\t"STUB_ASM_CODE("517")"\n"
+
+".hidden ""shared_dispatch_stub_518""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_518")"\n"
+"\t"STUB_ASM_CODE("518")"\n"
+
+".hidden ""shared_dispatch_stub_519""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_519")"\n"
+"\t"STUB_ASM_CODE("519")"\n"
+
+".hidden ""shared_dispatch_stub_520""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_520")"\n"
+"\t"STUB_ASM_CODE("520")"\n"
+
+".hidden ""shared_dispatch_stub_521""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_521")"\n"
+"\t"STUB_ASM_CODE("521")"\n"
+
+".hidden ""shared_dispatch_stub_522""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_522")"\n"
+"\t"STUB_ASM_CODE("522")"\n"
+
+".hidden ""shared_dispatch_stub_523""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_523")"\n"
+"\t"STUB_ASM_CODE("523")"\n"
+
+".hidden ""shared_dispatch_stub_524""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_524")"\n"
+"\t"STUB_ASM_CODE("524")"\n"
+
+".hidden ""shared_dispatch_stub_525""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_525")"\n"
+"\t"STUB_ASM_CODE("525")"\n"
+
+".hidden ""shared_dispatch_stub_526""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_526")"\n"
+"\t"STUB_ASM_CODE("526")"\n"
+
+".hidden ""shared_dispatch_stub_527""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_527")"\n"
+"\t"STUB_ASM_CODE("527")"\n"
+
+".hidden ""shared_dispatch_stub_528""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_528")"\n"
+"\t"STUB_ASM_CODE("528")"\n"
+
+".hidden ""shared_dispatch_stub_529""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_529")"\n"
+"\t"STUB_ASM_CODE("529")"\n"
+
+".hidden ""shared_dispatch_stub_530""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_530")"\n"
+"\t"STUB_ASM_CODE("530")"\n"
+
+".hidden ""shared_dispatch_stub_531""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_531")"\n"
+"\t"STUB_ASM_CODE("531")"\n"
+
+".hidden ""shared_dispatch_stub_532""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_532")"\n"
+"\t"STUB_ASM_CODE("532")"\n"
+
+".hidden ""shared_dispatch_stub_533""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_533")"\n"
+"\t"STUB_ASM_CODE("533")"\n"
+
+".hidden ""shared_dispatch_stub_534""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_534")"\n"
+"\t"STUB_ASM_CODE("534")"\n"
+
+".hidden ""shared_dispatch_stub_535""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_535")"\n"
+"\t"STUB_ASM_CODE("535")"\n"
+
+".hidden ""shared_dispatch_stub_536""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_536")"\n"
+"\t"STUB_ASM_CODE("536")"\n"
+
+".hidden ""shared_dispatch_stub_537""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_537")"\n"
+"\t"STUB_ASM_CODE("537")"\n"
+
+".hidden ""shared_dispatch_stub_538""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_538")"\n"
+"\t"STUB_ASM_CODE("538")"\n"
+
+".hidden ""shared_dispatch_stub_539""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_539")"\n"
+"\t"STUB_ASM_CODE("539")"\n"
+
+".hidden ""shared_dispatch_stub_540""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_540")"\n"
+"\t"STUB_ASM_CODE("540")"\n"
+
+".hidden ""shared_dispatch_stub_541""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_541")"\n"
+"\t"STUB_ASM_CODE("541")"\n"
+
+".hidden ""shared_dispatch_stub_542""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_542")"\n"
+"\t"STUB_ASM_CODE("542")"\n"
+
+".hidden ""shared_dispatch_stub_543""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_543")"\n"
+"\t"STUB_ASM_CODE("543")"\n"
+
+".hidden ""shared_dispatch_stub_544""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_544")"\n"
+"\t"STUB_ASM_CODE("544")"\n"
+
+".hidden ""shared_dispatch_stub_545""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_545")"\n"
+"\t"STUB_ASM_CODE("545")"\n"
+
+".hidden ""shared_dispatch_stub_546""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_546")"\n"
+"\t"STUB_ASM_CODE("546")"\n"
+
+".hidden ""shared_dispatch_stub_547""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_547")"\n"
+"\t"STUB_ASM_CODE("547")"\n"
+
+".hidden ""shared_dispatch_stub_548""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_548")"\n"
+"\t"STUB_ASM_CODE("548")"\n"
+
+".hidden ""shared_dispatch_stub_549""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_549")"\n"
+"\t"STUB_ASM_CODE("549")"\n"
+
+".hidden ""shared_dispatch_stub_550""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_550")"\n"
+"\t"STUB_ASM_CODE("550")"\n"
+
+".hidden ""shared_dispatch_stub_551""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_551")"\n"
+"\t"STUB_ASM_CODE("551")"\n"
+
+".hidden ""shared_dispatch_stub_552""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_552")"\n"
+"\t"STUB_ASM_CODE("552")"\n"
+
+".hidden ""shared_dispatch_stub_553""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_553")"\n"
+"\t"STUB_ASM_CODE("553")"\n"
+
+".hidden ""shared_dispatch_stub_554""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_554")"\n"
+"\t"STUB_ASM_CODE("554")"\n"
+
+".hidden ""shared_dispatch_stub_555""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_555")"\n"
+"\t"STUB_ASM_CODE("555")"\n"
+
+".hidden ""shared_dispatch_stub_556""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_556")"\n"
+"\t"STUB_ASM_CODE("556")"\n"
+
+".hidden ""shared_dispatch_stub_557""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_557")"\n"
+"\t"STUB_ASM_CODE("557")"\n"
+
+".hidden ""shared_dispatch_stub_558""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_558")"\n"
+"\t"STUB_ASM_CODE("558")"\n"
+
+".hidden ""shared_dispatch_stub_559""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_559")"\n"
+"\t"STUB_ASM_CODE("559")"\n"
+
+".hidden ""shared_dispatch_stub_560""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_560")"\n"
+"\t"STUB_ASM_CODE("560")"\n"
+
+".hidden ""shared_dispatch_stub_561""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_561")"\n"
+"\t"STUB_ASM_CODE("561")"\n"
+
+".hidden ""shared_dispatch_stub_562""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_562")"\n"
+"\t"STUB_ASM_CODE("562")"\n"
+
+".hidden ""shared_dispatch_stub_563""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_563")"\n"
+"\t"STUB_ASM_CODE("563")"\n"
+
+".hidden ""shared_dispatch_stub_564""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_564")"\n"
+"\t"STUB_ASM_CODE("564")"\n"
+
+".hidden ""shared_dispatch_stub_565""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_565")"\n"
+"\t"STUB_ASM_CODE("565")"\n"
+
+".hidden ""shared_dispatch_stub_566""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_566")"\n"
+"\t"STUB_ASM_CODE("566")"\n"
+
+".hidden ""shared_dispatch_stub_567""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_567")"\n"
+"\t"STUB_ASM_CODE("567")"\n"
+
+".hidden ""shared_dispatch_stub_568""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_568")"\n"
+"\t"STUB_ASM_CODE("568")"\n"
+
+".hidden ""shared_dispatch_stub_569""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_569")"\n"
+"\t"STUB_ASM_CODE("569")"\n"
+
+".hidden ""shared_dispatch_stub_570""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_570")"\n"
+"\t"STUB_ASM_CODE("570")"\n"
+
+".hidden ""shared_dispatch_stub_571""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_571")"\n"
+"\t"STUB_ASM_CODE("571")"\n"
+
+".hidden ""shared_dispatch_stub_572""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_572")"\n"
+"\t"STUB_ASM_CODE("572")"\n"
+
+".hidden ""shared_dispatch_stub_573""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_573")"\n"
+"\t"STUB_ASM_CODE("573")"\n"
+
+".hidden ""shared_dispatch_stub_574""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_574")"\n"
+"\t"STUB_ASM_CODE("574")"\n"
+
+".hidden ""shared_dispatch_stub_575""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_575")"\n"
+"\t"STUB_ASM_CODE("575")"\n"
+
+".hidden ""shared_dispatch_stub_576""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_576")"\n"
+"\t"STUB_ASM_CODE("576")"\n"
+
+".hidden ""shared_dispatch_stub_577""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_577")"\n"
+"\t"STUB_ASM_CODE("577")"\n"
+
+".hidden ""shared_dispatch_stub_578""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_578")"\n"
+"\t"STUB_ASM_CODE("578")"\n"
+
+".hidden ""shared_dispatch_stub_579""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_579")"\n"
+"\t"STUB_ASM_CODE("579")"\n"
+
+".hidden ""shared_dispatch_stub_580""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_580")"\n"
+"\t"STUB_ASM_CODE("580")"\n"
+
+".hidden ""shared_dispatch_stub_581""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_581")"\n"
+"\t"STUB_ASM_CODE("581")"\n"
+
+".hidden ""shared_dispatch_stub_582""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_582")"\n"
+"\t"STUB_ASM_CODE("582")"\n"
+
+".hidden ""shared_dispatch_stub_583""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_583")"\n"
+"\t"STUB_ASM_CODE("583")"\n"
+
+".hidden ""shared_dispatch_stub_584""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_584")"\n"
+"\t"STUB_ASM_CODE("584")"\n"
+
+".hidden ""shared_dispatch_stub_585""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_585")"\n"
+"\t"STUB_ASM_CODE("585")"\n"
+
+".hidden ""shared_dispatch_stub_586""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_586")"\n"
+"\t"STUB_ASM_CODE("586")"\n"
+
+".hidden ""shared_dispatch_stub_587""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_587")"\n"
+"\t"STUB_ASM_CODE("587")"\n"
+
+".hidden ""shared_dispatch_stub_588""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_588")"\n"
+"\t"STUB_ASM_CODE("588")"\n"
+
+".hidden ""shared_dispatch_stub_589""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_589")"\n"
+"\t"STUB_ASM_CODE("589")"\n"
+
+".hidden ""shared_dispatch_stub_590""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_590")"\n"
+"\t"STUB_ASM_CODE("590")"\n"
+
+".hidden ""shared_dispatch_stub_591""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_591")"\n"
+"\t"STUB_ASM_CODE("591")"\n"
+
+".hidden ""shared_dispatch_stub_592""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_592")"\n"
+"\t"STUB_ASM_CODE("592")"\n"
+
+".hidden ""shared_dispatch_stub_593""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_593")"\n"
+"\t"STUB_ASM_CODE("593")"\n"
+
+".hidden ""shared_dispatch_stub_594""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_594")"\n"
+"\t"STUB_ASM_CODE("594")"\n"
+
+".hidden ""shared_dispatch_stub_595""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_595")"\n"
+"\t"STUB_ASM_CODE("595")"\n"
+
+".hidden ""shared_dispatch_stub_596""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_596")"\n"
+"\t"STUB_ASM_CODE("596")"\n"
+
+".hidden ""shared_dispatch_stub_597""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_597")"\n"
+"\t"STUB_ASM_CODE("597")"\n"
+
+".hidden ""shared_dispatch_stub_598""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_598")"\n"
+"\t"STUB_ASM_CODE("598")"\n"
+
+".hidden ""shared_dispatch_stub_599""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_599")"\n"
+"\t"STUB_ASM_CODE("599")"\n"
+
+".hidden ""shared_dispatch_stub_600""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_600")"\n"
+"\t"STUB_ASM_CODE("600")"\n"
+
+".hidden ""shared_dispatch_stub_601""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_601")"\n"
+"\t"STUB_ASM_CODE("601")"\n"
+
+".hidden ""shared_dispatch_stub_602""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_602")"\n"
+"\t"STUB_ASM_CODE("602")"\n"
+
+".hidden ""shared_dispatch_stub_603""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_603")"\n"
+"\t"STUB_ASM_CODE("603")"\n"
+
+".hidden ""shared_dispatch_stub_604""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_604")"\n"
+"\t"STUB_ASM_CODE("604")"\n"
+
+".hidden ""shared_dispatch_stub_605""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_605")"\n"
+"\t"STUB_ASM_CODE("605")"\n"
+
+".hidden ""shared_dispatch_stub_606""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_606")"\n"
+"\t"STUB_ASM_CODE("606")"\n"
+
+".hidden ""shared_dispatch_stub_607""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_607")"\n"
+"\t"STUB_ASM_CODE("607")"\n"
+
+".hidden ""shared_dispatch_stub_608""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_608")"\n"
+"\t"STUB_ASM_CODE("608")"\n"
+
+".hidden ""shared_dispatch_stub_609""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_609")"\n"
+"\t"STUB_ASM_CODE("609")"\n"
+
+".hidden ""shared_dispatch_stub_610""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_610")"\n"
+"\t"STUB_ASM_CODE("610")"\n"
+
+".hidden ""shared_dispatch_stub_611""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_611")"\n"
+"\t"STUB_ASM_CODE("611")"\n"
+
+".hidden ""shared_dispatch_stub_612""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_612")"\n"
+"\t"STUB_ASM_CODE("612")"\n"
+
+".hidden ""shared_dispatch_stub_613""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_613")"\n"
+"\t"STUB_ASM_CODE("613")"\n"
+
+".hidden ""shared_dispatch_stub_614""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_614")"\n"
+"\t"STUB_ASM_CODE("614")"\n"
+
+".hidden ""shared_dispatch_stub_615""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_615")"\n"
+"\t"STUB_ASM_CODE("615")"\n"
+
+".hidden ""shared_dispatch_stub_616""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_616")"\n"
+"\t"STUB_ASM_CODE("616")"\n"
+
+".hidden ""shared_dispatch_stub_617""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_617")"\n"
+"\t"STUB_ASM_CODE("617")"\n"
+
+".hidden ""shared_dispatch_stub_618""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_618")"\n"
+"\t"STUB_ASM_CODE("618")"\n"
+
+".hidden ""shared_dispatch_stub_619""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_619")"\n"
+"\t"STUB_ASM_CODE("619")"\n"
+
+".hidden ""shared_dispatch_stub_620""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_620")"\n"
+"\t"STUB_ASM_CODE("620")"\n"
+
+".hidden ""shared_dispatch_stub_621""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_621")"\n"
+"\t"STUB_ASM_CODE("621")"\n"
+
+".hidden ""shared_dispatch_stub_622""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_622")"\n"
+"\t"STUB_ASM_CODE("622")"\n"
+
+".hidden ""shared_dispatch_stub_623""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_623")"\n"
+"\t"STUB_ASM_CODE("623")"\n"
+
+".hidden ""shared_dispatch_stub_624""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_624")"\n"
+"\t"STUB_ASM_CODE("624")"\n"
+
+".hidden ""shared_dispatch_stub_625""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_625")"\n"
+"\t"STUB_ASM_CODE("625")"\n"
+
+".hidden ""shared_dispatch_stub_626""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_626")"\n"
+"\t"STUB_ASM_CODE("626")"\n"
+
+".hidden ""shared_dispatch_stub_627""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_627")"\n"
+"\t"STUB_ASM_CODE("627")"\n"
+
+".hidden ""shared_dispatch_stub_628""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_628")"\n"
+"\t"STUB_ASM_CODE("628")"\n"
+
+".hidden ""shared_dispatch_stub_629""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_629")"\n"
+"\t"STUB_ASM_CODE("629")"\n"
+
+".hidden ""shared_dispatch_stub_630""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_630")"\n"
+"\t"STUB_ASM_CODE("630")"\n"
+
+".hidden ""shared_dispatch_stub_631""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_631")"\n"
+"\t"STUB_ASM_CODE("631")"\n"
+
+".hidden ""shared_dispatch_stub_632""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_632")"\n"
+"\t"STUB_ASM_CODE("632")"\n"
+
+".hidden ""shared_dispatch_stub_633""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_633")"\n"
+"\t"STUB_ASM_CODE("633")"\n"
+
+".hidden ""shared_dispatch_stub_634""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_634")"\n"
+"\t"STUB_ASM_CODE("634")"\n"
+
+".hidden ""shared_dispatch_stub_635""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_635")"\n"
+"\t"STUB_ASM_CODE("635")"\n"
+
+".hidden ""shared_dispatch_stub_636""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_636")"\n"
+"\t"STUB_ASM_CODE("636")"\n"
+
+".hidden ""shared_dispatch_stub_637""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_637")"\n"
+"\t"STUB_ASM_CODE("637")"\n"
+
+".hidden ""shared_dispatch_stub_638""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_638")"\n"
+"\t"STUB_ASM_CODE("638")"\n"
+
+".hidden ""shared_dispatch_stub_639""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_639")"\n"
+"\t"STUB_ASM_CODE("639")"\n"
+
+".hidden ""shared_dispatch_stub_640""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_640")"\n"
+"\t"STUB_ASM_CODE("640")"\n"
+
+".hidden ""shared_dispatch_stub_641""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_641")"\n"
+"\t"STUB_ASM_CODE("641")"\n"
+
+".hidden ""shared_dispatch_stub_642""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_642")"\n"
+"\t"STUB_ASM_CODE("642")"\n"
+
+".hidden ""shared_dispatch_stub_643""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_643")"\n"
+"\t"STUB_ASM_CODE("643")"\n"
+
+".hidden ""shared_dispatch_stub_644""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_644")"\n"
+"\t"STUB_ASM_CODE("644")"\n"
+
+".hidden ""shared_dispatch_stub_645""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_645")"\n"
+"\t"STUB_ASM_CODE("645")"\n"
+
+".hidden ""shared_dispatch_stub_646""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_646")"\n"
+"\t"STUB_ASM_CODE("646")"\n"
+
+".hidden ""shared_dispatch_stub_647""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_647")"\n"
+"\t"STUB_ASM_CODE("647")"\n"
+
+".hidden ""shared_dispatch_stub_648""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_648")"\n"
+"\t"STUB_ASM_CODE("648")"\n"
+
+".hidden ""shared_dispatch_stub_649""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_649")"\n"
+"\t"STUB_ASM_CODE("649")"\n"
+
+".hidden ""shared_dispatch_stub_650""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_650")"\n"
+"\t"STUB_ASM_CODE("650")"\n"
+
+".hidden ""shared_dispatch_stub_651""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_651")"\n"
+"\t"STUB_ASM_CODE("651")"\n"
+
+".hidden ""shared_dispatch_stub_652""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_652")"\n"
+"\t"STUB_ASM_CODE("652")"\n"
+
+".hidden ""shared_dispatch_stub_653""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_653")"\n"
+"\t"STUB_ASM_CODE("653")"\n"
+
+".hidden ""shared_dispatch_stub_654""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_654")"\n"
+"\t"STUB_ASM_CODE("654")"\n"
+
+".hidden ""shared_dispatch_stub_655""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_655")"\n"
+"\t"STUB_ASM_CODE("655")"\n"
+
+".hidden ""shared_dispatch_stub_656""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_656")"\n"
+"\t"STUB_ASM_CODE("656")"\n"
+
+".hidden ""shared_dispatch_stub_657""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_657")"\n"
+"\t"STUB_ASM_CODE("657")"\n"
+
+".hidden ""shared_dispatch_stub_658""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_658")"\n"
+"\t"STUB_ASM_CODE("658")"\n"
+
+".hidden ""shared_dispatch_stub_659""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_659")"\n"
+"\t"STUB_ASM_CODE("659")"\n"
+
+".hidden ""shared_dispatch_stub_660""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_660")"\n"
+"\t"STUB_ASM_CODE("660")"\n"
+
+".hidden ""shared_dispatch_stub_661""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_661")"\n"
+"\t"STUB_ASM_CODE("661")"\n"
+
+".hidden ""shared_dispatch_stub_662""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_662")"\n"
+"\t"STUB_ASM_CODE("662")"\n"
+
+".hidden ""shared_dispatch_stub_663""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_663")"\n"
+"\t"STUB_ASM_CODE("663")"\n"
+
+".hidden ""shared_dispatch_stub_664""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_664")"\n"
+"\t"STUB_ASM_CODE("664")"\n"
+
+".hidden ""shared_dispatch_stub_665""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_665")"\n"
+"\t"STUB_ASM_CODE("665")"\n"
+
+".hidden ""shared_dispatch_stub_666""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_666")"\n"
+"\t"STUB_ASM_CODE("666")"\n"
+
+".hidden ""shared_dispatch_stub_667""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_667")"\n"
+"\t"STUB_ASM_CODE("667")"\n"
+
+".hidden ""shared_dispatch_stub_668""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_668")"\n"
+"\t"STUB_ASM_CODE("668")"\n"
+
+".hidden ""shared_dispatch_stub_669""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_669")"\n"
+"\t"STUB_ASM_CODE("669")"\n"
+
+".hidden ""shared_dispatch_stub_670""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_670")"\n"
+"\t"STUB_ASM_CODE("670")"\n"
+
+".hidden ""shared_dispatch_stub_671""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_671")"\n"
+"\t"STUB_ASM_CODE("671")"\n"
+
+".hidden ""shared_dispatch_stub_672""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_672")"\n"
+"\t"STUB_ASM_CODE("672")"\n"
+
+".hidden ""shared_dispatch_stub_673""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_673")"\n"
+"\t"STUB_ASM_CODE("673")"\n"
+
+".hidden ""shared_dispatch_stub_674""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_674")"\n"
+"\t"STUB_ASM_CODE("674")"\n"
+
+".hidden ""shared_dispatch_stub_675""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_675")"\n"
+"\t"STUB_ASM_CODE("675")"\n"
+
+".hidden ""shared_dispatch_stub_676""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_676")"\n"
+"\t"STUB_ASM_CODE("676")"\n"
+
+".hidden ""shared_dispatch_stub_677""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_677")"\n"
+"\t"STUB_ASM_CODE("677")"\n"
+
+".hidden ""shared_dispatch_stub_678""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_678")"\n"
+"\t"STUB_ASM_CODE("678")"\n"
+
+".hidden ""shared_dispatch_stub_679""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_679")"\n"
+"\t"STUB_ASM_CODE("679")"\n"
+
+".hidden ""shared_dispatch_stub_680""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_680")"\n"
+"\t"STUB_ASM_CODE("680")"\n"
+
+".hidden ""shared_dispatch_stub_681""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_681")"\n"
+"\t"STUB_ASM_CODE("681")"\n"
+
+".hidden ""shared_dispatch_stub_682""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_682")"\n"
+"\t"STUB_ASM_CODE("682")"\n"
+
+".hidden ""shared_dispatch_stub_683""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_683")"\n"
+"\t"STUB_ASM_CODE("683")"\n"
+
+".hidden ""shared_dispatch_stub_684""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_684")"\n"
+"\t"STUB_ASM_CODE("684")"\n"
+
+".hidden ""shared_dispatch_stub_685""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_685")"\n"
+"\t"STUB_ASM_CODE("685")"\n"
+
+".hidden ""shared_dispatch_stub_686""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_686")"\n"
+"\t"STUB_ASM_CODE("686")"\n"
+
+".hidden ""shared_dispatch_stub_687""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_687")"\n"
+"\t"STUB_ASM_CODE("687")"\n"
+
+".hidden ""shared_dispatch_stub_688""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_688")"\n"
+"\t"STUB_ASM_CODE("688")"\n"
+
+".hidden ""shared_dispatch_stub_689""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_689")"\n"
+"\t"STUB_ASM_CODE("689")"\n"
+
+".hidden ""shared_dispatch_stub_690""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_690")"\n"
+"\t"STUB_ASM_CODE("690")"\n"
+
+".hidden ""shared_dispatch_stub_691""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_691")"\n"
+"\t"STUB_ASM_CODE("691")"\n"
+
+".hidden ""shared_dispatch_stub_692""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_692")"\n"
+"\t"STUB_ASM_CODE("692")"\n"
+
+".hidden ""shared_dispatch_stub_693""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_693")"\n"
+"\t"STUB_ASM_CODE("693")"\n"
+
+".hidden ""shared_dispatch_stub_694""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_694")"\n"
+"\t"STUB_ASM_CODE("694")"\n"
+
+".hidden ""shared_dispatch_stub_695""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_695")"\n"
+"\t"STUB_ASM_CODE("695")"\n"
+
+".hidden ""shared_dispatch_stub_696""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_696")"\n"
+"\t"STUB_ASM_CODE("696")"\n"
+
+".hidden ""shared_dispatch_stub_697""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_697")"\n"
+"\t"STUB_ASM_CODE("697")"\n"
+
+".hidden ""shared_dispatch_stub_698""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_698")"\n"
+"\t"STUB_ASM_CODE("698")"\n"
+
+".hidden ""shared_dispatch_stub_699""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_699")"\n"
+"\t"STUB_ASM_CODE("699")"\n"
+
+".hidden ""shared_dispatch_stub_700""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_700")"\n"
+"\t"STUB_ASM_CODE("700")"\n"
+
+".hidden ""shared_dispatch_stub_701""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_701")"\n"
+"\t"STUB_ASM_CODE("701")"\n"
+
+".hidden ""shared_dispatch_stub_702""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_702")"\n"
+"\t"STUB_ASM_CODE("702")"\n"
+
+".hidden ""shared_dispatch_stub_703""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_703")"\n"
+"\t"STUB_ASM_CODE("703")"\n"
+
+".hidden ""shared_dispatch_stub_704""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_704")"\n"
+"\t"STUB_ASM_CODE("704")"\n"
+
+".hidden ""shared_dispatch_stub_705""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_705")"\n"
+"\t"STUB_ASM_CODE("705")"\n"
+
+".hidden ""shared_dispatch_stub_706""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_706")"\n"
+"\t"STUB_ASM_CODE("706")"\n"
+
+".hidden ""shared_dispatch_stub_707""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_707")"\n"
+"\t"STUB_ASM_CODE("707")"\n"
+
+".hidden ""shared_dispatch_stub_708""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_708")"\n"
+"\t"STUB_ASM_CODE("708")"\n"
+
+".hidden ""shared_dispatch_stub_709""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_709")"\n"
+"\t"STUB_ASM_CODE("709")"\n"
+
+".hidden ""shared_dispatch_stub_710""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_710")"\n"
+"\t"STUB_ASM_CODE("710")"\n"
+
+".hidden ""shared_dispatch_stub_711""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_711")"\n"
+"\t"STUB_ASM_CODE("711")"\n"
+
+".hidden ""shared_dispatch_stub_712""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_712")"\n"
+"\t"STUB_ASM_CODE("712")"\n"
+
+".hidden ""shared_dispatch_stub_713""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_713")"\n"
+"\t"STUB_ASM_CODE("713")"\n"
+
+".hidden ""shared_dispatch_stub_714""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_714")"\n"
+"\t"STUB_ASM_CODE("714")"\n"
+
+".hidden ""shared_dispatch_stub_715""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_715")"\n"
+"\t"STUB_ASM_CODE("715")"\n"
+
+".hidden ""shared_dispatch_stub_716""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_716")"\n"
+"\t"STUB_ASM_CODE("716")"\n"
+
+".hidden ""shared_dispatch_stub_717""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_717")"\n"
+"\t"STUB_ASM_CODE("717")"\n"
+
+".hidden ""shared_dispatch_stub_718""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_718")"\n"
+"\t"STUB_ASM_CODE("718")"\n"
+
+".hidden ""shared_dispatch_stub_719""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_719")"\n"
+"\t"STUB_ASM_CODE("719")"\n"
+
+".hidden ""shared_dispatch_stub_720""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_720")"\n"
+"\t"STUB_ASM_CODE("720")"\n"
+
+".hidden ""shared_dispatch_stub_721""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_721")"\n"
+"\t"STUB_ASM_CODE("721")"\n"
+
+".hidden ""shared_dispatch_stub_722""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_722")"\n"
+"\t"STUB_ASM_CODE("722")"\n"
+
+".hidden ""shared_dispatch_stub_723""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_723")"\n"
+"\t"STUB_ASM_CODE("723")"\n"
+
+".hidden ""shared_dispatch_stub_724""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_724")"\n"
+"\t"STUB_ASM_CODE("724")"\n"
+
+".hidden ""shared_dispatch_stub_725""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_725")"\n"
+"\t"STUB_ASM_CODE("725")"\n"
+
+".hidden ""shared_dispatch_stub_726""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_726")"\n"
+"\t"STUB_ASM_CODE("726")"\n"
+
+".hidden ""shared_dispatch_stub_727""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_727")"\n"
+"\t"STUB_ASM_CODE("727")"\n"
+
+".hidden ""shared_dispatch_stub_728""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_728")"\n"
+"\t"STUB_ASM_CODE("728")"\n"
+
+".hidden ""shared_dispatch_stub_729""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_729")"\n"
+"\t"STUB_ASM_CODE("729")"\n"
+
+".hidden ""shared_dispatch_stub_730""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_730")"\n"
+"\t"STUB_ASM_CODE("730")"\n"
+
+".hidden ""shared_dispatch_stub_731""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_731")"\n"
+"\t"STUB_ASM_CODE("731")"\n"
+
+".hidden ""shared_dispatch_stub_732""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_732")"\n"
+"\t"STUB_ASM_CODE("732")"\n"
+
+".hidden ""shared_dispatch_stub_733""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_733")"\n"
+"\t"STUB_ASM_CODE("733")"\n"
+
+".hidden ""shared_dispatch_stub_734""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_734")"\n"
+"\t"STUB_ASM_CODE("734")"\n"
+
+".hidden ""shared_dispatch_stub_735""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_735")"\n"
+"\t"STUB_ASM_CODE("735")"\n"
+
+".hidden ""shared_dispatch_stub_736""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_736")"\n"
+"\t"STUB_ASM_CODE("736")"\n"
+
+".hidden ""shared_dispatch_stub_737""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_737")"\n"
+"\t"STUB_ASM_CODE("737")"\n"
+
+".hidden ""shared_dispatch_stub_738""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_738")"\n"
+"\t"STUB_ASM_CODE("738")"\n"
+
+".hidden ""shared_dispatch_stub_739""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_739")"\n"
+"\t"STUB_ASM_CODE("739")"\n"
+
+".hidden ""shared_dispatch_stub_740""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_740")"\n"
+"\t"STUB_ASM_CODE("740")"\n"
+
+".hidden ""shared_dispatch_stub_741""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_741")"\n"
+"\t"STUB_ASM_CODE("741")"\n"
+
+".hidden ""shared_dispatch_stub_742""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_742")"\n"
+"\t"STUB_ASM_CODE("742")"\n"
+
+".hidden ""shared_dispatch_stub_743""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_743")"\n"
+"\t"STUB_ASM_CODE("743")"\n"
+
+".hidden ""shared_dispatch_stub_744""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_744")"\n"
+"\t"STUB_ASM_CODE("744")"\n"
+
+".hidden ""shared_dispatch_stub_745""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_745")"\n"
+"\t"STUB_ASM_CODE("745")"\n"
+
+".hidden ""shared_dispatch_stub_746""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_746")"\n"
+"\t"STUB_ASM_CODE("746")"\n"
+
+".hidden ""shared_dispatch_stub_747""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_747")"\n"
+"\t"STUB_ASM_CODE("747")"\n"
+
+".hidden ""shared_dispatch_stub_748""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_748")"\n"
+"\t"STUB_ASM_CODE("748")"\n"
+
+".hidden ""shared_dispatch_stub_749""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_749")"\n"
+"\t"STUB_ASM_CODE("749")"\n"
+
+".hidden ""shared_dispatch_stub_750""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_750")"\n"
+"\t"STUB_ASM_CODE("750")"\n"
+
+".hidden ""shared_dispatch_stub_751""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_751")"\n"
+"\t"STUB_ASM_CODE("751")"\n"
+
+".hidden ""shared_dispatch_stub_752""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_752")"\n"
+"\t"STUB_ASM_CODE("752")"\n"
+
+".hidden ""shared_dispatch_stub_753""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_753")"\n"
+"\t"STUB_ASM_CODE("753")"\n"
+
+".hidden ""shared_dispatch_stub_754""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_754")"\n"
+"\t"STUB_ASM_CODE("754")"\n"
+
+".hidden ""shared_dispatch_stub_755""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_755")"\n"
+"\t"STUB_ASM_CODE("755")"\n"
+
+".hidden ""shared_dispatch_stub_756""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_756")"\n"
+"\t"STUB_ASM_CODE("756")"\n"
+
+".hidden ""shared_dispatch_stub_757""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_757")"\n"
+"\t"STUB_ASM_CODE("757")"\n"
+
+".hidden ""shared_dispatch_stub_758""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_758")"\n"
+"\t"STUB_ASM_CODE("758")"\n"
+
+".hidden ""shared_dispatch_stub_759""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_759")"\n"
+"\t"STUB_ASM_CODE("759")"\n"
+
+".hidden ""shared_dispatch_stub_760""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_760")"\n"
+"\t"STUB_ASM_CODE("760")"\n"
+
+".hidden ""shared_dispatch_stub_761""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_761")"\n"
+"\t"STUB_ASM_CODE("761")"\n"
+
+".hidden ""shared_dispatch_stub_762""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_762")"\n"
+"\t"STUB_ASM_CODE("762")"\n"
+
+".hidden ""shared_dispatch_stub_763""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_763")"\n"
+"\t"STUB_ASM_CODE("763")"\n"
+
+".hidden ""shared_dispatch_stub_764""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_764")"\n"
+"\t"STUB_ASM_CODE("764")"\n"
+
+".hidden ""shared_dispatch_stub_765""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_765")"\n"
+"\t"STUB_ASM_CODE("765")"\n"
+
+".hidden ""shared_dispatch_stub_766""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_766")"\n"
+"\t"STUB_ASM_CODE("766")"\n"
+
+".hidden ""shared_dispatch_stub_767""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_767")"\n"
+"\t"STUB_ASM_CODE("767")"\n"
+
+".hidden ""shared_dispatch_stub_768""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_768")"\n"
+"\t"STUB_ASM_CODE("768")"\n"
+
+".hidden ""shared_dispatch_stub_769""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_769")"\n"
+"\t"STUB_ASM_CODE("769")"\n"
+
+".hidden ""shared_dispatch_stub_770""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_770")"\n"
+"\t"STUB_ASM_CODE("770")"\n"
+
+".hidden ""shared_dispatch_stub_771""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_771")"\n"
+"\t"STUB_ASM_CODE("771")"\n"
+
+".hidden ""shared_dispatch_stub_772""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_772")"\n"
+"\t"STUB_ASM_CODE("772")"\n"
+
+".hidden ""shared_dispatch_stub_773""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_773")"\n"
+"\t"STUB_ASM_CODE("773")"\n"
+
+".hidden ""shared_dispatch_stub_774""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_774")"\n"
+"\t"STUB_ASM_CODE("774")"\n"
+
+".hidden ""shared_dispatch_stub_775""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_775")"\n"
+"\t"STUB_ASM_CODE("775")"\n"
+
+".hidden ""shared_dispatch_stub_776""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_776")"\n"
+"\t"STUB_ASM_CODE("776")"\n"
+
+".hidden ""shared_dispatch_stub_777""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_777")"\n"
+"\t"STUB_ASM_CODE("777")"\n"
+
+".hidden ""shared_dispatch_stub_778""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_778")"\n"
+"\t"STUB_ASM_CODE("778")"\n"
+
+".hidden ""shared_dispatch_stub_779""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_779")"\n"
+"\t"STUB_ASM_CODE("779")"\n"
+
+".hidden ""shared_dispatch_stub_780""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_780")"\n"
+"\t"STUB_ASM_CODE("780")"\n"
+
+".hidden ""shared_dispatch_stub_781""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_781")"\n"
+"\t"STUB_ASM_CODE("781")"\n"
+
+".hidden ""shared_dispatch_stub_782""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_782")"\n"
+"\t"STUB_ASM_CODE("782")"\n"
+
+".hidden ""shared_dispatch_stub_783""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_783")"\n"
+"\t"STUB_ASM_CODE("783")"\n"
+
+".hidden ""shared_dispatch_stub_784""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_784")"\n"
+"\t"STUB_ASM_CODE("784")"\n"
+
+".hidden ""shared_dispatch_stub_785""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_785")"\n"
+"\t"STUB_ASM_CODE("785")"\n"
+
+".hidden ""shared_dispatch_stub_786""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_786")"\n"
+"\t"STUB_ASM_CODE("786")"\n"
+
+".hidden ""shared_dispatch_stub_787""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_787")"\n"
+"\t"STUB_ASM_CODE("787")"\n"
+
+".hidden ""shared_dispatch_stub_788""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_788")"\n"
+"\t"STUB_ASM_CODE("788")"\n"
+
+".hidden ""shared_dispatch_stub_789""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_789")"\n"
+"\t"STUB_ASM_CODE("789")"\n"
+
+".hidden ""shared_dispatch_stub_790""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_790")"\n"
+"\t"STUB_ASM_CODE("790")"\n"
+
+".hidden ""shared_dispatch_stub_791""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_791")"\n"
+"\t"STUB_ASM_CODE("791")"\n"
+
+".hidden ""shared_dispatch_stub_792""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_792")"\n"
+"\t"STUB_ASM_CODE("792")"\n"
+
+".hidden ""shared_dispatch_stub_793""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_793")"\n"
+"\t"STUB_ASM_CODE("793")"\n"
+
+".hidden ""shared_dispatch_stub_794""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_794")"\n"
+"\t"STUB_ASM_CODE("794")"\n"
+
+".hidden ""shared_dispatch_stub_795""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_795")"\n"
+"\t"STUB_ASM_CODE("795")"\n"
+
+".hidden ""shared_dispatch_stub_796""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_796")"\n"
+"\t"STUB_ASM_CODE("796")"\n"
+
+".hidden ""shared_dispatch_stub_797""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_797")"\n"
+"\t"STUB_ASM_CODE("797")"\n"
+
+".hidden ""shared_dispatch_stub_798""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_798")"\n"
+"\t"STUB_ASM_CODE("798")"\n"
+
+".hidden ""shared_dispatch_stub_799""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_799")"\n"
+"\t"STUB_ASM_CODE("799")"\n"
+
+".hidden ""shared_dispatch_stub_800""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_800")"\n"
+"\t"STUB_ASM_CODE("800")"\n"
+
+".hidden ""shared_dispatch_stub_801""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_801")"\n"
+"\t"STUB_ASM_CODE("801")"\n"
+
+".hidden ""shared_dispatch_stub_802""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_802")"\n"
+"\t"STUB_ASM_CODE("802")"\n"
+
+".hidden ""shared_dispatch_stub_803""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_803")"\n"
+"\t"STUB_ASM_CODE("803")"\n"
+
+".hidden ""shared_dispatch_stub_804""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_804")"\n"
+"\t"STUB_ASM_CODE("804")"\n"
+
+".hidden ""shared_dispatch_stub_805""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_805")"\n"
+"\t"STUB_ASM_CODE("805")"\n"
+
+".hidden ""shared_dispatch_stub_806""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_806")"\n"
+"\t"STUB_ASM_CODE("806")"\n"
+
+".hidden ""shared_dispatch_stub_807""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_807")"\n"
+"\t"STUB_ASM_CODE("807")"\n"
+
+".hidden ""shared_dispatch_stub_808""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_808")"\n"
+"\t"STUB_ASM_CODE("808")"\n"
+
+".hidden ""shared_dispatch_stub_809""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_809")"\n"
+"\t"STUB_ASM_CODE("809")"\n"
+
+".hidden ""shared_dispatch_stub_810""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_810")"\n"
+"\t"STUB_ASM_CODE("810")"\n"
+
+".hidden ""shared_dispatch_stub_811""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_811")"\n"
+"\t"STUB_ASM_CODE("811")"\n"
+
+".hidden ""shared_dispatch_stub_812""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_812")"\n"
+"\t"STUB_ASM_CODE("812")"\n"
+
+".hidden ""shared_dispatch_stub_813""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_813")"\n"
+"\t"STUB_ASM_CODE("813")"\n"
+
+".hidden ""shared_dispatch_stub_814""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_814")"\n"
+"\t"STUB_ASM_CODE("814")"\n"
+
+".hidden ""shared_dispatch_stub_815""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_815")"\n"
+"\t"STUB_ASM_CODE("815")"\n"
+
+".hidden ""shared_dispatch_stub_816""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_816")"\n"
+"\t"STUB_ASM_CODE("816")"\n"
+
+".hidden ""shared_dispatch_stub_817""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_817")"\n"
+"\t"STUB_ASM_CODE("817")"\n"
+
+".hidden ""shared_dispatch_stub_818""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_818")"\n"
+"\t"STUB_ASM_CODE("818")"\n"
+
+".hidden ""shared_dispatch_stub_819""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_819")"\n"
+"\t"STUB_ASM_CODE("819")"\n"
+
+".hidden ""shared_dispatch_stub_820""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_820")"\n"
+"\t"STUB_ASM_CODE("820")"\n"
+
+".hidden ""shared_dispatch_stub_821""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_821")"\n"
+"\t"STUB_ASM_CODE("821")"\n"
+
+".hidden ""shared_dispatch_stub_822""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_822")"\n"
+"\t"STUB_ASM_CODE("822")"\n"
+
+".hidden ""shared_dispatch_stub_823""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_823")"\n"
+"\t"STUB_ASM_CODE("823")"\n"
+
+".hidden ""shared_dispatch_stub_824""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_824")"\n"
+"\t"STUB_ASM_CODE("824")"\n"
+
+".hidden ""shared_dispatch_stub_825""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_825")"\n"
+"\t"STUB_ASM_CODE("825")"\n"
+
+".hidden ""shared_dispatch_stub_826""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_826")"\n"
+"\t"STUB_ASM_CODE("826")"\n"
+
+".hidden ""shared_dispatch_stub_827""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_827")"\n"
+"\t"STUB_ASM_CODE("827")"\n"
+
+".hidden ""shared_dispatch_stub_828""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_828")"\n"
+"\t"STUB_ASM_CODE("828")"\n"
+
+".hidden ""shared_dispatch_stub_829""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_829")"\n"
+"\t"STUB_ASM_CODE("829")"\n"
+
+".hidden ""shared_dispatch_stub_830""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_830")"\n"
+"\t"STUB_ASM_CODE("830")"\n"
+
+".hidden ""shared_dispatch_stub_831""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_831")"\n"
+"\t"STUB_ASM_CODE("831")"\n"
+
+".hidden ""shared_dispatch_stub_832""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_832")"\n"
+"\t"STUB_ASM_CODE("832")"\n"
+
+".hidden ""shared_dispatch_stub_833""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_833")"\n"
+"\t"STUB_ASM_CODE("833")"\n"
+
+".hidden ""shared_dispatch_stub_834""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_834")"\n"
+"\t"STUB_ASM_CODE("834")"\n"
+
+".hidden ""shared_dispatch_stub_835""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_835")"\n"
+"\t"STUB_ASM_CODE("835")"\n"
+
+".hidden ""shared_dispatch_stub_836""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_836")"\n"
+"\t"STUB_ASM_CODE("836")"\n"
+
+".hidden ""shared_dispatch_stub_837""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_837")"\n"
+"\t"STUB_ASM_CODE("837")"\n"
+
+".hidden ""shared_dispatch_stub_838""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_838")"\n"
+"\t"STUB_ASM_CODE("838")"\n"
+
+".hidden ""shared_dispatch_stub_839""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_839")"\n"
+"\t"STUB_ASM_CODE("839")"\n"
+
+".hidden ""shared_dispatch_stub_840""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_840")"\n"
+"\t"STUB_ASM_CODE("840")"\n"
+
+".hidden ""shared_dispatch_stub_841""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_841")"\n"
+"\t"STUB_ASM_CODE("841")"\n"
+
+".hidden ""shared_dispatch_stub_842""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_842")"\n"
+"\t"STUB_ASM_CODE("842")"\n"
+
+".hidden ""shared_dispatch_stub_843""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_843")"\n"
+"\t"STUB_ASM_CODE("843")"\n"
+
+".hidden ""shared_dispatch_stub_844""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_844")"\n"
+"\t"STUB_ASM_CODE("844")"\n"
+
+".hidden ""shared_dispatch_stub_845""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_845")"\n"
+"\t"STUB_ASM_CODE("845")"\n"
+
+".hidden ""shared_dispatch_stub_846""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_846")"\n"
+"\t"STUB_ASM_CODE("846")"\n"
+
+".hidden ""shared_dispatch_stub_847""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_847")"\n"
+"\t"STUB_ASM_CODE("847")"\n"
+
+".hidden ""shared_dispatch_stub_848""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_848")"\n"
+"\t"STUB_ASM_CODE("848")"\n"
+
+".hidden ""shared_dispatch_stub_849""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_849")"\n"
+"\t"STUB_ASM_CODE("849")"\n"
+
+".hidden ""shared_dispatch_stub_850""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_850")"\n"
+"\t"STUB_ASM_CODE("850")"\n"
+
+".hidden ""shared_dispatch_stub_851""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_851")"\n"
+"\t"STUB_ASM_CODE("851")"\n"
+
+".hidden ""shared_dispatch_stub_852""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_852")"\n"
+"\t"STUB_ASM_CODE("852")"\n"
+
+".hidden ""shared_dispatch_stub_853""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_853")"\n"
+"\t"STUB_ASM_CODE("853")"\n"
+
+".hidden ""shared_dispatch_stub_854""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_854")"\n"
+"\t"STUB_ASM_CODE("854")"\n"
+
+".hidden ""shared_dispatch_stub_855""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_855")"\n"
+"\t"STUB_ASM_CODE("855")"\n"
+
+".hidden ""shared_dispatch_stub_856""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_856")"\n"
+"\t"STUB_ASM_CODE("856")"\n"
+
+".hidden ""shared_dispatch_stub_857""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_857")"\n"
+"\t"STUB_ASM_CODE("857")"\n"
+
+".hidden ""shared_dispatch_stub_858""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_858")"\n"
+"\t"STUB_ASM_CODE("858")"\n"
+
+".hidden ""shared_dispatch_stub_859""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_859")"\n"
+"\t"STUB_ASM_CODE("859")"\n"
+
+".hidden ""shared_dispatch_stub_860""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_860")"\n"
+"\t"STUB_ASM_CODE("860")"\n"
+
+".hidden ""shared_dispatch_stub_861""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_861")"\n"
+"\t"STUB_ASM_CODE("861")"\n"
+
+".hidden ""shared_dispatch_stub_862""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_862")"\n"
+"\t"STUB_ASM_CODE("862")"\n"
+
+".hidden ""shared_dispatch_stub_863""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_863")"\n"
+"\t"STUB_ASM_CODE("863")"\n"
+
+".hidden ""shared_dispatch_stub_864""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_864")"\n"
+"\t"STUB_ASM_CODE("864")"\n"
+
+".hidden ""shared_dispatch_stub_865""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_865")"\n"
+"\t"STUB_ASM_CODE("865")"\n"
+
+".hidden ""shared_dispatch_stub_866""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_866")"\n"
+"\t"STUB_ASM_CODE("866")"\n"
+
+".hidden ""shared_dispatch_stub_867""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_867")"\n"
+"\t"STUB_ASM_CODE("867")"\n"
+
+".hidden ""shared_dispatch_stub_868""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_868")"\n"
+"\t"STUB_ASM_CODE("868")"\n"
+
+".hidden ""shared_dispatch_stub_869""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_869")"\n"
+"\t"STUB_ASM_CODE("869")"\n"
+
+".hidden ""shared_dispatch_stub_870""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_870")"\n"
+"\t"STUB_ASM_CODE("870")"\n"
+
+".hidden ""shared_dispatch_stub_871""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_871")"\n"
+"\t"STUB_ASM_CODE("871")"\n"
+
+".hidden ""shared_dispatch_stub_872""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_872")"\n"
+"\t"STUB_ASM_CODE("872")"\n"
+
+".hidden ""shared_dispatch_stub_873""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_873")"\n"
+"\t"STUB_ASM_CODE("873")"\n"
+
+".hidden ""shared_dispatch_stub_874""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_874")"\n"
+"\t"STUB_ASM_CODE("874")"\n"
+
+".hidden ""shared_dispatch_stub_875""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_875")"\n"
+"\t"STUB_ASM_CODE("875")"\n"
+
+".hidden ""shared_dispatch_stub_876""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_876")"\n"
+"\t"STUB_ASM_CODE("876")"\n"
+
+".hidden ""shared_dispatch_stub_877""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_877")"\n"
+"\t"STUB_ASM_CODE("877")"\n"
+
+".hidden ""shared_dispatch_stub_878""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_878")"\n"
+"\t"STUB_ASM_CODE("878")"\n"
+
+".hidden ""shared_dispatch_stub_879""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_879")"\n"
+"\t"STUB_ASM_CODE("879")"\n"
+
+".hidden ""shared_dispatch_stub_880""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_880")"\n"
+"\t"STUB_ASM_CODE("880")"\n"
+
+".hidden ""shared_dispatch_stub_881""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_881")"\n"
+"\t"STUB_ASM_CODE("881")"\n"
+
+".hidden ""shared_dispatch_stub_882""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_882")"\n"
+"\t"STUB_ASM_CODE("882")"\n"
+
+".hidden ""shared_dispatch_stub_883""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_883")"\n"
+"\t"STUB_ASM_CODE("883")"\n"
+
+".hidden ""shared_dispatch_stub_884""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_884")"\n"
+"\t"STUB_ASM_CODE("884")"\n"
+
+".hidden ""shared_dispatch_stub_885""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_885")"\n"
+"\t"STUB_ASM_CODE("885")"\n"
+
+".hidden ""shared_dispatch_stub_886""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_886")"\n"
+"\t"STUB_ASM_CODE("886")"\n"
+
+".hidden ""shared_dispatch_stub_887""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_887")"\n"
+"\t"STUB_ASM_CODE("887")"\n"
+
+".hidden ""shared_dispatch_stub_888""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_888")"\n"
+"\t"STUB_ASM_CODE("888")"\n"
+
+".hidden ""shared_dispatch_stub_889""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_889")"\n"
+"\t"STUB_ASM_CODE("889")"\n"
+
+".hidden ""shared_dispatch_stub_890""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_890")"\n"
+"\t"STUB_ASM_CODE("890")"\n"
+
+".hidden ""shared_dispatch_stub_891""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_891")"\n"
+"\t"STUB_ASM_CODE("891")"\n"
+
+".hidden ""shared_dispatch_stub_892""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_892")"\n"
+"\t"STUB_ASM_CODE("892")"\n"
+
+".hidden ""shared_dispatch_stub_893""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_893")"\n"
+"\t"STUB_ASM_CODE("893")"\n"
+
+".hidden ""shared_dispatch_stub_894""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_894")"\n"
+"\t"STUB_ASM_CODE("894")"\n"
+
+".hidden ""shared_dispatch_stub_895""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_895")"\n"
+"\t"STUB_ASM_CODE("895")"\n"
+
+".hidden ""shared_dispatch_stub_896""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_896")"\n"
+"\t"STUB_ASM_CODE("896")"\n"
+
+".hidden ""shared_dispatch_stub_897""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_897")"\n"
+"\t"STUB_ASM_CODE("897")"\n"
+
+".hidden ""shared_dispatch_stub_898""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_898")"\n"
+"\t"STUB_ASM_CODE("898")"\n"
+
+".hidden ""shared_dispatch_stub_899""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_899")"\n"
+"\t"STUB_ASM_CODE("899")"\n"
+
+".hidden ""shared_dispatch_stub_900""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_900")"\n"
+"\t"STUB_ASM_CODE("900")"\n"
+
+".hidden ""shared_dispatch_stub_901""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_901")"\n"
+"\t"STUB_ASM_CODE("901")"\n"
+
+".hidden ""shared_dispatch_stub_902""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_902")"\n"
+"\t"STUB_ASM_CODE("902")"\n"
+
+".hidden ""shared_dispatch_stub_903""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_903")"\n"
+"\t"STUB_ASM_CODE("903")"\n"
+
+".hidden ""shared_dispatch_stub_904""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_904")"\n"
+"\t"STUB_ASM_CODE("904")"\n"
+
+".hidden ""shared_dispatch_stub_905""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_905")"\n"
+"\t"STUB_ASM_CODE("905")"\n"
+
+".hidden ""shared_dispatch_stub_906""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_906")"\n"
+"\t"STUB_ASM_CODE("906")"\n"
+
+".hidden ""shared_dispatch_stub_907""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_907")"\n"
+"\t"STUB_ASM_CODE("907")"\n"
+
+".hidden ""shared_dispatch_stub_908""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_908")"\n"
+"\t"STUB_ASM_CODE("908")"\n"
+
+".hidden ""shared_dispatch_stub_909""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_909")"\n"
+"\t"STUB_ASM_CODE("909")"\n"
+
+".hidden ""shared_dispatch_stub_910""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_910")"\n"
+"\t"STUB_ASM_CODE("910")"\n"
+
+".hidden ""shared_dispatch_stub_911""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_911")"\n"
+"\t"STUB_ASM_CODE("911")"\n"
+
+".hidden ""shared_dispatch_stub_912""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_912")"\n"
+"\t"STUB_ASM_CODE("912")"\n"
+
+".hidden ""shared_dispatch_stub_913""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_913")"\n"
+"\t"STUB_ASM_CODE("913")"\n"
+
+".hidden ""shared_dispatch_stub_914""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_914")"\n"
+"\t"STUB_ASM_CODE("914")"\n"
+
+".hidden ""shared_dispatch_stub_915""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_915")"\n"
+"\t"STUB_ASM_CODE("915")"\n"
+
+".hidden ""shared_dispatch_stub_916""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_916")"\n"
+"\t"STUB_ASM_CODE("916")"\n"
+
+".hidden ""shared_dispatch_stub_917""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_917")"\n"
+"\t"STUB_ASM_CODE("917")"\n"
+
+".hidden ""shared_dispatch_stub_918""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_918")"\n"
+"\t"STUB_ASM_CODE("918")"\n"
+
+".hidden ""shared_dispatch_stub_919""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_919")"\n"
+"\t"STUB_ASM_CODE("919")"\n"
+
+".hidden ""shared_dispatch_stub_920""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_920")"\n"
+"\t"STUB_ASM_CODE("920")"\n"
+
+".hidden ""shared_dispatch_stub_921""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_921")"\n"
+"\t"STUB_ASM_CODE("921")"\n"
+
+".hidden ""shared_dispatch_stub_922""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_922")"\n"
+"\t"STUB_ASM_CODE("922")"\n"
+
+".hidden ""shared_dispatch_stub_923""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_923")"\n"
+"\t"STUB_ASM_CODE("923")"\n"
+
+".hidden ""shared_dispatch_stub_924""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_924")"\n"
+"\t"STUB_ASM_CODE("924")"\n"
+
+".hidden ""shared_dispatch_stub_925""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_925")"\n"
+"\t"STUB_ASM_CODE("925")"\n"
+
+".hidden ""shared_dispatch_stub_926""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_926")"\n"
+"\t"STUB_ASM_CODE("926")"\n"
+
+".hidden ""shared_dispatch_stub_927""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_927")"\n"
+"\t"STUB_ASM_CODE("927")"\n"
+
+".hidden ""shared_dispatch_stub_928""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_928")"\n"
+"\t"STUB_ASM_CODE("928")"\n"
+
+".hidden ""shared_dispatch_stub_929""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_929")"\n"
+"\t"STUB_ASM_CODE("929")"\n"
+
+".hidden ""shared_dispatch_stub_930""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_930")"\n"
+"\t"STUB_ASM_CODE("930")"\n"
+
+".hidden ""shared_dispatch_stub_931""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_931")"\n"
+"\t"STUB_ASM_CODE("931")"\n"
+
+".hidden ""shared_dispatch_stub_932""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_932")"\n"
+"\t"STUB_ASM_CODE("932")"\n"
+
+".hidden ""shared_dispatch_stub_933""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_933")"\n"
+"\t"STUB_ASM_CODE("933")"\n"
+
+".hidden ""shared_dispatch_stub_934""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_934")"\n"
+"\t"STUB_ASM_CODE("934")"\n"
+
+".hidden ""shared_dispatch_stub_935""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_935")"\n"
+"\t"STUB_ASM_CODE("935")"\n"
+
+".hidden ""shared_dispatch_stub_936""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_936")"\n"
+"\t"STUB_ASM_CODE("936")"\n"
+
+".hidden ""shared_dispatch_stub_937""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_937")"\n"
+"\t"STUB_ASM_CODE("937")"\n"
+
+".hidden ""shared_dispatch_stub_938""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_938")"\n"
+"\t"STUB_ASM_CODE("938")"\n"
+
+".hidden ""shared_dispatch_stub_939""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_939")"\n"
+"\t"STUB_ASM_CODE("939")"\n"
+
+".hidden ""shared_dispatch_stub_940""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_940")"\n"
+"\t"STUB_ASM_CODE("940")"\n"
+
+".hidden ""shared_dispatch_stub_941""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_941")"\n"
+"\t"STUB_ASM_CODE("941")"\n"
+
+".hidden ""shared_dispatch_stub_942""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_942")"\n"
+"\t"STUB_ASM_CODE("942")"\n"
+
+".hidden ""shared_dispatch_stub_943""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_943")"\n"
+"\t"STUB_ASM_CODE("943")"\n"
+
+".hidden ""shared_dispatch_stub_944""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_944")"\n"
+"\t"STUB_ASM_CODE("944")"\n"
+
+".hidden ""shared_dispatch_stub_945""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_945")"\n"
+"\t"STUB_ASM_CODE("945")"\n"
+
+".hidden ""shared_dispatch_stub_946""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_946")"\n"
+"\t"STUB_ASM_CODE("946")"\n"
+
+".hidden ""shared_dispatch_stub_947""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_947")"\n"
+"\t"STUB_ASM_CODE("947")"\n"
+
+".hidden ""shared_dispatch_stub_948""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_948")"\n"
+"\t"STUB_ASM_CODE("948")"\n"
+
+".hidden ""shared_dispatch_stub_949""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_949")"\n"
+"\t"STUB_ASM_CODE("949")"\n"
+
+".hidden ""shared_dispatch_stub_950""\n"
+STUB_ASM_ENTRY("shared_dispatch_stub_950")"\n"
+"\t"STUB_ASM_CODE("950")"\n"
+
+);
+#undef MAPI_TMP_STUB_ASM_GCC
+#endif /* MAPI_TMP_STUB_ASM_GCC */
diff --git a/src/mesa/main/api_exec_es1.c b/src/mesa/main/api_exec_es1.c
new file mode 100644
index 0000000000..45cc19ce40
--- /dev/null
+++ b/src/mesa/main/api_exec_es1.c
@@ -0,0 +1,4867 @@
+/* DO NOT EDIT *************************************************
+ * THIS FILE AUTOMATICALLY GENERATED BY THE es_generator.py SCRIPT
+ * API specification file: main/APIspec.xml
+ * GLES version: GLES1.1
+ * date: 2011-03-16 14:46:40
+ */
+
+
+#include "GLES/gl.h"
+#include "GLES/glext.h"
+#include "main/mfeatures.h"
+#include "main/compiler.h"
+#include "main/api_exec.h"
+
+#if FEATURE_ES1
+
+
+/* These types are needed for the Mesa veneer, but are not defined in
+ * the standard GLES headers.
+ */
+typedef double GLdouble;
+typedef double GLclampd;
+
+/* Mesa error handling requires these */
+extern void *_mesa_get_current_context(void);
+extern void _mesa_error(void *ctx, GLenum error, const char *fmtString, ... );
+
+/*************************************************************
+ * Generated functions begin here
+ */
+
+extern void GL_APIENTRY _mesa_ActiveTextureARB(GLenum texture);
+static void GL_APIENTRY _es_ActiveTexture(GLenum texture)
+{
+ switch(texture) {
+ case GL_TEXTURE0:
+ case GL_TEXTURE1:
+ case GL_TEXTURE2:
+ case GL_TEXTURE3:
+ case GL_TEXTURE4:
+ case GL_TEXTURE5:
+ case GL_TEXTURE6:
+ case GL_TEXTURE7:
+ case GL_TEXTURE8:
+ case GL_TEXTURE9:
+ case GL_TEXTURE10:
+ case GL_TEXTURE11:
+ case GL_TEXTURE12:
+ case GL_TEXTURE13:
+ case GL_TEXTURE14:
+ case GL_TEXTURE15:
+ case GL_TEXTURE16:
+ case GL_TEXTURE17:
+ case GL_TEXTURE18:
+ case GL_TEXTURE19:
+ case GL_TEXTURE20:
+ case GL_TEXTURE21:
+ case GL_TEXTURE22:
+ case GL_TEXTURE23:
+ case GL_TEXTURE24:
+ case GL_TEXTURE25:
+ case GL_TEXTURE26:
+ case GL_TEXTURE27:
+ case GL_TEXTURE28:
+ case GL_TEXTURE29:
+ case GL_TEXTURE30:
+ case GL_TEXTURE31:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glActiveTexture(texture=0x%x)", texture);
+ return;
+ }
+
+ _mesa_ActiveTextureARB(texture);
+}
+
+extern void GL_APIENTRY _mesa_AlphaFunc(GLenum func, GLclampf ref);
+static void GL_APIENTRY _es_AlphaFunc(GLenum func, GLclampf ref)
+{
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_EQUAL:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_NOTEQUAL:
+ case GL_GEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glAlphaFunc(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_AlphaFunc(func, ref);
+}
+
+extern void GL_APIENTRY _mesa_AlphaFunc(GLenum func, GLclampf ref);
+static void GL_APIENTRY _es_AlphaFuncx(GLenum func, GLclampx ref)
+{
+ GLclampf converted_ref;
+
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_EQUAL:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_NOTEQUAL:
+ case GL_GEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glAlphaFuncx(func=0x%x)", func);
+ return;
+ }
+
+ converted_ref = (GLclampf) (ref / 65536.0f);
+
+ _mesa_AlphaFunc(func, converted_ref);
+}
+
+extern void GL_APIENTRY _mesa_BindBufferARB(GLenum target, GLuint buffer);
+static void GL_APIENTRY _es_BindBuffer(GLenum target, GLuint buffer)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindBuffer(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindBufferARB(target, buffer);
+}
+
+extern void GL_APIENTRY _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer);
+static void GL_APIENTRY _es_BindFramebufferOES(GLenum target, GLuint framebuffer)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindFramebufferOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindFramebufferEXT(target, framebuffer);
+}
+
+extern void GL_APIENTRY _mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer);
+static void GL_APIENTRY _es_BindRenderbufferOES(GLenum target, GLuint renderbuffer)
+{
+ switch(target) {
+ case GL_RENDERBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindRenderbufferOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindRenderbufferEXT(target, renderbuffer);
+}
+
+extern void GL_APIENTRY _mesa_BindTexture(GLenum target, GLuint texture);
+static void GL_APIENTRY _es_BindTexture(GLenum target, GLuint texture)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindTexture(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindTexture(target, texture);
+}
+
+extern void GL_APIENTRY _mesa_BlendEquation(GLenum mode);
+static void GL_APIENTRY _es_BlendEquationOES(GLenum mode)
+{
+ switch(mode) {
+ case GL_FUNC_ADD_OES:
+ case GL_FUNC_SUBTRACT_OES:
+ case GL_FUNC_REVERSE_SUBTRACT_OES:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquationOES(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_BlendEquation(mode);
+}
+
+extern void GL_APIENTRY _mesa_BlendEquationSeparateEXT(GLenum modeRGB, GLenum modeAlpha);
+static void GL_APIENTRY _es_BlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha)
+{
+ switch(modeRGB) {
+ case GL_FUNC_ADD_OES:
+ case GL_FUNC_SUBTRACT_OES:
+ case GL_FUNC_REVERSE_SUBTRACT_OES:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquationSeparateOES(modeRGB=0x%x)", modeRGB);
+ return;
+ }
+ switch(modeAlpha) {
+ case GL_FUNC_ADD_OES:
+ case GL_FUNC_SUBTRACT_OES:
+ case GL_FUNC_REVERSE_SUBTRACT_OES:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquationSeparateOES(modeAlpha=0x%x)", modeAlpha);
+ return;
+ }
+
+ _mesa_BlendEquationSeparateEXT(modeRGB, modeAlpha);
+}
+
+extern void GL_APIENTRY _mesa_BlendFunc(GLenum sfactor, GLenum dfactor);
+static void GL_APIENTRY _es_BlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ switch(sfactor) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFunc(sfactor=0x%x)", sfactor);
+ return;
+ }
+ switch(dfactor) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFunc(dfactor=0x%x)", dfactor);
+ return;
+ }
+
+ _mesa_BlendFunc(sfactor, dfactor);
+}
+
+extern void GL_APIENTRY _mesa_BlendFuncSeparateEXT(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+static void GL_APIENTRY _es_BlendFuncSeparateOES(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ switch(srcRGB) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparateOES(srcRGB=0x%x)", srcRGB);
+ return;
+ }
+ switch(dstRGB) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparateOES(dstRGB=0x%x)", dstRGB);
+ return;
+ }
+ switch(srcAlpha) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparateOES(srcAlpha=0x%x)", srcAlpha);
+ return;
+ }
+ switch(dstAlpha) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparateOES(dstAlpha=0x%x)", dstAlpha);
+ return;
+ }
+
+ _mesa_BlendFuncSeparateEXT(srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+extern void GL_APIENTRY _mesa_BufferDataARB(GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage);
+static void GL_APIENTRY _es_BufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferData(target=0x%x)", target);
+ return;
+ }
+ switch(usage) {
+ case GL_STATIC_DRAW:
+ case GL_DYNAMIC_DRAW:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferData(usage=0x%x)", usage);
+ return;
+ }
+
+ _mesa_BufferDataARB(target, size, data, usage);
+}
+
+extern void GL_APIENTRY _mesa_BufferSubDataARB(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data);
+static void GL_APIENTRY _es_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferSubData(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BufferSubDataARB(target, offset, size, data);
+}
+
+extern GLenum GL_APIENTRY _mesa_CheckFramebufferStatusEXT(GLenum target);
+static GLenum GL_APIENTRY _es_CheckFramebufferStatusOES(GLenum target)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCheckFramebufferStatusOES(target=0x%x)", target);
+ return (GLenum) 0;
+ }
+
+ return _mesa_CheckFramebufferStatusEXT(target);
+}
+
+extern void GL_APIENTRY _mesa_Clear(GLbitfield mask);
+static void GL_APIENTRY _es_Clear(GLbitfield mask)
+{
+ switch(mask) {
+ case 0:
+ case (GL_COLOR_BUFFER_BIT):
+ case (GL_DEPTH_BUFFER_BIT):
+ case (GL_STENCIL_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ case (GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glClear(mask=0x%x)", mask);
+ return;
+ }
+
+ _mesa_Clear(mask);
+}
+
+extern void GL_APIENTRY _mesa_ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+#define _es_ClearColor _mesa_ClearColor
+
+extern void GL_APIENTRY _mesa_ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+static void GL_APIENTRY _es_ClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ GLclampf converted_red;
+ GLclampf converted_green;
+ GLclampf converted_blue;
+ GLclampf converted_alpha;
+
+ converted_red = (GLclampf) (red / 65536.0f);
+ converted_green = (GLclampf) (green / 65536.0f);
+ converted_blue = (GLclampf) (blue / 65536.0f);
+ converted_alpha = (GLclampf) (alpha / 65536.0f);
+
+ _mesa_ClearColor(converted_red, converted_green, converted_blue, converted_alpha);
+}
+
+extern void GL_APIENTRY _mesa_ClearDepthf(GLclampf depth);
+#define _es_ClearDepthf _mesa_ClearDepthf
+
+extern void GL_APIENTRY _mesa_ClearDepthf(GLclampf depth);
+static void GL_APIENTRY _es_ClearDepthx(GLclampx depth)
+{
+ GLclampf converted_depth;
+
+ converted_depth = (GLclampf) (depth / 65536.0f);
+
+ _mesa_ClearDepthf(converted_depth);
+}
+
+extern void GL_APIENTRY _mesa_ClearStencil(GLint s);
+#define _es_ClearStencil _mesa_ClearStencil
+
+extern void GL_APIENTRY _mesa_ClientActiveTextureARB(GLenum texture);
+static void GL_APIENTRY _es_ClientActiveTexture(GLenum texture)
+{
+ switch(texture) {
+ case GL_TEXTURE0:
+ case GL_TEXTURE1:
+ case GL_TEXTURE2:
+ case GL_TEXTURE3:
+ case GL_TEXTURE4:
+ case GL_TEXTURE5:
+ case GL_TEXTURE6:
+ case GL_TEXTURE7:
+ case GL_TEXTURE8:
+ case GL_TEXTURE9:
+ case GL_TEXTURE10:
+ case GL_TEXTURE11:
+ case GL_TEXTURE12:
+ case GL_TEXTURE13:
+ case GL_TEXTURE14:
+ case GL_TEXTURE15:
+ case GL_TEXTURE16:
+ case GL_TEXTURE17:
+ case GL_TEXTURE18:
+ case GL_TEXTURE19:
+ case GL_TEXTURE20:
+ case GL_TEXTURE21:
+ case GL_TEXTURE22:
+ case GL_TEXTURE23:
+ case GL_TEXTURE24:
+ case GL_TEXTURE25:
+ case GL_TEXTURE26:
+ case GL_TEXTURE27:
+ case GL_TEXTURE28:
+ case GL_TEXTURE29:
+ case GL_TEXTURE30:
+ case GL_TEXTURE31:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glClientActiveTexture(texture=0x%x)", texture);
+ return;
+ }
+
+ _mesa_ClientActiveTextureARB(texture);
+}
+
+extern void GL_APIENTRY _mesa_ClipPlane(GLenum plane, GLdouble const * equation);
+static void GL_APIENTRY _es_ClipPlanef(GLenum plane, const GLfloat *equation)
+{
+ register unsigned int i;
+ unsigned int n_equation = 4;
+ GLdouble converted_equation[4];
+
+ switch(plane) {
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glClipPlanef(plane=0x%x)", plane);
+ return;
+ }
+
+ for (i = 0; i < n_equation; i++) {
+ converted_equation[i] = (GLdouble) (equation[i]);
+ }
+
+ _mesa_ClipPlane(plane, converted_equation);
+}
+
+extern void GL_APIENTRY _mesa_ClipPlane(GLenum plane, GLdouble const * equation);
+static void GL_APIENTRY _es_ClipPlanex(GLenum plane, const GLfixed *equation)
+{
+ register unsigned int i;
+ unsigned int n_equation = 4;
+ GLdouble converted_equation[4];
+
+ switch(plane) {
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glClipPlanex(plane=0x%x)", plane);
+ return;
+ }
+
+ for (i = 0; i < n_equation; i++) {
+ converted_equation[i] = (GLdouble) (equation[i] / 65536.0);
+ }
+
+ _mesa_ClipPlane(plane, converted_equation);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+#define _check_Color4f _es_Color4f
+
+extern void GL_APIENTRY _es_Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+static void GL_APIENTRY _es_Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ GLfloat converted_red;
+ GLfloat converted_green;
+ GLfloat converted_blue;
+ GLfloat converted_alpha;
+
+ converted_red = (GLfloat) (red / 255.0f);
+ converted_green = (GLfloat) (green / 255.0f);
+ converted_blue = (GLfloat) (blue / 255.0f);
+ converted_alpha = (GLfloat) (alpha / 255.0f);
+
+ _es_Color4f(converted_red, converted_green, converted_blue, converted_alpha);
+}
+
+extern void GL_APIENTRY _es_Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+static void GL_APIENTRY _es_Color4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ GLfloat converted_red;
+ GLfloat converted_green;
+ GLfloat converted_blue;
+ GLfloat converted_alpha;
+
+ converted_red = (GLfloat) (red / 65536.0f);
+ converted_green = (GLfloat) (green / 65536.0f);
+ converted_blue = (GLfloat) (blue / 65536.0f);
+ converted_alpha = (GLfloat) (alpha / 65536.0f);
+
+ _es_Color4f(converted_red, converted_green, converted_blue, converted_alpha);
+}
+
+extern void GL_APIENTRY _mesa_ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+#define _es_ColorMask _mesa_ColorMask
+
+extern void GL_APIENTRY _mesa_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ switch(size) {
+ case 4:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glColorPointer(size=%d)", size);
+ return;
+ }
+ switch(type) {
+ case GL_UNSIGNED_BYTE:
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glColorPointer(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_ColorPointer(size, type, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_CompressedTexImage2DARB(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_PALETTE4_RGB8_OES:
+ case GL_PALETTE4_RGBA8_OES:
+ case GL_PALETTE4_R5_G6_B5_OES:
+ case GL_PALETTE4_RGBA4_OES:
+ case GL_PALETTE4_RGB5_A1_OES:
+ case GL_PALETTE8_RGB8_OES:
+ case GL_PALETTE8_RGBA8_OES:
+ case GL_PALETTE8_R5_G6_B5_OES:
+ case GL_PALETTE8_RGBA4_OES:
+ case GL_PALETTE8_RGB5_A1_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCompressedTexImage2D(border=%d)", border);
+ return;
+ }
+
+ _mesa_CompressedTexImage2DARB(target, level, internalFormat, width, height, border, imageSize, data);
+}
+
+extern void GL_APIENTRY _mesa_CompressedTexSubImage2DARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+extern void GL_APIENTRY _mesa_CopyTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+static void GL_APIENTRY _es_CopyTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCopyTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_ALPHA:
+ case GL_RGB:
+ case GL_RGBA:
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCopyTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCopyTexImage2D(border=%d)", border);
+ return;
+ }
+
+ _mesa_CopyTexImage2D(target, level, internalFormat, x, y, width, height, border);
+}
+
+extern void GL_APIENTRY _mesa_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+static void GL_APIENTRY _es_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCopyTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+extern void GL_APIENTRY _mesa_CullFace(GLenum mode);
+static void GL_APIENTRY _es_CullFace(GLenum mode)
+{
+ switch(mode) {
+ case GL_FRONT:
+ case GL_BACK:
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCullFace(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_CullFace(mode);
+}
+
+extern void GL_APIENTRY _mesa_DeleteBuffersARB(GLsizei n, const GLuint * buffer);
+#define _es_DeleteBuffers _mesa_DeleteBuffersARB
+
+extern void GL_APIENTRY _mesa_DeleteFramebuffersEXT(GLsizei n, const GLuint * framebuffers);
+#define _es_DeleteFramebuffersOES _mesa_DeleteFramebuffersEXT
+
+extern void GL_APIENTRY _mesa_DeleteRenderbuffersEXT(GLsizei n, const GLuint * renderbuffers);
+#define _es_DeleteRenderbuffersOES _mesa_DeleteRenderbuffersEXT
+
+extern void GL_APIENTRY _mesa_DeleteTextures(GLsizei n, const GLuint * textures);
+#define _es_DeleteTextures _mesa_DeleteTextures
+
+extern void GL_APIENTRY _mesa_DepthFunc(GLenum func);
+static void GL_APIENTRY _es_DepthFunc(GLenum func)
+{
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_EQUAL:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_NOTEQUAL:
+ case GL_GEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDepthFunc(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_DepthFunc(func);
+}
+
+extern void GL_APIENTRY _mesa_DepthMask(GLboolean flag);
+#define _es_DepthMask _mesa_DepthMask
+
+extern void GL_APIENTRY _mesa_DepthRangef(GLclampf zNear, GLclampf zFar);
+#define _es_DepthRangef _mesa_DepthRangef
+
+extern void GL_APIENTRY _mesa_DepthRangef(GLclampf zNear, GLclampf zFar);
+static void GL_APIENTRY _es_DepthRangex(GLclampx zNear, GLclampx zFar)
+{
+ GLclampf converted_zNear;
+ GLclampf converted_zFar;
+
+ converted_zNear = (GLclampf) (zNear / 65536.0f);
+ converted_zFar = (GLclampf) (zFar / 65536.0f);
+
+ _mesa_DepthRangef(converted_zNear, converted_zFar);
+}
+
+extern void GL_APIENTRY _mesa_Disable(GLenum cap);
+static void GL_APIENTRY _es_Disable(GLenum cap)
+{
+ switch(cap) {
+ case GL_NORMALIZE:
+ case GL_RESCALE_NORMAL:
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ case GL_FOG:
+ case GL_LIGHTING:
+ case GL_COLOR_MATERIAL:
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ case GL_POINT_SMOOTH:
+ case GL_LINE_SMOOTH:
+ case GL_CULL_FACE:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_MULTISAMPLE:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_ALPHA_TO_ONE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_TEXTURE_2D:
+ case GL_SCISSOR_TEST:
+ case GL_ALPHA_TEST:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_BLEND:
+ case GL_DITHER:
+ case GL_COLOR_LOGIC_OP:
+ case GL_POINT_SPRITE_OES:
+ case GL_MATRIX_PALETTE_OES:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDisable(cap=0x%x)", cap);
+ return;
+ }
+
+ _mesa_Disable(cap);
+}
+
+extern void GL_APIENTRY _mesa_DisableClientState(GLenum array);
+static void GL_APIENTRY _es_DisableClientState(GLenum array)
+{
+ switch(array) {
+ case GL_VERTEX_ARRAY:
+ case GL_NORMAL_ARRAY:
+ case GL_COLOR_ARRAY:
+ case GL_TEXTURE_COORD_ARRAY:
+ case GL_MATRIX_INDEX_ARRAY_OES:
+ case GL_WEIGHT_ARRAY_OES:
+ case GL_POINT_SIZE_ARRAY_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDisableClientState(array=0x%x)", array);
+ return;
+ }
+
+ _mesa_DisableClientState(array);
+}
+
+extern void GL_APIENTRY _mesa_DrawArrays(GLenum mode, GLint first, GLsizei count);
+static void GL_APIENTRY _es_DrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawArrays(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_DrawArrays(mode, first, count);
+}
+
+extern void GL_APIENTRY _mesa_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices);
+static void GL_APIENTRY _es_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawElements(mode=0x%x)", mode);
+ return;
+ }
+ switch(type) {
+ case GL_UNSIGNED_BYTE:
+ case GL_UNSIGNED_SHORT:
+ case GL_UNSIGNED_INT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawElements(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_DrawElements(mode, count, type, indices);
+}
+
+extern void GL_APIENTRY _mesa_DrawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat w, GLfloat h);
+#define _es_DrawTexfOES _mesa_DrawTexf
+
+extern void GL_APIENTRY _mesa_DrawTexfv(const GLfloat * coords);
+#define _es_DrawTexfvOES _mesa_DrawTexfv
+
+extern void GL_APIENTRY _mesa_DrawTexi(GLint x, GLint y, GLint z, GLint w, GLint h);
+#define _es_DrawTexiOES _mesa_DrawTexi
+
+extern void GL_APIENTRY _mesa_DrawTexiv(const GLint * coords);
+#define _es_DrawTexivOES _mesa_DrawTexiv
+
+extern void GL_APIENTRY _mesa_DrawTexs(GLshort x, GLshort y, GLshort z, GLshort w, GLshort h);
+#define _es_DrawTexsOES _mesa_DrawTexs
+
+extern void GL_APIENTRY _mesa_DrawTexsv(const GLshort * coords);
+#define _es_DrawTexsvOES _mesa_DrawTexsv
+
+extern void GL_APIENTRY _mesa_DrawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat w, GLfloat h);
+static void GL_APIENTRY _es_DrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed w, GLfixed h)
+{
+ GLfloat converted_x;
+ GLfloat converted_y;
+ GLfloat converted_z;
+ GLfloat converted_w;
+ GLfloat converted_h;
+
+ converted_x = (GLfloat) (x / 65536.0f);
+ converted_y = (GLfloat) (y / 65536.0f);
+ converted_z = (GLfloat) (z / 65536.0f);
+ converted_w = (GLfloat) (w / 65536.0f);
+ converted_h = (GLfloat) (h / 65536.0f);
+
+ _mesa_DrawTexf(converted_x, converted_y, converted_z, converted_w, converted_h);
+}
+
+extern void GL_APIENTRY _mesa_DrawTexfv(GLfloat const * coords);
+static void GL_APIENTRY _es_DrawTexxvOES(const GLfixed *coords)
+{
+ register unsigned int i;
+ unsigned int n_coords = 5;
+ GLfloat converted_coords[5];
+
+ for (i = 0; i < n_coords; i++) {
+ converted_coords[i] = (GLfloat) (coords[i] / 65536.0f);
+ }
+
+ _mesa_DrawTexfv(converted_coords);
+}
+
+extern void GL_APIENTRY _mesa_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
+static void GL_APIENTRY _es_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
+{
+ switch(target) {
+ case GL_RENDERBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEGLImageTargetRenderbufferStorageOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_EGLImageTargetRenderbufferStorageOES(target, image);
+}
+
+extern void GL_APIENTRY _mesa_EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
+static void GL_APIENTRY _es_EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEGLImageTargetTexture2DOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_EGLImageTargetTexture2DOES(target, image);
+}
+
+extern void GL_APIENTRY _mesa_Enable(GLenum cap);
+static void GL_APIENTRY _es_Enable(GLenum cap)
+{
+ switch(cap) {
+ case GL_NORMALIZE:
+ case GL_RESCALE_NORMAL:
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ case GL_FOG:
+ case GL_LIGHTING:
+ case GL_COLOR_MATERIAL:
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ case GL_POINT_SMOOTH:
+ case GL_LINE_SMOOTH:
+ case GL_CULL_FACE:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_MULTISAMPLE:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_ALPHA_TO_ONE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_TEXTURE_2D:
+ case GL_SCISSOR_TEST:
+ case GL_ALPHA_TEST:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_BLEND:
+ case GL_DITHER:
+ case GL_COLOR_LOGIC_OP:
+ case GL_POINT_SPRITE_OES:
+ case GL_MATRIX_PALETTE_OES:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEnable(cap=0x%x)", cap);
+ return;
+ }
+
+ _mesa_Enable(cap);
+}
+
+extern void GL_APIENTRY _mesa_EnableClientState(GLenum array);
+static void GL_APIENTRY _es_EnableClientState(GLenum array)
+{
+ switch(array) {
+ case GL_VERTEX_ARRAY:
+ case GL_NORMAL_ARRAY:
+ case GL_COLOR_ARRAY:
+ case GL_TEXTURE_COORD_ARRAY:
+ case GL_MATRIX_INDEX_ARRAY_OES:
+ case GL_WEIGHT_ARRAY_OES:
+ case GL_POINT_SIZE_ARRAY_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEnableClientState(array=0x%x)", array);
+ return;
+ }
+
+ _mesa_EnableClientState(array);
+}
+
+extern void GL_APIENTRY _mesa_Finish(void);
+#define _es_Finish _mesa_Finish
+
+extern void GL_APIENTRY _mesa_Flush(void);
+#define _es_Flush _mesa_Flush
+
+extern void GL_APIENTRY _mesa_Fogf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_Fogf(GLenum pname, GLfloat param)
+{
+ switch(pname) {
+ case GL_FOG_MODE:
+ if (param != GL_EXP && param != GL_EXP2 && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_FOG_DENSITY:
+ case GL_FOG_START:
+ case GL_FOG_END:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_Fogf(pname, param);
+}
+
+extern void GL_APIENTRY _mesa_Fogfv(GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_Fogfv(GLenum pname, const GLfloat *params)
+{
+ switch(pname) {
+ case GL_FOG_MODE: /* size 1 */
+ if (params[0] != GL_EXP && params[0] != GL_EXP2 && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_FOG_COLOR: /* size 4 */
+ case GL_FOG_DENSITY: /* size 1 */
+ case GL_FOG_START: /* size 1 */
+ case GL_FOG_END: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_Fogfv(pname, params);
+}
+
+extern void GL_APIENTRY _mesa_Fogf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_Fogx(GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+ int convert_param_value = 1;
+
+ switch(pname) {
+ case GL_FOG_MODE:
+ if (param != GL_EXP && param != GL_EXP2 && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_FOG_DENSITY:
+ case GL_FOG_START:
+ case GL_FOG_END:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogx(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_param_value) {
+ converted_param = (GLfloat) (param / 65536.0f);
+ } else {
+ converted_param = (GLfloat) param;
+ }
+
+ _mesa_Fogf(pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_Fogfv(GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_Fogxv(GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(pname) {
+ case GL_FOG_MODE:
+ if (params[0] != GL_EXP && params[0] != GL_EXP2 && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_FOG_COLOR:
+ n_params = 4;
+ break;
+ case GL_FOG_DENSITY:
+ case GL_FOG_START:
+ case GL_FOG_END:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFogxv(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+ }
+
+ _mesa_Fogfv(pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+static void GL_APIENTRY _es_FramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbufferOES(target=0x%x)", target);
+ return;
+ }
+ switch(attachment) {
+ case GL_COLOR_ATTACHMENT0_OES:
+ case GL_DEPTH_ATTACHMENT_OES:
+ case GL_STENCIL_ATTACHMENT_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbufferOES(attachment=0x%x)", attachment);
+ return;
+ }
+ switch(renderbuffertarget) {
+ case GL_RENDERBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbufferOES(renderbuffertarget=0x%x)", renderbuffertarget);
+ return;
+ }
+
+ _mesa_FramebufferRenderbufferEXT(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+extern void GL_APIENTRY _mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+static void GL_APIENTRY _es_FramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture2DOES(target=0x%x)", target);
+ return;
+ }
+ switch(attachment) {
+ case GL_COLOR_ATTACHMENT0_OES:
+ case GL_DEPTH_ATTACHMENT_OES:
+ case GL_STENCIL_ATTACHMENT_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture2DOES(attachment=0x%x)", attachment);
+ return;
+ }
+ switch(textarget) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glFramebufferTexture2DOES(textarget=0x%x)", textarget);
+ return;
+ }
+
+ _mesa_FramebufferTexture2DEXT(target, attachment, textarget, texture, level);
+}
+
+extern void GL_APIENTRY _mesa_FrontFace(GLenum mode);
+static void GL_APIENTRY _es_FrontFace(GLenum mode)
+{
+ switch(mode) {
+ case GL_CW:
+ case GL_CCW:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFrontFace(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_FrontFace(mode);
+}
+
+extern void GL_APIENTRY _mesa_Frustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+static void GL_APIENTRY _es_Frustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ GLdouble converted_left;
+ GLdouble converted_right;
+ GLdouble converted_bottom;
+ GLdouble converted_top;
+ GLdouble converted_zNear;
+ GLdouble converted_zFar;
+
+ converted_left = (GLdouble) (left);
+ converted_right = (GLdouble) (right);
+ converted_bottom = (GLdouble) (bottom);
+ converted_top = (GLdouble) (top);
+ converted_zNear = (GLdouble) (zNear);
+ converted_zFar = (GLdouble) (zFar);
+
+ _mesa_Frustum(converted_left, converted_right, converted_bottom, converted_top, converted_zNear, converted_zFar);
+}
+
+extern void GL_APIENTRY _mesa_Frustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+static void GL_APIENTRY _es_Frustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ GLdouble converted_left;
+ GLdouble converted_right;
+ GLdouble converted_bottom;
+ GLdouble converted_top;
+ GLdouble converted_zNear;
+ GLdouble converted_zFar;
+
+ converted_left = (GLdouble) (left / 65536.0);
+ converted_right = (GLdouble) (right / 65536.0);
+ converted_bottom = (GLdouble) (bottom / 65536.0);
+ converted_top = (GLdouble) (top / 65536.0);
+ converted_zNear = (GLdouble) (zNear / 65536.0);
+ converted_zFar = (GLdouble) (zFar / 65536.0);
+
+ _mesa_Frustum(converted_left, converted_right, converted_bottom, converted_top, converted_zNear, converted_zFar);
+}
+
+extern void GL_APIENTRY _mesa_GenBuffersARB(GLsizei n, GLuint * buffer);
+#define _es_GenBuffers _mesa_GenBuffersARB
+
+extern void GL_APIENTRY _mesa_GenFramebuffersEXT(GLsizei n, GLuint * ids);
+#define _es_GenFramebuffersOES _mesa_GenFramebuffersEXT
+
+extern void GL_APIENTRY _mesa_GenRenderbuffersEXT(GLsizei n, GLuint * renderbuffers);
+#define _es_GenRenderbuffersOES _mesa_GenRenderbuffersEXT
+
+extern void GL_APIENTRY _mesa_GenTextures(GLsizei n, GLuint * textures);
+#define _es_GenTextures _mesa_GenTextures
+
+extern void GL_APIENTRY _mesa_GenerateMipmapEXT(GLenum target);
+static void GL_APIENTRY _es_GenerateMipmapOES(GLenum target)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGenerateMipmapOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_GenerateMipmapEXT(target);
+}
+
+extern void GL_APIENTRY _mesa_GetBooleanv(GLenum pname, GLboolean * params);
+#define _es_GetBooleanv _mesa_GetBooleanv
+
+extern void GL_APIENTRY _mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_BUFFER_SIZE:
+ case GL_BUFFER_USAGE:
+ case GL_BUFFER_ACCESS_OES:
+ case GL_BUFFER_MAPPED_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetBufferParameterivARB(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetBufferPointervARB(GLenum target, GLenum pname, GLvoid ** params);
+static void GL_APIENTRY _es_GetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferPointervOES(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_BUFFER_MAP_POINTER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferPointervOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetBufferPointervARB(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetClipPlane(GLenum plane, GLdouble * equation);
+static void GL_APIENTRY _es_GetClipPlanef(GLenum plane, GLfloat *equation)
+{
+ register unsigned int i;
+ unsigned int n_equation = 4;
+ GLdouble converted_equation[4];
+
+ switch(plane) {
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetClipPlanef(plane=0x%x)", plane);
+ return;
+ }
+
+ _mesa_GetClipPlane(plane, converted_equation);
+ for (i = 0; i < n_equation; i++) {
+ equation[i] = (GLfloat) (converted_equation[i]);
+ }
+}
+
+extern void GL_APIENTRY _mesa_GetClipPlane(GLenum plane, GLdouble * equation);
+static void GL_APIENTRY _es_GetClipPlanex(GLenum plane, GLfixed *equation)
+{
+ register unsigned int i;
+ unsigned int n_equation = 4;
+ GLdouble converted_equation[4];
+
+ switch(plane) {
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetClipPlanex(plane=0x%x)", plane);
+ return;
+ }
+
+ _mesa_GetClipPlane(plane, converted_equation);
+ for (i = 0; i < n_equation; i++) {
+ equation[i] = (GLfixed) (converted_equation[i] * 65536);
+ }
+}
+
+extern GLenum GL_APIENTRY _mesa_GetError(void);
+#define _es_GetError _mesa_GetError
+
+extern void GL_APIENTRY _mesa_GetFixedv(GLenum pname, GLfixed * params);
+#define _es_GetFixedv _mesa_GetFixedv
+
+extern void GL_APIENTRY _mesa_GetFloatv(GLenum pname, GLfloat * params);
+#define _es_GetFloatv _mesa_GetFloatv
+
+extern void GL_APIENTRY _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetFramebufferAttachmentParameterivOES(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetFramebufferAttachmentParameterivOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetFramebufferAttachmentParameterivEXT(target, attachment, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetIntegerv(GLenum pname, GLint * params);
+#define _es_GetIntegerv _mesa_GetIntegerv
+
+extern void GL_APIENTRY _mesa_GetLightfv(GLenum light, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetLightfv(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT: /* size 4 */
+ case GL_DIFFUSE: /* size 4 */
+ case GL_SPECULAR: /* size 4 */
+ case GL_POSITION: /* size 4 */
+ case GL_SPOT_DIRECTION: /* size 3 */
+ case GL_SPOT_EXPONENT: /* size 1 */
+ case GL_SPOT_CUTOFF: /* size 1 */
+ case GL_CONSTANT_ATTENUATION: /* size 1 */
+ case GL_LINEAR_ATTENUATION: /* size 1 */
+ case GL_QUADRATIC_ATTENUATION: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetLightfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetLightfv(light, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetLightfv(GLenum light, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetLightxv(GLenum light, GLenum pname, GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetLightxv(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT:
+ case GL_DIFFUSE:
+ case GL_SPECULAR:
+ case GL_POSITION:
+ n_params = 4;
+ break;
+ case GL_SPOT_DIRECTION:
+ n_params = 3;
+ break;
+ case GL_SPOT_EXPONENT:
+ case GL_SPOT_CUTOFF:
+ case GL_CONSTANT_ATTENUATION:
+ case GL_LINEAR_ATTENUATION:
+ case GL_QUADRATIC_ATTENUATION:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetLightxv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetLightfv(light, pname, converted_params);
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLint) (converted_params[i] * 65536);
+ }
+}
+
+extern void GL_APIENTRY _mesa_GetMaterialfv(GLenum face, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ switch(face) {
+ case GL_FRONT:
+ case GL_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetMaterialfv(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_SHININESS: /* size 1 */
+ case GL_AMBIENT: /* size 4 */
+ case GL_DIFFUSE: /* size 4 */
+ case GL_AMBIENT_AND_DIFFUSE: /* size 4 */
+ case GL_SPECULAR: /* size 4 */
+ case GL_EMISSION: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetMaterialfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetMaterialfv(face, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetMaterialfv(GLenum face, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+
+ switch(face) {
+ case GL_FRONT:
+ case GL_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetMaterialxv(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_SHININESS:
+ n_params = 1;
+ break;
+ case GL_AMBIENT:
+ case GL_DIFFUSE:
+ case GL_AMBIENT_AND_DIFFUSE:
+ case GL_SPECULAR:
+ case GL_EMISSION:
+ n_params = 4;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetMaterialxv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetMaterialfv(face, pname, converted_params);
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLint) (converted_params[i] * 65536);
+ }
+}
+
+extern void GL_APIENTRY _mesa_GetPointerv(GLenum pname, GLvoid ** params);
+static void GL_APIENTRY _es_GetPointerv(GLenum pname, GLvoid **params)
+{
+ switch(pname) {
+ case GL_VERTEX_ARRAY_POINTER:
+ case GL_NORMAL_ARRAY_POINTER:
+ case GL_COLOR_ARRAY_POINTER:
+ case GL_TEXTURE_COORD_ARRAY_POINTER:
+ case GL_MATRIX_INDEX_ARRAY_POINTER_OES:
+ case GL_WEIGHT_ARRAY_POINTER_OES:
+ case GL_POINT_SIZE_ARRAY_POINTER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetPointerv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetPointerv(pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_RENDERBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetRenderbufferParameterivOES(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_RENDERBUFFER_WIDTH_OES: /* size 1 */
+ case GL_RENDERBUFFER_HEIGHT_OES: /* size 1 */
+ case GL_RENDERBUFFER_INTERNAL_FORMAT_OES: /* size 1 */
+ case GL_RENDERBUFFER_RED_SIZE_OES: /* size 1 */
+ case GL_RENDERBUFFER_GREEN_SIZE_OES: /* size 1 */
+ case GL_RENDERBUFFER_BLUE_SIZE_OES: /* size 1 */
+ case GL_RENDERBUFFER_ALPHA_SIZE_OES: /* size 1 */
+ case GL_RENDERBUFFER_DEPTH_SIZE_OES: /* size 1 */
+ case GL_RENDERBUFFER_STENCIL_SIZE_OES: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetRenderbufferParameterivOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetRenderbufferParameterivEXT(target, pname, params);
+}
+
+extern const GLubyte * GL_APIENTRY _mesa_GetString(GLenum name);
+static const GLubyte * GL_APIENTRY _es_GetString(GLenum name)
+{
+ switch(name) {
+ case GL_VENDOR:
+ case GL_RENDERER:
+ case GL_VERSION:
+ case GL_EXTENSIONS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetString(name=0x%x)", name);
+ return (const GLubyte *) 0;
+ }
+
+ return _mesa_GetString(name);
+}
+
+extern void GL_APIENTRY _mesa_GetTexEnvfv(GLenum target, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_COLOR && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES: /* size 1 */
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT: /* size 1 */
+ case GL_TEXTURE_ENV_COLOR: /* size 4 */
+ case GL_RGB_SCALE: /* size 1 */
+ case GL_ALPHA_SCALE: /* size 1 */
+ break;
+ case GL_TEXTURE_ENV_MODE: /* size 1 */
+ case GL_COMBINE_RGB: /* size 1 */
+ case GL_COMBINE_ALPHA: /* size 1 */
+ case GL_SRC0_RGB: /* size 1 */
+ case GL_SRC1_RGB: /* size 1 */
+ case GL_SRC2_RGB: /* size 1 */
+ case GL_SRC0_ALPHA: /* size 1 */
+ case GL_SRC1_ALPHA: /* size 1 */
+ case GL_SRC2_ALPHA: /* size 1 */
+ case GL_OPERAND0_RGB: /* size 1 */
+ case GL_OPERAND1_RGB: /* size 1 */
+ case GL_OPERAND2_RGB: /* size 1 */
+ case GL_OPERAND0_ALPHA: /* size 1 */
+ case GL_OPERAND1_ALPHA: /* size 1 */
+ case GL_OPERAND2_ALPHA: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexEnvfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetTexEnviv(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_COLOR && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnviv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES: /* size 1 */
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT: /* size 1 */
+ case GL_TEXTURE_ENV_COLOR: /* size 4 */
+ case GL_RGB_SCALE: /* size 1 */
+ case GL_ALPHA_SCALE: /* size 1 */
+ break;
+ case GL_TEXTURE_ENV_MODE: /* size 1 */
+ case GL_COMBINE_RGB: /* size 1 */
+ case GL_COMBINE_ALPHA: /* size 1 */
+ case GL_SRC0_RGB: /* size 1 */
+ case GL_SRC1_RGB: /* size 1 */
+ case GL_SRC2_RGB: /* size 1 */
+ case GL_SRC0_ALPHA: /* size 1 */
+ case GL_SRC1_ALPHA: /* size 1 */
+ case GL_SRC2_ALPHA: /* size 1 */
+ case GL_OPERAND0_RGB: /* size 1 */
+ case GL_OPERAND1_RGB: /* size 1 */
+ case GL_OPERAND2_RGB: /* size 1 */
+ case GL_OPERAND0_ALPHA: /* size 1 */
+ case GL_OPERAND1_ALPHA: /* size 1 */
+ case GL_OPERAND2_ALPHA: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexEnviv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetTexEnvfv(GLenum target, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetTexEnvxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_COLOR && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES:
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT:
+ n_params = 1;
+ break;
+ case GL_TEXTURE_ENV_COLOR:
+ n_params = 4;
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ n_params = 1;
+ break;
+ case GL_TEXTURE_ENV_MODE:
+ case GL_COMBINE_RGB:
+ case GL_COMBINE_ALPHA:
+ case GL_SRC0_RGB:
+ case GL_SRC1_RGB:
+ case GL_SRC2_RGB:
+ case GL_SRC0_ALPHA:
+ case GL_SRC1_ALPHA:
+ case GL_SRC2_ALPHA:
+ case GL_OPERAND0_RGB:
+ case GL_OPERAND1_RGB:
+ case GL_OPERAND2_RGB:
+ case GL_OPERAND0_ALPHA:
+ case GL_OPERAND1_ALPHA:
+ case GL_OPERAND2_ALPHA:
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexEnvfv(target, pname, converted_params);
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLint) (converted_params[i] * 65536);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLfixed) converted_params[i];
+ }
+ }
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_GetTexGenfv(GLenum coord, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _check_GetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
+{
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenfvOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenfvOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_GetTexGenfv(coord, pname, params);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_GetTexGenfv(GLenum coord, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _check_GetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 1;
+ GLfloat converted_params[1];
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenivOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenivOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_GetTexGenfv(coord, pname, converted_params);
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLfloat) converted_params[i];
+ }
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_GetTexGenfv(GLenum coord, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _check_GetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 1;
+ GLfloat converted_params[1];
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenxvOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexGenxvOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_GetTexGenfv(coord, pname, converted_params);
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLfloat) converted_params[i];
+ }
+}
+
+extern void GL_APIENTRY _mesa_GetTexParameterfv(GLenum target, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ case GL_GENERATE_MIPMAP: /* size 1 */
+ break;
+ case GL_TEXTURE_CROP_RECT_OES: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexParameterfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetTexParameteriv(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ case GL_GENERATE_MIPMAP: /* size 1 */
+ break;
+ case GL_TEXTURE_CROP_RECT_OES: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexParameteriv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetTexParameterfv(GLenum target, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterxv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ case GL_TEXTURE_MIN_FILTER:
+ case GL_TEXTURE_MAG_FILTER:
+ case GL_GENERATE_MIPMAP:
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_CROP_RECT_OES:
+ n_params = 4;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexParameterfv(target, pname, converted_params);
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLint) (converted_params[i] * 65536);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ params[i] = (GLfixed) converted_params[i];
+ }
+ }
+}
+
+extern void GL_APIENTRY _mesa_Hint(GLenum target, GLenum mode);
+static void GL_APIENTRY _es_Hint(GLenum target, GLenum mode)
+{
+ switch(target) {
+ case GL_FOG_HINT:
+ case GL_LINE_SMOOTH_HINT:
+ case GL_PERSPECTIVE_CORRECTION_HINT:
+ case GL_POINT_SMOOTH_HINT:
+ case GL_GENERATE_MIPMAP_HINT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glHint(target=0x%x)", target);
+ return;
+ }
+ switch(mode) {
+ case GL_FASTEST:
+ case GL_NICEST:
+ case GL_DONT_CARE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glHint(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_Hint(target, mode);
+}
+
+extern GLboolean GL_APIENTRY _mesa_IsBufferARB(GLuint buffer);
+#define _es_IsBuffer _mesa_IsBufferARB
+
+extern GLboolean GL_APIENTRY _mesa_IsEnabled(GLenum cap);
+static GLboolean GL_APIENTRY _es_IsEnabled(GLenum cap)
+{
+ switch(cap) {
+ case GL_NORMALIZE:
+ case GL_RESCALE_NORMAL:
+ case GL_CLIP_PLANE0:
+ case GL_CLIP_PLANE1:
+ case GL_CLIP_PLANE2:
+ case GL_CLIP_PLANE3:
+ case GL_CLIP_PLANE4:
+ case GL_CLIP_PLANE5:
+ case GL_FOG:
+ case GL_LIGHTING:
+ case GL_COLOR_MATERIAL:
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ case GL_POINT_SMOOTH:
+ case GL_LINE_SMOOTH:
+ case GL_CULL_FACE:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_MULTISAMPLE:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_ALPHA_TO_ONE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_TEXTURE_2D:
+ case GL_SCISSOR_TEST:
+ case GL_ALPHA_TEST:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_BLEND:
+ case GL_DITHER:
+ case GL_COLOR_LOGIC_OP:
+ case GL_POINT_SPRITE_OES:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ case GL_TEXTURE_GEN_STR_OES:
+ case GL_VERTEX_ARRAY:
+ case GL_NORMAL_ARRAY:
+ case GL_COLOR_ARRAY:
+ case GL_TEXTURE_COORD_ARRAY:
+ case GL_MATRIX_INDEX_ARRAY_OES:
+ case GL_WEIGHT_ARRAY_OES:
+ case GL_POINT_SIZE_ARRAY_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glIsEnabled(cap=0x%x)", cap);
+ return GL_FALSE;
+ }
+
+ return _mesa_IsEnabled(cap);
+}
+
+extern GLboolean GL_APIENTRY _mesa_IsFramebufferEXT(GLuint framebuffer);
+#define _es_IsFramebufferOES _mesa_IsFramebufferEXT
+
+extern GLboolean GL_APIENTRY _mesa_IsRenderbufferEXT(GLuint renderbuffer);
+#define _es_IsRenderbufferOES _mesa_IsRenderbufferEXT
+
+extern GLboolean GL_APIENTRY _mesa_IsTexture(GLuint texture);
+#define _es_IsTexture _mesa_IsTexture
+
+extern void GL_APIENTRY _mesa_LightModelf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_LightModelf(GLenum pname, GLfloat param)
+{
+ switch(pname) {
+ case GL_LIGHT_MODEL_TWO_SIDE:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_LightModelf(pname, param);
+}
+
+extern void GL_APIENTRY _mesa_LightModelfv(GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_LightModelfv(GLenum pname, const GLfloat *params)
+{
+ switch(pname) {
+ case GL_LIGHT_MODEL_AMBIENT: /* size 4 */
+ break;
+ case GL_LIGHT_MODEL_TWO_SIDE: /* size 1 */
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_LightModelfv(pname, params);
+}
+
+extern void GL_APIENTRY _mesa_LightModelf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_LightModelx(GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+
+ switch(pname) {
+ case GL_LIGHT_MODEL_TWO_SIDE:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelx(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelx(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) param;
+
+ _mesa_LightModelf(pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_LightModelfv(GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_LightModelxv(GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(pname) {
+ case GL_LIGHT_MODEL_AMBIENT:
+ n_params = 4;
+ break;
+ case GL_LIGHT_MODEL_TWO_SIDE:
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightModelxv(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+ }
+
+ _mesa_LightModelfv(pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_Lightf(GLenum light, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_Lightf(GLenum light, GLenum pname, GLfloat param)
+{
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightf(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_SPOT_EXPONENT:
+ case GL_SPOT_CUTOFF:
+ case GL_CONSTANT_ATTENUATION:
+ case GL_LINEAR_ATTENUATION:
+ case GL_QUADRATIC_ATTENUATION:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_Lightf(light, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_Lightfv(GLenum light, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_Lightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightfv(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT: /* size 4 */
+ case GL_DIFFUSE: /* size 4 */
+ case GL_SPECULAR: /* size 4 */
+ case GL_POSITION: /* size 4 */
+ case GL_SPOT_DIRECTION: /* size 3 */
+ case GL_SPOT_EXPONENT: /* size 1 */
+ case GL_SPOT_CUTOFF: /* size 1 */
+ case GL_CONSTANT_ATTENUATION: /* size 1 */
+ case GL_LINEAR_ATTENUATION: /* size 1 */
+ case GL_QUADRATIC_ATTENUATION: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_Lightfv(light, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_Lightf(GLenum light, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_Lightx(GLenum light, GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightx(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_SPOT_EXPONENT:
+ case GL_SPOT_CUTOFF:
+ case GL_CONSTANT_ATTENUATION:
+ case GL_LINEAR_ATTENUATION:
+ case GL_QUADRATIC_ATTENUATION:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightx(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) (param / 65536.0f);
+
+ _mesa_Lightf(light, pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_Lightfv(GLenum light, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_Lightxv(GLenum light, GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+
+ switch(light) {
+ case GL_LIGHT0:
+ case GL_LIGHT1:
+ case GL_LIGHT2:
+ case GL_LIGHT3:
+ case GL_LIGHT4:
+ case GL_LIGHT5:
+ case GL_LIGHT6:
+ case GL_LIGHT7:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightxv(light=0x%x)", light);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT:
+ case GL_DIFFUSE:
+ case GL_SPECULAR:
+ case GL_POSITION:
+ n_params = 4;
+ break;
+ case GL_SPOT_DIRECTION:
+ n_params = 3;
+ break;
+ case GL_SPOT_EXPONENT:
+ case GL_SPOT_CUTOFF:
+ case GL_CONSTANT_ATTENUATION:
+ case GL_LINEAR_ATTENUATION:
+ case GL_QUADRATIC_ATTENUATION:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLightxv(pname=0x%x)", pname);
+ return;
+ }
+
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+
+ _mesa_Lightfv(light, pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_LineWidth(GLfloat width);
+#define _es_LineWidth _mesa_LineWidth
+
+extern void GL_APIENTRY _mesa_LineWidth(GLfloat width);
+static void GL_APIENTRY _es_LineWidthx(GLfixed width)
+{
+ GLfloat converted_width;
+
+ converted_width = (GLfloat) (width / 65536.0f);
+
+ _mesa_LineWidth(converted_width);
+}
+
+extern void GL_APIENTRY _mesa_LoadIdentity(void);
+#define _es_LoadIdentity _mesa_LoadIdentity
+
+extern void GL_APIENTRY _mesa_LoadMatrixf(const GLfloat * m);
+#define _es_LoadMatrixf _mesa_LoadMatrixf
+
+extern void GL_APIENTRY _mesa_LoadMatrixf(GLfloat const * m);
+static void GL_APIENTRY _es_LoadMatrixx(const GLfixed *m)
+{
+ register unsigned int i;
+ unsigned int n_m = 16;
+ GLfloat converted_m[16];
+
+ for (i = 0; i < n_m; i++) {
+ converted_m[i] = (GLfloat) (m[i] / 65536.0f);
+ }
+
+ _mesa_LoadMatrixf(converted_m);
+}
+
+extern void GL_APIENTRY _mesa_LogicOp(GLenum opcode);
+static void GL_APIENTRY _es_LogicOp(GLenum opcode)
+{
+ switch(opcode) {
+ case GL_CLEAR:
+ case GL_SET:
+ case GL_COPY:
+ case GL_COPY_INVERTED:
+ case GL_NOOP:
+ case GL_INVERT:
+ case GL_AND:
+ case GL_NAND:
+ case GL_OR:
+ case GL_NOR:
+ case GL_XOR:
+ case GL_EQUIV:
+ case GL_AND_REVERSE:
+ case GL_AND_INVERTED:
+ case GL_OR_REVERSE:
+ case GL_OR_INVERTED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glLogicOp(opcode=0x%x)", opcode);
+ return;
+ }
+
+ _mesa_LogicOp(opcode);
+}
+
+extern void * GL_APIENTRY _mesa_MapBufferARB(GLenum target, GLenum access);
+static void * GL_APIENTRY _es_MapBufferOES(GLenum target, GLenum access)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMapBufferOES(target=0x%x)", target);
+ return (void *) 0;
+ }
+ switch(access) {
+ case GL_WRITE_ONLY_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMapBufferOES(access=0x%x)", access);
+ return (void *) 0;
+ }
+
+ return _mesa_MapBufferARB(target, access);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_Materialf(GLenum face, GLenum pname, GLfloat param);
+static void GL_APIENTRY _check_Materialf(GLenum face, GLenum pname, GLfloat param)
+{
+ switch(face) {
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialf(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_SHININESS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialf(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_Materialf(face, pname, param);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_Materialfv(GLenum face, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _check_Materialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ switch(face) {
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialfv(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT: /* size 4 */
+ case GL_DIFFUSE: /* size 4 */
+ case GL_AMBIENT_AND_DIFFUSE: /* size 4 */
+ case GL_SPECULAR: /* size 4 */
+ case GL_EMISSION: /* size 4 */
+ case GL_SHININESS: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_Materialfv(face, pname, params);
+}
+
+extern void GL_APIENTRY _es_Materialf(GLenum face, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_Materialx(GLenum face, GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+
+ switch(face) {
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialx(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_SHININESS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialx(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) (param / 65536.0f);
+
+ _es_Materialf(face, pname, converted_param);
+}
+
+extern void GL_APIENTRY _es_Materialfv(GLenum face, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_Materialxv(GLenum face, GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+
+ switch(face) {
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialxv(face=0x%x)", face);
+ return;
+ }
+ switch(pname) {
+ case GL_AMBIENT:
+ case GL_DIFFUSE:
+ case GL_AMBIENT_AND_DIFFUSE:
+ case GL_SPECULAR:
+ case GL_EMISSION:
+ n_params = 4;
+ break;
+ case GL_SHININESS:
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMaterialxv(pname=0x%x)", pname);
+ return;
+ }
+
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+
+ _es_Materialfv(face, pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_MatrixMode(GLenum mode);
+static void GL_APIENTRY _es_MatrixMode(GLenum mode)
+{
+ switch(mode) {
+ case GL_MODELVIEW:
+ case GL_PROJECTION:
+ case GL_TEXTURE:
+ case GL_MATRIX_PALETTE_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMatrixMode(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_MatrixMode(mode);
+}
+
+extern void GL_APIENTRY _mesa_MultMatrixf(const GLfloat * m);
+#define _es_MultMatrixf _mesa_MultMatrixf
+
+extern void GL_APIENTRY _mesa_MultMatrixf(GLfloat const * m);
+static void GL_APIENTRY _es_MultMatrixx(const GLfixed *m)
+{
+ register unsigned int i;
+ unsigned int n_m = 16;
+ GLfloat converted_m[16];
+
+ for (i = 0; i < n_m; i++) {
+ converted_m[i] = (GLfloat) (m[i] / 65536.0f);
+ }
+
+ _mesa_MultMatrixf(converted_m);
+}
+
+extern void GL_APIENTRY _mesa_MultiDrawArraysEXT(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount);
+static void GL_APIENTRY _es_MultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawArraysEXT(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_MultiDrawArraysEXT(mode, first, count, primcount);
+}
+
+extern void GL_APIENTRY _mesa_MultiDrawElementsEXT(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount);
+static void GL_APIENTRY _es_MultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawElementsEXT(mode=0x%x)", mode);
+ return;
+ }
+ switch(type) {
+ case GL_UNSIGNED_BYTE:
+ case GL_UNSIGNED_SHORT:
+ case GL_UNSIGNED_INT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawElementsEXT(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_MultiDrawElementsEXT(mode, count, type, indices, primcount);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_MultiTexCoord4f(GLenum texture, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+static void GL_APIENTRY _check_MultiTexCoord4f(GLenum texture, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ switch(texture) {
+ case GL_TEXTURE0:
+ case GL_TEXTURE1:
+ case GL_TEXTURE2:
+ case GL_TEXTURE3:
+ case GL_TEXTURE4:
+ case GL_TEXTURE5:
+ case GL_TEXTURE6:
+ case GL_TEXTURE7:
+ case GL_TEXTURE8:
+ case GL_TEXTURE9:
+ case GL_TEXTURE10:
+ case GL_TEXTURE11:
+ case GL_TEXTURE12:
+ case GL_TEXTURE13:
+ case GL_TEXTURE14:
+ case GL_TEXTURE15:
+ case GL_TEXTURE16:
+ case GL_TEXTURE17:
+ case GL_TEXTURE18:
+ case GL_TEXTURE19:
+ case GL_TEXTURE20:
+ case GL_TEXTURE21:
+ case GL_TEXTURE22:
+ case GL_TEXTURE23:
+ case GL_TEXTURE24:
+ case GL_TEXTURE25:
+ case GL_TEXTURE26:
+ case GL_TEXTURE27:
+ case GL_TEXTURE28:
+ case GL_TEXTURE29:
+ case GL_TEXTURE30:
+ case GL_TEXTURE31:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiTexCoord4f(texture=0x%x)", texture);
+ return;
+ }
+
+ _es_MultiTexCoord4f(texture, s, t, r, q);
+}
+
+extern void GL_APIENTRY _es_MultiTexCoord4f(GLenum texture, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+static void GL_APIENTRY _es_MultiTexCoord4x(GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ GLfloat converted_s;
+ GLfloat converted_t;
+ GLfloat converted_r;
+ GLfloat converted_q;
+
+ switch(texture) {
+ case GL_TEXTURE0:
+ case GL_TEXTURE1:
+ case GL_TEXTURE2:
+ case GL_TEXTURE3:
+ case GL_TEXTURE4:
+ case GL_TEXTURE5:
+ case GL_TEXTURE6:
+ case GL_TEXTURE7:
+ case GL_TEXTURE8:
+ case GL_TEXTURE9:
+ case GL_TEXTURE10:
+ case GL_TEXTURE11:
+ case GL_TEXTURE12:
+ case GL_TEXTURE13:
+ case GL_TEXTURE14:
+ case GL_TEXTURE15:
+ case GL_TEXTURE16:
+ case GL_TEXTURE17:
+ case GL_TEXTURE18:
+ case GL_TEXTURE19:
+ case GL_TEXTURE20:
+ case GL_TEXTURE21:
+ case GL_TEXTURE22:
+ case GL_TEXTURE23:
+ case GL_TEXTURE24:
+ case GL_TEXTURE25:
+ case GL_TEXTURE26:
+ case GL_TEXTURE27:
+ case GL_TEXTURE28:
+ case GL_TEXTURE29:
+ case GL_TEXTURE30:
+ case GL_TEXTURE31:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiTexCoord4x(texture=0x%x)", texture);
+ return;
+ }
+
+ converted_s = (GLfloat) (s / 65536.0f);
+ converted_t = (GLfloat) (t / 65536.0f);
+ converted_r = (GLfloat) (r / 65536.0f);
+ converted_q = (GLfloat) (q / 65536.0f);
+
+ _es_MultiTexCoord4f(texture, converted_s, converted_t, converted_r, converted_q);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_Normal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+#define _check_Normal3f _es_Normal3f
+
+extern void GL_APIENTRY _es_Normal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+static void GL_APIENTRY _es_Normal3x(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ GLfloat converted_nx;
+ GLfloat converted_ny;
+ GLfloat converted_nz;
+
+ converted_nx = (GLfloat) (nx / 65536.0f);
+ converted_ny = (GLfloat) (ny / 65536.0f);
+ converted_nz = (GLfloat) (nz / 65536.0f);
+
+ _es_Normal3f(converted_nx, converted_ny, converted_nz);
+}
+
+extern void GL_APIENTRY _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_NormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ switch(type) {
+ case GL_BYTE:
+ case GL_SHORT:
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glNormalPointer(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_NormalPointer(type, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_Ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+static void GL_APIENTRY _es_Orthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ GLdouble converted_left;
+ GLdouble converted_right;
+ GLdouble converted_bottom;
+ GLdouble converted_top;
+ GLdouble converted_zNear;
+ GLdouble converted_zFar;
+
+ converted_left = (GLdouble) (left);
+ converted_right = (GLdouble) (right);
+ converted_bottom = (GLdouble) (bottom);
+ converted_top = (GLdouble) (top);
+ converted_zNear = (GLdouble) (zNear);
+ converted_zFar = (GLdouble) (zFar);
+
+ _mesa_Ortho(converted_left, converted_right, converted_bottom, converted_top, converted_zNear, converted_zFar);
+}
+
+extern void GL_APIENTRY _mesa_Ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+static void GL_APIENTRY _es_Orthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ GLdouble converted_left;
+ GLdouble converted_right;
+ GLdouble converted_bottom;
+ GLdouble converted_top;
+ GLdouble converted_zNear;
+ GLdouble converted_zFar;
+
+ converted_left = (GLdouble) (left / 65536.0);
+ converted_right = (GLdouble) (right / 65536.0);
+ converted_bottom = (GLdouble) (bottom / 65536.0);
+ converted_top = (GLdouble) (top / 65536.0);
+ converted_zNear = (GLdouble) (zNear / 65536.0);
+ converted_zFar = (GLdouble) (zFar / 65536.0);
+
+ _mesa_Ortho(converted_left, converted_right, converted_bottom, converted_top, converted_zNear, converted_zFar);
+}
+
+extern void GL_APIENTRY _mesa_PixelStorei(GLenum pname, GLint param);
+static void GL_APIENTRY _es_PixelStorei(GLenum pname, GLint param)
+{
+ switch(pname) {
+ case GL_PACK_ALIGNMENT:
+ case GL_UNPACK_ALIGNMENT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPixelStorei(pname=0x%x)", pname);
+ return;
+ }
+ switch(param) {
+ case 1:
+ case 2:
+ case 4:
+ case 8:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glPixelStorei(param=%d)", param);
+ return;
+ }
+
+ _mesa_PixelStorei(pname, param);
+}
+
+extern void GL_APIENTRY _mesa_PointParameterf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_PointParameterf(GLenum pname, GLfloat param)
+{
+ switch(pname) {
+ case GL_POINT_SIZE_MIN:
+ case GL_POINT_SIZE_MAX:
+ case GL_POINT_FADE_THRESHOLD_SIZE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPointParameterf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_PointParameterf(pname, param);
+}
+
+extern void GL_APIENTRY _mesa_PointParameterfv(GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_PointParameterfv(GLenum pname, const GLfloat *params)
+{
+ switch(pname) {
+ case GL_POINT_SIZE_MIN: /* size 1 */
+ case GL_POINT_SIZE_MAX: /* size 1 */
+ case GL_POINT_FADE_THRESHOLD_SIZE: /* size 1 */
+ case GL_POINT_DISTANCE_ATTENUATION: /* size 3 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPointParameterfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_PointParameterfv(pname, params);
+}
+
+extern void GL_APIENTRY _mesa_PointParameterf(GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_PointParameterx(GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+
+ switch(pname) {
+ case GL_POINT_SIZE_MIN:
+ case GL_POINT_SIZE_MAX:
+ case GL_POINT_FADE_THRESHOLD_SIZE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPointParameterx(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) (param / 65536.0f);
+
+ _mesa_PointParameterf(pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_PointParameterfv(GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_PointParameterxv(GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 3;
+ GLfloat converted_params[3];
+
+ switch(pname) {
+ case GL_POINT_SIZE_MIN:
+ case GL_POINT_SIZE_MAX:
+ case GL_POINT_FADE_THRESHOLD_SIZE:
+ n_params = 1;
+ break;
+ case GL_POINT_DISTANCE_ATTENUATION:
+ n_params = 3;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPointParameterxv(pname=0x%x)", pname);
+ return;
+ }
+
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+
+ _mesa_PointParameterfv(pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_PointSize(GLfloat size);
+#define _es_PointSize _mesa_PointSize
+
+extern void GL_APIENTRY _mesa_PointSizePointer(GLenum type, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_PointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ switch(type) {
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPointSizePointerOES(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_PointSizePointer(type, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_PointSize(GLfloat size);
+static void GL_APIENTRY _es_PointSizex(GLfixed size)
+{
+ GLfloat converted_size;
+
+ converted_size = (GLfloat) (size / 65536.0f);
+
+ _mesa_PointSize(converted_size);
+}
+
+extern void GL_APIENTRY _mesa_PolygonOffset(GLfloat factor, GLfloat units);
+#define _es_PolygonOffset _mesa_PolygonOffset
+
+extern void GL_APIENTRY _mesa_PolygonOffset(GLfloat factor, GLfloat units);
+static void GL_APIENTRY _es_PolygonOffsetx(GLfixed factor, GLfixed units)
+{
+ GLfloat converted_factor;
+ GLfloat converted_units;
+
+ converted_factor = (GLfloat) (factor / 65536.0f);
+ converted_units = (GLfloat) (units / 65536.0f);
+
+ _mesa_PolygonOffset(converted_factor, converted_units);
+}
+
+extern void GL_APIENTRY _mesa_PopMatrix(void);
+#define _es_PopMatrix _mesa_PopMatrix
+
+extern void GL_APIENTRY _mesa_PushMatrix(void);
+#define _es_PushMatrix _mesa_PushMatrix
+
+/* this function is special and is defined elsewhere */
+extern GLbitfield GL_APIENTRY _es_QueryMatrixxOES(GLfixed * mantissa, GLint * exponent);
+#define _check_QueryMatrixxOES _es_QueryMatrixxOES
+
+extern void GL_APIENTRY _mesa_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels);
+static void GL_APIENTRY _es_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_RenderbufferStorageEXT(GLenum target, GLenum internalFormat, GLsizei width, GLsizei height);
+static void GL_APIENTRY _check_RenderbufferStorageOES(GLenum target, GLenum internalFormat, GLsizei width, GLsizei height)
+{
+ switch(target) {
+ case GL_RENDERBUFFER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glRenderbufferStorageOES(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_DEPTH_COMPONENT16_OES:
+ case GL_RGBA4_OES:
+ case GL_RGB5_A1_OES:
+ case GL_RGB565_OES:
+ case GL_STENCIL_INDEX8_OES:
+ case GL_DEPTH_COMPONENT24_OES:
+ case GL_DEPTH_COMPONENT32_OES:
+ case GL_RGB8_OES:
+ case GL_RGBA8_OES:
+ case GL_STENCIL_INDEX1_OES:
+ case GL_STENCIL_INDEX4_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glRenderbufferStorageOES(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+
+ _es_RenderbufferStorageEXT(target, internalFormat, width, height);
+}
+
+extern void GL_APIENTRY _mesa_Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+#define _es_Rotatef _mesa_Rotatef
+
+extern void GL_APIENTRY _mesa_Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+static void GL_APIENTRY _es_Rotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ GLfloat converted_angle;
+ GLfloat converted_x;
+ GLfloat converted_y;
+ GLfloat converted_z;
+
+ converted_angle = (GLfloat) (angle / 65536.0f);
+ converted_x = (GLfloat) (x / 65536.0f);
+ converted_y = (GLfloat) (y / 65536.0f);
+ converted_z = (GLfloat) (z / 65536.0f);
+
+ _mesa_Rotatef(converted_angle, converted_x, converted_y, converted_z);
+}
+
+extern void GL_APIENTRY _mesa_SampleCoverageARB(GLclampf value, GLboolean invert);
+#define _es_SampleCoverage _mesa_SampleCoverageARB
+
+extern void GL_APIENTRY _mesa_SampleCoverageARB(GLclampf value, GLboolean invert);
+static void GL_APIENTRY _es_SampleCoveragex(GLclampx value, GLboolean invert)
+{
+ GLclampf converted_value;
+
+ converted_value = (GLclampf) (value / 65536.0f);
+
+ _mesa_SampleCoverageARB(converted_value, invert);
+}
+
+extern void GL_APIENTRY _mesa_Scalef(GLfloat x, GLfloat y, GLfloat z);
+#define _es_Scalef _mesa_Scalef
+
+extern void GL_APIENTRY _mesa_Scalef(GLfloat x, GLfloat y, GLfloat z);
+static void GL_APIENTRY _es_Scalex(GLfixed x, GLfixed y, GLfixed z)
+{
+ GLfloat converted_x;
+ GLfloat converted_y;
+ GLfloat converted_z;
+
+ converted_x = (GLfloat) (x / 65536.0f);
+ converted_y = (GLfloat) (y / 65536.0f);
+ converted_z = (GLfloat) (z / 65536.0f);
+
+ _mesa_Scalef(converted_x, converted_y, converted_z);
+}
+
+extern void GL_APIENTRY _mesa_Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
+#define _es_Scissor _mesa_Scissor
+
+extern void GL_APIENTRY _mesa_ShadeModel(GLenum mode);
+static void GL_APIENTRY _es_ShadeModel(GLenum mode)
+{
+ switch(mode) {
+ case GL_FLAT:
+ case GL_SMOOTH:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glShadeModel(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_ShadeModel(mode);
+}
+
+extern void GL_APIENTRY _mesa_StencilFunc(GLenum func, GLint ref, GLuint mask);
+static void GL_APIENTRY _es_StencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_GEQUAL:
+ case GL_EQUAL:
+ case GL_NOTEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilFunc(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_StencilFunc(func, ref, mask);
+}
+
+extern void GL_APIENTRY _mesa_StencilMask(GLuint mask);
+#define _es_StencilMask _mesa_StencilMask
+
+extern void GL_APIENTRY _mesa_StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+static void GL_APIENTRY _es_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ switch(fail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP_OES:
+ case GL_DECR_WRAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(fail=0x%x)", fail);
+ return;
+ }
+ switch(zfail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP_OES:
+ case GL_DECR_WRAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(zfail=0x%x)", zfail);
+ return;
+ }
+ switch(zpass) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP_OES:
+ case GL_DECR_WRAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(zpass=0x%x)", zpass);
+ return;
+ }
+
+ _mesa_StencilOp(fail, zfail, zpass);
+}
+
+extern void GL_APIENTRY _mesa_TexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_TexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ switch(size) {
+ case 2:
+ case 3:
+ case 4:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexCoordPointer(size=%d)", size);
+ return;
+ }
+ switch(type) {
+ case GL_BYTE:
+ case GL_SHORT:
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexCoordPointer(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_TexCoordPointer(size, type, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_TexEnvf(GLenum target, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_TexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT:
+ break;
+ case GL_TEXTURE_ENV_MODE:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_DECAL && param != GL_BLEND && param != GL_ADD && param != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_RGB:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT && param != GL_DOT3_RGB && param != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_ALPHA:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (param != 1.0 && param != 2.0 && param != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB:
+ case GL_SRC1_RGB:
+ case GL_SRC2_RGB:
+ case GL_SRC0_ALPHA:
+ case GL_SRC1_ALPHA:
+ case GL_SRC2_ALPHA:
+ if (param != GL_TEXTURE && param != GL_CONSTANT && param != GL_PRIMARY_COLOR && param != GL_PREVIOUS && param != GL_TEXTURE0 && param != GL_TEXTURE1 && param != GL_TEXTURE2 && param != GL_TEXTURE3 && param != GL_TEXTURE4 && param != GL_TEXTURE5 && param != GL_TEXTURE6 && param != GL_TEXTURE7 && param != GL_TEXTURE8 && param != GL_TEXTURE9 && param != GL_TEXTURE10 && param != GL_TEXTURE11 && param != GL_TEXTURE12 && param != GL_TEXTURE13 && param != GL_TEXTURE14 && param != GL_TEXTURE15 && param != GL_TEXTURE16 && param != GL_TEXTURE17 && param != GL_TEXTURE18 && param != GL_TEXTURE19 && param != GL_TEXTURE20 && param != GL_TEXTURE21 && param != GL_TEXTURE22 && param != GL_TEXTURE23 && param != GL_TEXTURE24 && param != GL_TEXTURE25 && param != GL_TEXTURE26 && param != GL_TEXTURE27 && param != GL_TEXTURE28 && param != GL_TEXTURE29 && param != GL_TEXTURE30 && param != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_RGB:
+ case GL_OPERAND1_RGB:
+ case GL_OPERAND2_RGB:
+ if (param != GL_SRC_COLOR && param != GL_ONE_MINUS_SRC_COLOR && param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_ALPHA:
+ case GL_OPERAND1_ALPHA:
+ case GL_OPERAND2_ALPHA:
+ if (param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexEnvf(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexEnvfv(GLenum target, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_TexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES: /* size 1 */
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT: /* size 1 */
+ break;
+ case GL_TEXTURE_ENV_MODE: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_DECAL && params[0] != GL_BLEND && params[0] != GL_ADD && params[0] != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_RGB: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT && params[0] != GL_DOT3_RGB && params[0] != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_ALPHA: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (params[0] != 1.0 && params[0] != 2.0 && params[0] != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB: /* size 1 */
+ case GL_SRC1_RGB: /* size 1 */
+ case GL_SRC2_RGB: /* size 1 */
+ case GL_SRC0_ALPHA: /* size 1 */
+ case GL_SRC1_ALPHA: /* size 1 */
+ case GL_SRC2_ALPHA: /* size 1 */
+ if (params[0] != GL_TEXTURE && params[0] != GL_CONSTANT && params[0] != GL_PRIMARY_COLOR && params[0] != GL_PREVIOUS && params[0] != GL_TEXTURE0 && params[0] != GL_TEXTURE1 && params[0] != GL_TEXTURE2 && params[0] != GL_TEXTURE3 && params[0] != GL_TEXTURE4 && params[0] != GL_TEXTURE5 && params[0] != GL_TEXTURE6 && params[0] != GL_TEXTURE7 && params[0] != GL_TEXTURE8 && params[0] != GL_TEXTURE9 && params[0] != GL_TEXTURE10 && params[0] != GL_TEXTURE11 && params[0] != GL_TEXTURE12 && params[0] != GL_TEXTURE13 && params[0] != GL_TEXTURE14 && params[0] != GL_TEXTURE15 && params[0] != GL_TEXTURE16 && params[0] != GL_TEXTURE17 && params[0] != GL_TEXTURE18 && params[0] != GL_TEXTURE19 && params[0] != GL_TEXTURE20 && params[0] != GL_TEXTURE21 && params[0] != GL_TEXTURE22 && params[0] != GL_TEXTURE23 && params[0] != GL_TEXTURE24 && params[0] != GL_TEXTURE25 && params[0] != GL_TEXTURE26 && params[0] != GL_TEXTURE27 && params[0] != GL_TEXTURE28 && params[0] != GL_TEXTURE29 && params[0] != GL_TEXTURE30 && params[0] != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_RGB: /* size 1 */
+ case GL_OPERAND1_RGB: /* size 1 */
+ case GL_OPERAND2_RGB: /* size 1 */
+ if (params[0] != GL_SRC_COLOR && params[0] != GL_ONE_MINUS_SRC_COLOR && params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_ALPHA: /* size 1 */
+ case GL_OPERAND1_ALPHA: /* size 1 */
+ case GL_OPERAND2_ALPHA: /* size 1 */
+ if (params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV_COLOR: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexEnvfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexEnvi(GLenum target, GLenum pname, GLint param);
+static void GL_APIENTRY _es_TexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT:
+ break;
+ case GL_TEXTURE_ENV_MODE:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_DECAL && param != GL_BLEND && param != GL_ADD && param != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_RGB:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT && param != GL_DOT3_RGB && param != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_ALPHA:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (param != 1.0 && param != 2.0 && param != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB:
+ case GL_SRC1_RGB:
+ case GL_SRC2_RGB:
+ case GL_SRC0_ALPHA:
+ case GL_SRC1_ALPHA:
+ case GL_SRC2_ALPHA:
+ if (param != GL_TEXTURE && param != GL_CONSTANT && param != GL_PRIMARY_COLOR && param != GL_PREVIOUS && param != GL_TEXTURE0 && param != GL_TEXTURE1 && param != GL_TEXTURE2 && param != GL_TEXTURE3 && param != GL_TEXTURE4 && param != GL_TEXTURE5 && param != GL_TEXTURE6 && param != GL_TEXTURE7 && param != GL_TEXTURE8 && param != GL_TEXTURE9 && param != GL_TEXTURE10 && param != GL_TEXTURE11 && param != GL_TEXTURE12 && param != GL_TEXTURE13 && param != GL_TEXTURE14 && param != GL_TEXTURE15 && param != GL_TEXTURE16 && param != GL_TEXTURE17 && param != GL_TEXTURE18 && param != GL_TEXTURE19 && param != GL_TEXTURE20 && param != GL_TEXTURE21 && param != GL_TEXTURE22 && param != GL_TEXTURE23 && param != GL_TEXTURE24 && param != GL_TEXTURE25 && param != GL_TEXTURE26 && param != GL_TEXTURE27 && param != GL_TEXTURE28 && param != GL_TEXTURE29 && param != GL_TEXTURE30 && param != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_RGB:
+ case GL_OPERAND1_RGB:
+ case GL_OPERAND2_RGB:
+ if (param != GL_SRC_COLOR && param != GL_ONE_MINUS_SRC_COLOR && param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_ALPHA:
+ case GL_OPERAND1_ALPHA:
+ case GL_OPERAND2_ALPHA:
+ if (param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvi(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexEnvi(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexEnviv(GLenum target, GLenum pname, const GLint * params);
+static void GL_APIENTRY _es_TexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES: /* size 1 */
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT: /* size 1 */
+ break;
+ case GL_TEXTURE_ENV_MODE: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_DECAL && params[0] != GL_BLEND && params[0] != GL_ADD && params[0] != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_RGB: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT && params[0] != GL_DOT3_RGB && params[0] != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_COMBINE_ALPHA: /* size 1 */
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (params[0] != 1.0 && params[0] != 2.0 && params[0] != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB: /* size 1 */
+ case GL_SRC1_RGB: /* size 1 */
+ case GL_SRC2_RGB: /* size 1 */
+ case GL_SRC0_ALPHA: /* size 1 */
+ case GL_SRC1_ALPHA: /* size 1 */
+ case GL_SRC2_ALPHA: /* size 1 */
+ if (params[0] != GL_TEXTURE && params[0] != GL_CONSTANT && params[0] != GL_PRIMARY_COLOR && params[0] != GL_PREVIOUS && params[0] != GL_TEXTURE0 && params[0] != GL_TEXTURE1 && params[0] != GL_TEXTURE2 && params[0] != GL_TEXTURE3 && params[0] != GL_TEXTURE4 && params[0] != GL_TEXTURE5 && params[0] != GL_TEXTURE6 && params[0] != GL_TEXTURE7 && params[0] != GL_TEXTURE8 && params[0] != GL_TEXTURE9 && params[0] != GL_TEXTURE10 && params[0] != GL_TEXTURE11 && params[0] != GL_TEXTURE12 && params[0] != GL_TEXTURE13 && params[0] != GL_TEXTURE14 && params[0] != GL_TEXTURE15 && params[0] != GL_TEXTURE16 && params[0] != GL_TEXTURE17 && params[0] != GL_TEXTURE18 && params[0] != GL_TEXTURE19 && params[0] != GL_TEXTURE20 && params[0] != GL_TEXTURE21 && params[0] != GL_TEXTURE22 && params[0] != GL_TEXTURE23 && params[0] != GL_TEXTURE24 && params[0] != GL_TEXTURE25 && params[0] != GL_TEXTURE26 && params[0] != GL_TEXTURE27 && params[0] != GL_TEXTURE28 && params[0] != GL_TEXTURE29 && params[0] != GL_TEXTURE30 && params[0] != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_RGB: /* size 1 */
+ case GL_OPERAND1_RGB: /* size 1 */
+ case GL_OPERAND2_RGB: /* size 1 */
+ if (params[0] != GL_SRC_COLOR && params[0] != GL_ONE_MINUS_SRC_COLOR && params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_OPERAND0_ALPHA: /* size 1 */
+ case GL_OPERAND1_ALPHA: /* size 1 */
+ case GL_OPERAND2_ALPHA: /* size 1 */
+ if (params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV_COLOR: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnviv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexEnviv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexEnvf(GLenum target, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_TexEnvx(GLenum target, GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+ int convert_param_value = 1;
+
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT:
+ break;
+ case GL_TEXTURE_ENV_MODE:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_DECAL && param != GL_BLEND && param != GL_ADD && param != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_COMBINE_RGB:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT && param != GL_DOT3_RGB && param != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_COMBINE_ALPHA:
+ if (param != GL_REPLACE && param != GL_MODULATE && param != GL_ADD && param != GL_ADD_SIGNED && param != GL_INTERPOLATE && param != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (param != 1.0 && param != 2.0 && param != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB:
+ case GL_SRC1_RGB:
+ case GL_SRC2_RGB:
+ case GL_SRC0_ALPHA:
+ case GL_SRC1_ALPHA:
+ case GL_SRC2_ALPHA:
+ if (param != GL_TEXTURE && param != GL_CONSTANT && param != GL_PRIMARY_COLOR && param != GL_PREVIOUS && param != GL_TEXTURE0 && param != GL_TEXTURE1 && param != GL_TEXTURE2 && param != GL_TEXTURE3 && param != GL_TEXTURE4 && param != GL_TEXTURE5 && param != GL_TEXTURE6 && param != GL_TEXTURE7 && param != GL_TEXTURE8 && param != GL_TEXTURE9 && param != GL_TEXTURE10 && param != GL_TEXTURE11 && param != GL_TEXTURE12 && param != GL_TEXTURE13 && param != GL_TEXTURE14 && param != GL_TEXTURE15 && param != GL_TEXTURE16 && param != GL_TEXTURE17 && param != GL_TEXTURE18 && param != GL_TEXTURE19 && param != GL_TEXTURE20 && param != GL_TEXTURE21 && param != GL_TEXTURE22 && param != GL_TEXTURE23 && param != GL_TEXTURE24 && param != GL_TEXTURE25 && param != GL_TEXTURE26 && param != GL_TEXTURE27 && param != GL_TEXTURE28 && param != GL_TEXTURE29 && param != GL_TEXTURE30 && param != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_OPERAND0_RGB:
+ case GL_OPERAND1_RGB:
+ case GL_OPERAND2_RGB:
+ if (param != GL_SRC_COLOR && param != GL_ONE_MINUS_SRC_COLOR && param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_OPERAND0_ALPHA:
+ case GL_OPERAND1_ALPHA:
+ case GL_OPERAND2_ALPHA:
+ if (param != GL_SRC_ALPHA && param != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvx(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_param_value) {
+ converted_param = (GLfloat) (param / 65536.0f);
+ } else {
+ converted_param = (GLfloat) param;
+ }
+
+ _mesa_TexEnvf(target, pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_TexEnvfv(GLenum target, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_TexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(target) {
+ case GL_POINT_SPRITE_OES:
+ if (pname != GL_COORD_REPLACE_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_FILTER_CONTROL_EXT:
+ if (pname != GL_TEXTURE_LOD_BIAS_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ case GL_TEXTURE_ENV:
+ if (pname != GL_TEXTURE_ENV_MODE && pname != GL_COMBINE_RGB && pname != GL_COMBINE_ALPHA && pname != GL_RGB_SCALE && pname != GL_ALPHA_SCALE && pname != GL_SRC0_RGB && pname != GL_SRC1_RGB && pname != GL_SRC2_RGB && pname != GL_SRC0_ALPHA && pname != GL_SRC1_ALPHA && pname != GL_SRC2_ALPHA && pname != GL_OPERAND0_RGB && pname != GL_OPERAND1_RGB && pname != GL_OPERAND2_RGB && pname != GL_OPERAND0_ALPHA && pname != GL_OPERAND1_ALPHA && pname != GL_OPERAND2_ALPHA && pname != GL_TEXTURE_ENV_COLOR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_COORD_REPLACE_OES:
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_LOD_BIAS_EXT:
+ n_params = 1;
+ break;
+ case GL_TEXTURE_ENV_MODE:
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_DECAL && params[0] != GL_BLEND && params[0] != GL_ADD && params[0] != GL_COMBINE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_COMBINE_RGB:
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT && params[0] != GL_DOT3_RGB && params[0] != GL_DOT3_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_COMBINE_ALPHA:
+ if (params[0] != GL_REPLACE && params[0] != GL_MODULATE && params[0] != GL_ADD && params[0] != GL_ADD_SIGNED && params[0] != GL_INTERPOLATE && params[0] != GL_SUBTRACT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_RGB_SCALE:
+ case GL_ALPHA_SCALE:
+ if (params[0] != 1.0 && params[0] != 2.0 && params[0] != 4.0) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_SRC0_RGB:
+ case GL_SRC1_RGB:
+ case GL_SRC2_RGB:
+ case GL_SRC0_ALPHA:
+ case GL_SRC1_ALPHA:
+ case GL_SRC2_ALPHA:
+ if (params[0] != GL_TEXTURE && params[0] != GL_CONSTANT && params[0] != GL_PRIMARY_COLOR && params[0] != GL_PREVIOUS && params[0] != GL_TEXTURE0 && params[0] != GL_TEXTURE1 && params[0] != GL_TEXTURE2 && params[0] != GL_TEXTURE3 && params[0] != GL_TEXTURE4 && params[0] != GL_TEXTURE5 && params[0] != GL_TEXTURE6 && params[0] != GL_TEXTURE7 && params[0] != GL_TEXTURE8 && params[0] != GL_TEXTURE9 && params[0] != GL_TEXTURE10 && params[0] != GL_TEXTURE11 && params[0] != GL_TEXTURE12 && params[0] != GL_TEXTURE13 && params[0] != GL_TEXTURE14 && params[0] != GL_TEXTURE15 && params[0] != GL_TEXTURE16 && params[0] != GL_TEXTURE17 && params[0] != GL_TEXTURE18 && params[0] != GL_TEXTURE19 && params[0] != GL_TEXTURE20 && params[0] != GL_TEXTURE21 && params[0] != GL_TEXTURE22 && params[0] != GL_TEXTURE23 && params[0] != GL_TEXTURE24 && params[0] != GL_TEXTURE25 && params[0] != GL_TEXTURE26 && params[0] != GL_TEXTURE27 && params[0] != GL_TEXTURE28 && params[0] != GL_TEXTURE29 && params[0] != GL_TEXTURE30 && params[0] != GL_TEXTURE31) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_OPERAND0_RGB:
+ case GL_OPERAND1_RGB:
+ case GL_OPERAND2_RGB:
+ if (params[0] != GL_SRC_COLOR && params[0] != GL_ONE_MINUS_SRC_COLOR && params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_OPERAND0_ALPHA:
+ case GL_OPERAND1_ALPHA:
+ case GL_OPERAND2_ALPHA:
+ if (params[0] != GL_SRC_ALPHA && params[0] != GL_ONE_MINUS_SRC_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_ENV_COLOR:
+ n_params = 4;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexEnvxv(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+ }
+
+ _mesa_TexEnvfv(target, pname, converted_params);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenf(GLenum coord, GLenum pname, GLfloat param);
+static void GL_APIENTRY _check_TexGenfOES(GLenum coord, GLenum pname, GLfloat param)
+{
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ if (param != GL_NORMAL_MAP_OES && param != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfOES(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_TexGenf(coord, pname, param);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenfv(GLenum coord, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _check_TexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfvOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES: /* size 1 */
+ if (params[0] != GL_NORMAL_MAP_OES && params[0] != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfvOES(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenfvOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _es_TexGenfv(coord, pname, params);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenf(GLenum coord, GLenum pname, GLfloat param);
+static void GL_APIENTRY _check_TexGeniOES(GLenum coord, GLenum pname, GLint param)
+{
+ GLfloat converted_param;
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGeniOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ if (param != GL_NORMAL_MAP_OES && param != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGeniOES(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGeniOES(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) param;
+
+ _es_TexGenf(coord, pname, converted_param);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenfv(GLenum coord, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _check_TexGenivOES(GLenum coord, GLenum pname, const GLint *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 1;
+ GLfloat converted_params[1];
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenivOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ if (params[0] != GL_NORMAL_MAP_OES && params[0] != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenivOES(pname=0x%x)", pname);
+ return;
+ }
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenivOES(pname=0x%x)", pname);
+ return;
+ }
+
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+
+ _es_TexGenfv(coord, pname, converted_params);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenf(GLenum coord, GLenum pname, GLfloat param);
+static void GL_APIENTRY _check_TexGenxOES(GLenum coord, GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ if (param != GL_NORMAL_MAP_OES && param != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxOES(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxOES(pname=0x%x)", pname);
+ return;
+ }
+
+ converted_param = (GLfloat) param;
+
+ _es_TexGenf(coord, pname, converted_param);
+}
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_TexGenfv(GLenum coord, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _check_TexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 1;
+ GLfloat converted_params[1];
+
+ switch(coord) {
+ case GL_TEXTURE_GEN_STR_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxvOES(coord=0x%x)", coord);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_GEN_MODE_OES:
+ if (params[0] != GL_NORMAL_MAP_OES && params[0] != GL_REFLECTION_MAP_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxvOES(pname=0x%x)", pname);
+ return;
+ }
+ n_params = 1;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexGenxvOES(pname=0x%x)", pname);
+ return;
+ }
+
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+
+ _es_TexGenfv(coord, pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_ALPHA:
+ if (format != GL_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (format != GL_RGB) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (format != GL_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ if (format != GL_LUMINANCE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_LUMINANCE_ALPHA:
+ if (format != GL_LUMINANCE_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=%d)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(border=%d)", border);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_TexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ if (param != GL_CLAMP_TO_EDGE && param != GL_REPEAT && param != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && param != GL_LINEAR_MIPMAP_NEAREST && param != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_GENERATE_MIPMAP:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameterf(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterfv(GLenum target, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ if (params[0] != GL_CLAMP_TO_EDGE && params[0] != GL_REPEAT && params[0] != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR && params[0] != GL_NEAREST_MIPMAP_NEAREST && params[0] != GL_NEAREST_MIPMAP_LINEAR && params[0] != GL_LINEAR_MIPMAP_NEAREST && params[0] != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_GENERATE_MIPMAP: /* size 1 */
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT: /* size 1 */
+ case GL_TEXTURE_CROP_RECT_OES: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameterfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexParameteri(GLenum target, GLenum pname, GLint param);
+static void GL_APIENTRY _es_TexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ if (param != GL_CLAMP_TO_EDGE && param != GL_REPEAT && param != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && param != GL_LINEAR_MIPMAP_NEAREST && param != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_GENERATE_MIPMAP:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameteri(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexParameteriv(GLenum target, GLenum pname, const GLint * params);
+static void GL_APIENTRY _es_TexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ if (params[0] != GL_CLAMP_TO_EDGE && params[0] != GL_REPEAT && params[0] != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR && params[0] != GL_NEAREST_MIPMAP_NEAREST && params[0] != GL_NEAREST_MIPMAP_LINEAR && params[0] != GL_LINEAR_MIPMAP_NEAREST && params[0] != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_GENERATE_MIPMAP: /* size 1 */
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT: /* size 1 */
+ case GL_TEXTURE_CROP_RECT_OES: /* size 4 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameteriv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_TexParameterx(GLenum target, GLenum pname, GLfixed param)
+{
+ GLfloat converted_param;
+ int convert_param_value = 1;
+
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ if (param != GL_CLAMP_TO_EDGE && param != GL_REPEAT && param != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && param != GL_LINEAR_MIPMAP_NEAREST && param != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_GENERATE_MIPMAP:
+ if (param != GL_TRUE && param != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(pname=0x%x)", pname);
+ return;
+ }
+ convert_param_value = 0;
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterx(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_param_value) {
+ converted_param = (GLfloat) (param / 65536.0f);
+ } else {
+ converted_param = (GLfloat) param;
+ }
+
+ _mesa_TexParameterf(target, pname, converted_param);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterfv(GLenum target, GLenum pname, GLfloat const * params);
+static void GL_APIENTRY _es_TexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ register unsigned int i;
+ unsigned int n_params = 4;
+ GLfloat converted_params[4];
+ int convert_params_value = 1;
+
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ if (params[0] != GL_CLAMP_TO_EDGE && params[0] != GL_REPEAT && params[0] != GL_MIRRORED_REPEAT_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR && params[0] != GL_NEAREST_MIPMAP_NEAREST && params[0] != GL_NEAREST_MIPMAP_LINEAR && params[0] != GL_LINEAR_MIPMAP_NEAREST && params[0] != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_GENERATE_MIPMAP:
+ if (params[0] != GL_TRUE && params[0] != GL_FALSE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+ convert_params_value = 0;
+ n_params = 1;
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ n_params = 1;
+ break;
+ case GL_TEXTURE_CROP_RECT_OES:
+ n_params = 4;
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterxv(pname=0x%x)", pname);
+ return;
+ }
+
+ if (convert_params_value) {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) (params[i] / 65536.0f);
+ }
+ } else {
+ for (i = 0; i < n_params; i++) {
+ converted_params[i] = (GLfloat) params[i];
+ }
+ }
+
+ _mesa_TexParameterfv(target, pname, converted_params);
+}
+
+extern void GL_APIENTRY _mesa_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_Translatef(GLfloat x, GLfloat y, GLfloat z);
+#define _es_Translatef _mesa_Translatef
+
+extern void GL_APIENTRY _mesa_Translatef(GLfloat x, GLfloat y, GLfloat z);
+static void GL_APIENTRY _es_Translatex(GLfixed x, GLfixed y, GLfixed z)
+{
+ GLfloat converted_x;
+ GLfloat converted_y;
+ GLfloat converted_z;
+
+ converted_x = (GLfloat) (x / 65536.0f);
+ converted_y = (GLfloat) (y / 65536.0f);
+ converted_z = (GLfloat) (z / 65536.0f);
+
+ _mesa_Translatef(converted_x, converted_y, converted_z);
+}
+
+extern GLboolean GL_APIENTRY _mesa_UnmapBufferARB(GLenum target);
+static GLboolean GL_APIENTRY _es_UnmapBufferOES(GLenum target)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glUnmapBufferOES(target=0x%x)", target);
+ return GL_FALSE;
+ }
+
+ return _mesa_UnmapBufferARB(target);
+}
+
+extern void GL_APIENTRY _mesa_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ switch(size) {
+ case 2:
+ case 3:
+ case 4:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glVertexPointer(size=%d)", size);
+ return;
+ }
+ switch(type) {
+ case GL_BYTE:
+ case GL_SHORT:
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glVertexPointer(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_VertexPointer(size, type, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
+#define _es_Viewport _mesa_Viewport
+
+
+#include "glapi/glapi.h"
+
+#if FEATURE_remap_table
+
+/* cannot include main/dispatch.h here */
+#define _GLAPI_USE_REMAP_TABLE
+#include "es1api/main/glapidispatch.h"
+
+#define need_MESA_remap_table
+#include "es1api/main/remap_helper.h"
+
+/* force SET_* macros to use the local remap table */
+#define driDispatchRemapTable remap_table
+static int remap_table[driDispatchRemapTable_size];
+
+static void
+init_remap_table(void)
+{
+ _glthread_DECLARE_STATIC_MUTEX(mutex);
+ static GLboolean initialized = GL_FALSE;
+ const struct gl_function_pool_remap *remap = MESA_remap_table_functions;
+ int i;
+
+ _glthread_LOCK_MUTEX(mutex);
+ if (initialized) {
+ _glthread_UNLOCK_MUTEX(mutex);
+ return;
+ }
+
+ for (i = 0; i < driDispatchRemapTable_size; i++) {
+ GLint offset;
+ const char *spec;
+
+ /* sanity check */
+ ASSERT(i == remap[i].remap_index);
+ spec = _mesa_function_pool + remap[i].pool_index;
+
+ offset = _mesa_map_function_spec(spec);
+ remap_table[i] = offset;
+ }
+ initialized = GL_TRUE;
+ _glthread_UNLOCK_MUTEX(mutex);
+}
+
+#else /* FEATURE_remap_table */
+
+/* cannot include main/dispatch.h here */
+#include "es1api/main/glapidispatch.h"
+
+static INLINE void
+init_remap_table(void)
+{
+}
+
+#endif /* FEATURE_remap_table */
+
+struct _glapi_table *
+_mesa_create_exec_table_es1(void)
+{
+ struct _glapi_table *exec;
+
+ exec = _mesa_alloc_dispatch_table(_gloffset_COUNT);
+ if (exec == NULL)
+ return NULL;
+
+ init_remap_table();
+
+ SET_ActiveTexture(exec, _es_ActiveTexture);
+ SET_AlphaFunc(exec, _es_AlphaFunc);
+ SET_AlphaFuncx(exec, _es_AlphaFuncx);
+ SET_BindBuffer(exec, _es_BindBuffer);
+ SET_BindFramebufferOES(exec, _es_BindFramebufferOES);
+ SET_BindRenderbufferOES(exec, _es_BindRenderbufferOES);
+ SET_BindTexture(exec, _es_BindTexture);
+ SET_BlendEquationOES(exec, _es_BlendEquationOES);
+ SET_BlendEquationSeparateOES(exec, _es_BlendEquationSeparateOES);
+ SET_BlendFunc(exec, _es_BlendFunc);
+ SET_BlendFuncSeparateOES(exec, _es_BlendFuncSeparateOES);
+ SET_BufferData(exec, _es_BufferData);
+ SET_BufferSubData(exec, _es_BufferSubData);
+ SET_CheckFramebufferStatusOES(exec, _es_CheckFramebufferStatusOES);
+ SET_Clear(exec, _es_Clear);
+ SET_ClearColor(exec, _es_ClearColor);
+ SET_ClearColorx(exec, _es_ClearColorx);
+ SET_ClearDepthf(exec, _es_ClearDepthf);
+ SET_ClearDepthx(exec, _es_ClearDepthx);
+ SET_ClearStencil(exec, _es_ClearStencil);
+ SET_ClientActiveTexture(exec, _es_ClientActiveTexture);
+ SET_ClipPlanef(exec, _es_ClipPlanef);
+ SET_ClipPlanex(exec, _es_ClipPlanex);
+ SET_Color4f(exec, _check_Color4f);
+ SET_Color4ub(exec, _es_Color4ub);
+ SET_Color4x(exec, _es_Color4x);
+ SET_ColorMask(exec, _es_ColorMask);
+ SET_ColorPointer(exec, _es_ColorPointer);
+ SET_CompressedTexImage2D(exec, _es_CompressedTexImage2D);
+ SET_CompressedTexSubImage2D(exec, _es_CompressedTexSubImage2D);
+ SET_CopyTexImage2D(exec, _es_CopyTexImage2D);
+ SET_CopyTexSubImage2D(exec, _es_CopyTexSubImage2D);
+ SET_CullFace(exec, _es_CullFace);
+ SET_DeleteBuffers(exec, _es_DeleteBuffers);
+ SET_DeleteFramebuffersOES(exec, _es_DeleteFramebuffersOES);
+ SET_DeleteRenderbuffersOES(exec, _es_DeleteRenderbuffersOES);
+ SET_DeleteTextures(exec, _es_DeleteTextures);
+ SET_DepthFunc(exec, _es_DepthFunc);
+ SET_DepthMask(exec, _es_DepthMask);
+ SET_DepthRangef(exec, _es_DepthRangef);
+ SET_DepthRangex(exec, _es_DepthRangex);
+ SET_Disable(exec, _es_Disable);
+ SET_DisableClientState(exec, _es_DisableClientState);
+ SET_DrawArrays(exec, _es_DrawArrays);
+ SET_DrawElements(exec, _es_DrawElements);
+ SET_DrawTexfOES(exec, _es_DrawTexfOES);
+ SET_DrawTexfvOES(exec, _es_DrawTexfvOES);
+ SET_DrawTexiOES(exec, _es_DrawTexiOES);
+ SET_DrawTexivOES(exec, _es_DrawTexivOES);
+ SET_DrawTexsOES(exec, _es_DrawTexsOES);
+ SET_DrawTexsvOES(exec, _es_DrawTexsvOES);
+ SET_DrawTexxOES(exec, _es_DrawTexxOES);
+ SET_DrawTexxvOES(exec, _es_DrawTexxvOES);
+ SET_EGLImageTargetRenderbufferStorageOES(exec, _es_EGLImageTargetRenderbufferStorageOES);
+ SET_EGLImageTargetTexture2DOES(exec, _es_EGLImageTargetTexture2DOES);
+ SET_Enable(exec, _es_Enable);
+ SET_EnableClientState(exec, _es_EnableClientState);
+ SET_Finish(exec, _es_Finish);
+ SET_Flush(exec, _es_Flush);
+ SET_Fogf(exec, _es_Fogf);
+ SET_Fogfv(exec, _es_Fogfv);
+ SET_Fogx(exec, _es_Fogx);
+ SET_Fogxv(exec, _es_Fogxv);
+ SET_FramebufferRenderbufferOES(exec, _es_FramebufferRenderbufferOES);
+ SET_FramebufferTexture2DOES(exec, _es_FramebufferTexture2DOES);
+ SET_FrontFace(exec, _es_FrontFace);
+ SET_Frustumf(exec, _es_Frustumf);
+ SET_Frustumx(exec, _es_Frustumx);
+ SET_GenBuffers(exec, _es_GenBuffers);
+ SET_GenFramebuffersOES(exec, _es_GenFramebuffersOES);
+ SET_GenRenderbuffersOES(exec, _es_GenRenderbuffersOES);
+ SET_GenTextures(exec, _es_GenTextures);
+ SET_GenerateMipmapOES(exec, _es_GenerateMipmapOES);
+ SET_GetBooleanv(exec, _es_GetBooleanv);
+ SET_GetBufferParameteriv(exec, _es_GetBufferParameteriv);
+ SET_GetBufferPointervOES(exec, _es_GetBufferPointervOES);
+ SET_GetClipPlanef(exec, _es_GetClipPlanef);
+ SET_GetClipPlanex(exec, _es_GetClipPlanex);
+ SET_GetError(exec, _es_GetError);
+ SET_GetFixedv(exec, _es_GetFixedv);
+ SET_GetFloatv(exec, _es_GetFloatv);
+ SET_GetFramebufferAttachmentParameterivOES(exec, _es_GetFramebufferAttachmentParameterivOES);
+ SET_GetIntegerv(exec, _es_GetIntegerv);
+ SET_GetLightfv(exec, _es_GetLightfv);
+ SET_GetLightxv(exec, _es_GetLightxv);
+ SET_GetMaterialfv(exec, _es_GetMaterialfv);
+ SET_GetMaterialxv(exec, _es_GetMaterialxv);
+ SET_GetPointerv(exec, _es_GetPointerv);
+ SET_GetRenderbufferParameterivOES(exec, _es_GetRenderbufferParameterivOES);
+ SET_GetString(exec, _es_GetString);
+ SET_GetTexEnvfv(exec, _es_GetTexEnvfv);
+ SET_GetTexEnviv(exec, _es_GetTexEnviv);
+ SET_GetTexEnvxv(exec, _es_GetTexEnvxv);
+ SET_GetTexGenfvOES(exec, _check_GetTexGenfvOES);
+ SET_GetTexGenivOES(exec, _check_GetTexGenivOES);
+ SET_GetTexGenxvOES(exec, _check_GetTexGenxvOES);
+ SET_GetTexParameterfv(exec, _es_GetTexParameterfv);
+ SET_GetTexParameteriv(exec, _es_GetTexParameteriv);
+ SET_GetTexParameterxv(exec, _es_GetTexParameterxv);
+ SET_Hint(exec, _es_Hint);
+ SET_IsBuffer(exec, _es_IsBuffer);
+ SET_IsEnabled(exec, _es_IsEnabled);
+ SET_IsFramebufferOES(exec, _es_IsFramebufferOES);
+ SET_IsRenderbufferOES(exec, _es_IsRenderbufferOES);
+ SET_IsTexture(exec, _es_IsTexture);
+ SET_LightModelf(exec, _es_LightModelf);
+ SET_LightModelfv(exec, _es_LightModelfv);
+ SET_LightModelx(exec, _es_LightModelx);
+ SET_LightModelxv(exec, _es_LightModelxv);
+ SET_Lightf(exec, _es_Lightf);
+ SET_Lightfv(exec, _es_Lightfv);
+ SET_Lightx(exec, _es_Lightx);
+ SET_Lightxv(exec, _es_Lightxv);
+ SET_LineWidth(exec, _es_LineWidth);
+ SET_LineWidthx(exec, _es_LineWidthx);
+ SET_LoadIdentity(exec, _es_LoadIdentity);
+ SET_LoadMatrixf(exec, _es_LoadMatrixf);
+ SET_LoadMatrixx(exec, _es_LoadMatrixx);
+ SET_LogicOp(exec, _es_LogicOp);
+ SET_MapBufferOES(exec, _es_MapBufferOES);
+ SET_Materialf(exec, _check_Materialf);
+ SET_Materialfv(exec, _check_Materialfv);
+ SET_Materialx(exec, _es_Materialx);
+ SET_Materialxv(exec, _es_Materialxv);
+ SET_MatrixMode(exec, _es_MatrixMode);
+ SET_MultMatrixf(exec, _es_MultMatrixf);
+ SET_MultMatrixx(exec, _es_MultMatrixx);
+ SET_MultiDrawArraysEXT(exec, _es_MultiDrawArraysEXT);
+ SET_MultiDrawElementsEXT(exec, _es_MultiDrawElementsEXT);
+ SET_MultiTexCoord4f(exec, _check_MultiTexCoord4f);
+ SET_MultiTexCoord4x(exec, _es_MultiTexCoord4x);
+ SET_Normal3f(exec, _check_Normal3f);
+ SET_Normal3x(exec, _es_Normal3x);
+ SET_NormalPointer(exec, _es_NormalPointer);
+ SET_Orthof(exec, _es_Orthof);
+ SET_Orthox(exec, _es_Orthox);
+ SET_PixelStorei(exec, _es_PixelStorei);
+ SET_PointParameterf(exec, _es_PointParameterf);
+ SET_PointParameterfv(exec, _es_PointParameterfv);
+ SET_PointParameterx(exec, _es_PointParameterx);
+ SET_PointParameterxv(exec, _es_PointParameterxv);
+ SET_PointSize(exec, _es_PointSize);
+ SET_PointSizePointerOES(exec, _es_PointSizePointerOES);
+ SET_PointSizex(exec, _es_PointSizex);
+ SET_PolygonOffset(exec, _es_PolygonOffset);
+ SET_PolygonOffsetx(exec, _es_PolygonOffsetx);
+ SET_PopMatrix(exec, _es_PopMatrix);
+ SET_PushMatrix(exec, _es_PushMatrix);
+ SET_QueryMatrixxOES(exec, _check_QueryMatrixxOES);
+ SET_ReadPixels(exec, _es_ReadPixels);
+ SET_RenderbufferStorageOES(exec, _check_RenderbufferStorageOES);
+ SET_Rotatef(exec, _es_Rotatef);
+ SET_Rotatex(exec, _es_Rotatex);
+ SET_SampleCoverage(exec, _es_SampleCoverage);
+ SET_SampleCoveragex(exec, _es_SampleCoveragex);
+ SET_Scalef(exec, _es_Scalef);
+ SET_Scalex(exec, _es_Scalex);
+ SET_Scissor(exec, _es_Scissor);
+ SET_ShadeModel(exec, _es_ShadeModel);
+ SET_StencilFunc(exec, _es_StencilFunc);
+ SET_StencilMask(exec, _es_StencilMask);
+ SET_StencilOp(exec, _es_StencilOp);
+ SET_TexCoordPointer(exec, _es_TexCoordPointer);
+ SET_TexEnvf(exec, _es_TexEnvf);
+ SET_TexEnvfv(exec, _es_TexEnvfv);
+ SET_TexEnvi(exec, _es_TexEnvi);
+ SET_TexEnviv(exec, _es_TexEnviv);
+ SET_TexEnvx(exec, _es_TexEnvx);
+ SET_TexEnvxv(exec, _es_TexEnvxv);
+ SET_TexGenfOES(exec, _check_TexGenfOES);
+ SET_TexGenfvOES(exec, _check_TexGenfvOES);
+ SET_TexGeniOES(exec, _check_TexGeniOES);
+ SET_TexGenivOES(exec, _check_TexGenivOES);
+ SET_TexGenxOES(exec, _check_TexGenxOES);
+ SET_TexGenxvOES(exec, _check_TexGenxvOES);
+ SET_TexImage2D(exec, _es_TexImage2D);
+ SET_TexParameterf(exec, _es_TexParameterf);
+ SET_TexParameterfv(exec, _es_TexParameterfv);
+ SET_TexParameteri(exec, _es_TexParameteri);
+ SET_TexParameteriv(exec, _es_TexParameteriv);
+ SET_TexParameterx(exec, _es_TexParameterx);
+ SET_TexParameterxv(exec, _es_TexParameterxv);
+ SET_TexSubImage2D(exec, _es_TexSubImage2D);
+ SET_Translatef(exec, _es_Translatef);
+ SET_Translatex(exec, _es_Translatex);
+ SET_UnmapBufferOES(exec, _es_UnmapBufferOES);
+ SET_VertexPointer(exec, _es_VertexPointer);
+ SET_Viewport(exec, _es_Viewport);
+
+ return exec;
+}
+
+#endif /* FEATURE_ES1 */
diff --git a/src/mesa/main/api_exec_es2.c b/src/mesa/main/api_exec_es2.c
new file mode 100644
index 0000000000..4c53e99f22
--- /dev/null
+++ b/src/mesa/main/api_exec_es2.c
@@ -0,0 +1,2548 @@
+/* DO NOT EDIT *************************************************
+ * THIS FILE AUTOMATICALLY GENERATED BY THE es_generator.py SCRIPT
+ * API specification file: main/APIspec.xml
+ * GLES version: GLES2.0
+ * date: 2011-03-16 14:46:40
+ */
+
+
+#include "GLES2/gl2.h"
+#include "GLES2/gl2ext.h"
+#include "main/mfeatures.h"
+#include "main/compiler.h"
+#include "main/api_exec.h"
+
+#if FEATURE_ES2
+
+
+/* These types are needed for the Mesa veneer, but are not defined in
+ * the standard GLES headers.
+ */
+typedef double GLdouble;
+typedef double GLclampd;
+
+/* Mesa error handling requires these */
+extern void *_mesa_get_current_context(void);
+extern void _mesa_error(void *ctx, GLenum error, const char *fmtString, ... );
+
+/*************************************************************
+ * Generated functions begin here
+ */
+
+extern void GL_APIENTRY _mesa_ActiveTextureARB(GLenum texture);
+static void GL_APIENTRY _es_ActiveTexture(GLenum texture)
+{
+ switch(texture) {
+ case GL_TEXTURE0:
+ case GL_TEXTURE1:
+ case GL_TEXTURE2:
+ case GL_TEXTURE3:
+ case GL_TEXTURE4:
+ case GL_TEXTURE5:
+ case GL_TEXTURE6:
+ case GL_TEXTURE7:
+ case GL_TEXTURE8:
+ case GL_TEXTURE9:
+ case GL_TEXTURE10:
+ case GL_TEXTURE11:
+ case GL_TEXTURE12:
+ case GL_TEXTURE13:
+ case GL_TEXTURE14:
+ case GL_TEXTURE15:
+ case GL_TEXTURE16:
+ case GL_TEXTURE17:
+ case GL_TEXTURE18:
+ case GL_TEXTURE19:
+ case GL_TEXTURE20:
+ case GL_TEXTURE21:
+ case GL_TEXTURE22:
+ case GL_TEXTURE23:
+ case GL_TEXTURE24:
+ case GL_TEXTURE25:
+ case GL_TEXTURE26:
+ case GL_TEXTURE27:
+ case GL_TEXTURE28:
+ case GL_TEXTURE29:
+ case GL_TEXTURE30:
+ case GL_TEXTURE31:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glActiveTexture(texture=0x%x)", texture);
+ return;
+ }
+
+ _mesa_ActiveTextureARB(texture);
+}
+
+extern void GL_APIENTRY _mesa_AttachShader(GLuint program, GLuint shader);
+#define _es_AttachShader _mesa_AttachShader
+
+extern void GL_APIENTRY _mesa_BindAttribLocationARB(GLuint program, GLuint index, const char * name);
+#define _es_BindAttribLocation _mesa_BindAttribLocationARB
+
+extern void GL_APIENTRY _mesa_BindBufferARB(GLenum target, GLuint buffer);
+static void GL_APIENTRY _es_BindBuffer(GLenum target, GLuint buffer)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindBuffer(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindBufferARB(target, buffer);
+}
+
+extern void GL_APIENTRY _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer);
+static void GL_APIENTRY _es_BindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindFramebuffer(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindFramebufferEXT(target, framebuffer);
+}
+
+extern void GL_APIENTRY _mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer);
+static void GL_APIENTRY _es_BindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ switch(target) {
+ case GL_RENDERBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindRenderbuffer(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindRenderbufferEXT(target, renderbuffer);
+}
+
+extern void GL_APIENTRY _mesa_BindTexture(GLenum target, GLuint texture);
+static void GL_APIENTRY _es_BindTexture(GLenum target, GLuint texture)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBindTexture(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BindTexture(target, texture);
+}
+
+extern void GL_APIENTRY _mesa_BlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+#define _es_BlendColor _mesa_BlendColor
+
+extern void GL_APIENTRY _mesa_BlendEquation(GLenum mode);
+static void GL_APIENTRY _es_BlendEquation(GLenum mode)
+{
+ switch(mode) {
+ case GL_FUNC_ADD:
+ case GL_FUNC_SUBTRACT:
+ case GL_FUNC_REVERSE_SUBTRACT:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquation(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_BlendEquation(mode);
+}
+
+extern void GL_APIENTRY _mesa_BlendEquationSeparateEXT(GLenum modeRGB, GLenum modeAlpha);
+static void GL_APIENTRY _es_BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ switch(modeRGB) {
+ case GL_FUNC_ADD:
+ case GL_FUNC_SUBTRACT:
+ case GL_FUNC_REVERSE_SUBTRACT:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquationSeparate(modeRGB=0x%x)", modeRGB);
+ return;
+ }
+ switch(modeAlpha) {
+ case GL_FUNC_ADD:
+ case GL_FUNC_SUBTRACT:
+ case GL_FUNC_REVERSE_SUBTRACT:
+ case GL_MIN_EXT:
+ case GL_MAX_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendEquationSeparate(modeAlpha=0x%x)", modeAlpha);
+ return;
+ }
+
+ _mesa_BlendEquationSeparateEXT(modeRGB, modeAlpha);
+}
+
+extern void GL_APIENTRY _mesa_BlendFunc(GLenum sfactor, GLenum dfactor);
+static void GL_APIENTRY _es_BlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ switch(sfactor) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ case GL_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFunc(sfactor=0x%x)", sfactor);
+ return;
+ }
+ switch(dfactor) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFunc(dfactor=0x%x)", dfactor);
+ return;
+ }
+
+ _mesa_BlendFunc(sfactor, dfactor);
+}
+
+extern void GL_APIENTRY _mesa_BlendFuncSeparateEXT(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+static void GL_APIENTRY _es_BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ switch(srcRGB) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ case GL_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparate(srcRGB=0x%x)", srcRGB);
+ return;
+ }
+ switch(dstRGB) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparate(dstRGB=0x%x)", dstRGB);
+ return;
+ }
+ switch(srcAlpha) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_SRC_ALPHA_SATURATE:
+ case GL_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparate(srcAlpha=0x%x)", srcAlpha);
+ return;
+ }
+ switch(dstAlpha) {
+ case GL_ZERO:
+ case GL_ONE:
+ case GL_SRC_COLOR:
+ case GL_ONE_MINUS_SRC_COLOR:
+ case GL_SRC_ALPHA:
+ case GL_ONE_MINUS_SRC_ALPHA:
+ case GL_DST_ALPHA:
+ case GL_ONE_MINUS_DST_ALPHA:
+ case GL_DST_COLOR:
+ case GL_ONE_MINUS_DST_COLOR:
+ case GL_CONSTANT_COLOR:
+ case GL_ONE_MINUS_CONSTANT_COLOR:
+ case GL_CONSTANT_ALPHA:
+ case GL_ONE_MINUS_CONSTANT_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBlendFuncSeparate(dstAlpha=0x%x)", dstAlpha);
+ return;
+ }
+
+ _mesa_BlendFuncSeparateEXT(srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+extern void GL_APIENTRY _mesa_BufferDataARB(GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage);
+static void GL_APIENTRY _es_BufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferData(target=0x%x)", target);
+ return;
+ }
+ switch(usage) {
+ case GL_STATIC_DRAW:
+ case GL_DYNAMIC_DRAW:
+ case GL_STREAM_DRAW:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferData(usage=0x%x)", usage);
+ return;
+ }
+
+ _mesa_BufferDataARB(target, size, data, usage);
+}
+
+extern void GL_APIENTRY _mesa_BufferSubDataARB(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data);
+static void GL_APIENTRY _es_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glBufferSubData(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_BufferSubDataARB(target, offset, size, data);
+}
+
+extern GLenum GL_APIENTRY _mesa_CheckFramebufferStatusEXT(GLenum target);
+static GLenum GL_APIENTRY _es_CheckFramebufferStatus(GLenum target)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCheckFramebufferStatus(target=0x%x)", target);
+ return (GLenum) 0;
+ }
+
+ return _mesa_CheckFramebufferStatusEXT(target);
+}
+
+extern void GL_APIENTRY _mesa_Clear(GLbitfield mask);
+static void GL_APIENTRY _es_Clear(GLbitfield mask)
+{
+ switch(mask) {
+ case 0:
+ case (GL_COLOR_BUFFER_BIT):
+ case (GL_DEPTH_BUFFER_BIT):
+ case (GL_STENCIL_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ case (GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ case (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT):
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glClear(mask=0x%x)", mask);
+ return;
+ }
+
+ _mesa_Clear(mask);
+}
+
+extern void GL_APIENTRY _mesa_ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+#define _es_ClearColor _mesa_ClearColor
+
+extern void GL_APIENTRY _mesa_ClearDepthf(GLclampf depth);
+#define _es_ClearDepthf _mesa_ClearDepthf
+
+extern void GL_APIENTRY _mesa_ClearStencil(GLint s);
+#define _es_ClearStencil _mesa_ClearStencil
+
+extern void GL_APIENTRY _mesa_ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+#define _es_ColorMask _mesa_ColorMask
+
+extern void GL_APIENTRY _mesa_CompileShaderARB(GLuint shader);
+#define _es_CompileShader _mesa_CompileShaderARB
+
+extern void GL_APIENTRY _mesa_CompressedTexImage2DARB(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_PALETTE4_RGB8_OES:
+ case GL_PALETTE4_RGBA8_OES:
+ case GL_PALETTE4_R5_G6_B5_OES:
+ case GL_PALETTE4_RGBA4_OES:
+ case GL_PALETTE4_RGB5_A1_OES:
+ case GL_PALETTE8_RGB8_OES:
+ case GL_PALETTE8_RGBA8_OES:
+ case GL_PALETTE8_R5_G6_B5_OES:
+ case GL_PALETTE8_RGBA4_OES:
+ case GL_PALETTE8_RGB5_A1_OES:
+ case GL_COMPRESSED_RGB_S3TC_DXT1_EXT:
+ case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCompressedTexImage2D(border=%d)", border);
+ return;
+ }
+
+ _mesa_CompressedTexImage2DARB(target, level, internalFormat, width, height, border, imageSize, data);
+}
+
+extern void GL_APIENTRY _mesa_CompressedTexImage3DARB(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imagesize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexImage3DOES(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imagesize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexImage3DOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CompressedTexImage3DARB(target, level, internalFormat, width, height, depth, border, imagesize, data);
+}
+
+extern void GL_APIENTRY _mesa_CompressedTexSubImage2DARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(format) {
+ case GL_COMPRESSED_RGB_S3TC_DXT1_EXT:
+ case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_CompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+extern void GL_APIENTRY _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imagesize, const GLvoid * data);
+static void GL_APIENTRY _es_CompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imagesize, const GLvoid *data)
+{
+ switch(target) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCompressedTexSubImage3DOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imagesize, data);
+}
+
+extern void GL_APIENTRY _mesa_CopyTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+static void GL_APIENTRY _es_CopyTexImage2D(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCopyTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_ALPHA:
+ case GL_RGB:
+ case GL_RGBA:
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCopyTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glCopyTexImage2D(border=%d)", border);
+ return;
+ }
+
+ _mesa_CopyTexImage2D(target, level, internalFormat, x, y, width, height, border);
+}
+
+extern void GL_APIENTRY _mesa_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+static void GL_APIENTRY _es_CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCopyTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+extern void GL_APIENTRY _mesa_CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+static void GL_APIENTRY _es_CopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ switch(target) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCopyTexSubImage3DOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+extern GLuint GL_APIENTRY _mesa_CreateProgram(void);
+#define _es_CreateProgram _mesa_CreateProgram
+
+extern GLuint GL_APIENTRY _mesa_CreateShader(GLenum type);
+static GLuint GL_APIENTRY _es_CreateShader(GLenum type)
+{
+ switch(type) {
+ case GL_VERTEX_SHADER:
+ case GL_FRAGMENT_SHADER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCreateShader(type=0x%x)", type);
+ return (GLuint) 0;
+ }
+
+ return _mesa_CreateShader(type);
+}
+
+extern void GL_APIENTRY _mesa_CullFace(GLenum mode);
+static void GL_APIENTRY _es_CullFace(GLenum mode)
+{
+ switch(mode) {
+ case GL_FRONT:
+ case GL_BACK:
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glCullFace(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_CullFace(mode);
+}
+
+extern void GL_APIENTRY _mesa_DeleteBuffersARB(GLsizei n, const GLuint * buffer);
+#define _es_DeleteBuffers _mesa_DeleteBuffersARB
+
+extern void GL_APIENTRY _mesa_DeleteFramebuffersEXT(GLsizei n, const GLuint * framebuffers);
+#define _es_DeleteFramebuffers _mesa_DeleteFramebuffersEXT
+
+extern void GL_APIENTRY _mesa_DeleteProgram(GLuint program);
+#define _es_DeleteProgram _mesa_DeleteProgram
+
+extern void GL_APIENTRY _mesa_DeleteRenderbuffersEXT(GLsizei n, const GLuint * renderbuffers);
+#define _es_DeleteRenderbuffers _mesa_DeleteRenderbuffersEXT
+
+extern void GL_APIENTRY _mesa_DeleteShader(GLuint shader);
+#define _es_DeleteShader _mesa_DeleteShader
+
+extern void GL_APIENTRY _mesa_DeleteTextures(GLsizei n, const GLuint * textures);
+#define _es_DeleteTextures _mesa_DeleteTextures
+
+extern void GL_APIENTRY _mesa_DepthFunc(GLenum func);
+static void GL_APIENTRY _es_DepthFunc(GLenum func)
+{
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_EQUAL:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_NOTEQUAL:
+ case GL_GEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDepthFunc(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_DepthFunc(func);
+}
+
+extern void GL_APIENTRY _mesa_DepthMask(GLboolean flag);
+#define _es_DepthMask _mesa_DepthMask
+
+extern void GL_APIENTRY _mesa_DepthRangef(GLclampf zNear, GLclampf zFar);
+#define _es_DepthRangef _mesa_DepthRangef
+
+extern void GL_APIENTRY _mesa_DetachShader(GLuint program, GLuint shader);
+#define _es_DetachShader _mesa_DetachShader
+
+extern void GL_APIENTRY _mesa_Disable(GLenum cap);
+static void GL_APIENTRY _es_Disable(GLenum cap)
+{
+ switch(cap) {
+ case GL_CULL_FACE:
+ case GL_SCISSOR_TEST:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_DITHER:
+ case GL_BLEND:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDisable(cap=0x%x)", cap);
+ return;
+ }
+
+ _mesa_Disable(cap);
+}
+
+extern void GL_APIENTRY _mesa_DisableVertexAttribArrayARB(GLuint index);
+#define _es_DisableVertexAttribArray _mesa_DisableVertexAttribArrayARB
+
+extern void GL_APIENTRY _mesa_DrawArrays(GLenum mode, GLint first, GLsizei count);
+static void GL_APIENTRY _es_DrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawArrays(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_DrawArrays(mode, first, count);
+}
+
+extern void GL_APIENTRY _mesa_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices);
+static void GL_APIENTRY _es_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawElements(mode=0x%x)", mode);
+ return;
+ }
+ switch(type) {
+ case GL_UNSIGNED_BYTE:
+ case GL_UNSIGNED_SHORT:
+ case GL_UNSIGNED_INT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glDrawElements(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_DrawElements(mode, count, type, indices);
+}
+
+extern void GL_APIENTRY _mesa_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
+static void GL_APIENTRY _es_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
+{
+ switch(target) {
+ case GL_RENDERBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEGLImageTargetRenderbufferStorageOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_EGLImageTargetRenderbufferStorageOES(target, image);
+}
+
+extern void GL_APIENTRY _mesa_EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
+static void GL_APIENTRY _es_EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEGLImageTargetTexture2DOES(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_EGLImageTargetTexture2DOES(target, image);
+}
+
+extern void GL_APIENTRY _mesa_Enable(GLenum cap);
+static void GL_APIENTRY _es_Enable(GLenum cap)
+{
+ switch(cap) {
+ case GL_CULL_FACE:
+ case GL_SCISSOR_TEST:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_DITHER:
+ case GL_BLEND:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glEnable(cap=0x%x)", cap);
+ return;
+ }
+
+ _mesa_Enable(cap);
+}
+
+extern void GL_APIENTRY _mesa_EnableVertexAttribArrayARB(GLuint index);
+#define _es_EnableVertexAttribArray _mesa_EnableVertexAttribArrayARB
+
+extern void GL_APIENTRY _mesa_Finish(void);
+#define _es_Finish _mesa_Finish
+
+extern void GL_APIENTRY _mesa_Flush(void);
+#define _es_Flush _mesa_Flush
+
+extern void GL_APIENTRY _mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+static void GL_APIENTRY _es_FramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbuffer(target=0x%x)", target);
+ return;
+ }
+ switch(attachment) {
+ case GL_COLOR_ATTACHMENT0:
+ case GL_DEPTH_ATTACHMENT:
+ case GL_STENCIL_ATTACHMENT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbuffer(attachment=0x%x)", attachment);
+ return;
+ }
+ switch(renderbuffertarget) {
+ case GL_RENDERBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferRenderbuffer(renderbuffertarget=0x%x)", renderbuffertarget);
+ return;
+ }
+
+ _mesa_FramebufferRenderbufferEXT(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+extern void GL_APIENTRY _mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+static void GL_APIENTRY _es_FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture2D(target=0x%x)", target);
+ return;
+ }
+ switch(attachment) {
+ case GL_COLOR_ATTACHMENT0:
+ case GL_DEPTH_ATTACHMENT:
+ case GL_STENCIL_ATTACHMENT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture2D(attachment=0x%x)", attachment);
+ return;
+ }
+ switch(textarget) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glFramebufferTexture2D(textarget=0x%x)", textarget);
+ return;
+ }
+
+ _mesa_FramebufferTexture2DEXT(target, attachment, textarget, texture, level);
+}
+
+extern void GL_APIENTRY _mesa_FramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+static void GL_APIENTRY _es_FramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture3DOES(target=0x%x)", target);
+ return;
+ }
+ switch(attachment) {
+ case GL_COLOR_ATTACHMENT0:
+ case GL_DEPTH_ATTACHMENT:
+ case GL_STENCIL_ATTACHMENT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFramebufferTexture3DOES(attachment=0x%x)", attachment);
+ return;
+ }
+ switch(textarget) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glFramebufferTexture3DOES(textarget=0x%x)", textarget);
+ return;
+ }
+
+ _mesa_FramebufferTexture3DEXT(target, attachment, textarget, texture, level, zoffset);
+}
+
+extern void GL_APIENTRY _mesa_FrontFace(GLenum mode);
+static void GL_APIENTRY _es_FrontFace(GLenum mode)
+{
+ switch(mode) {
+ case GL_CW:
+ case GL_CCW:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glFrontFace(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_FrontFace(mode);
+}
+
+extern void GL_APIENTRY _mesa_GenBuffersARB(GLsizei n, GLuint * buffer);
+#define _es_GenBuffers _mesa_GenBuffersARB
+
+extern void GL_APIENTRY _mesa_GenFramebuffersEXT(GLsizei n, GLuint * ids);
+#define _es_GenFramebuffers _mesa_GenFramebuffersEXT
+
+extern void GL_APIENTRY _mesa_GenRenderbuffersEXT(GLsizei n, GLuint * renderbuffers);
+#define _es_GenRenderbuffers _mesa_GenRenderbuffersEXT
+
+extern void GL_APIENTRY _mesa_GenTextures(GLsizei n, GLuint * textures);
+#define _es_GenTextures _mesa_GenTextures
+
+extern void GL_APIENTRY _mesa_GenerateMipmapEXT(GLenum target);
+static void GL_APIENTRY _es_GenerateMipmap(GLenum target)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGenerateMipmap(target=0x%x)", target);
+ return;
+ }
+
+ _mesa_GenerateMipmapEXT(target);
+}
+
+extern void GL_APIENTRY _mesa_GetActiveAttribARB(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name);
+#define _es_GetActiveAttrib _mesa_GetActiveAttribARB
+
+extern void GL_APIENTRY _mesa_GetActiveUniformARB(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name);
+#define _es_GetActiveUniform _mesa_GetActiveUniformARB
+
+extern void GL_APIENTRY _mesa_GetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders);
+#define _es_GetAttachedShaders _mesa_GetAttachedShaders
+
+extern GLint GL_APIENTRY _mesa_GetAttribLocationARB(GLuint program, const char * name);
+#define _es_GetAttribLocation _mesa_GetAttribLocationARB
+
+extern void GL_APIENTRY _mesa_GetBooleanv(GLenum pname, GLboolean * params);
+#define _es_GetBooleanv _mesa_GetBooleanv
+
+extern void GL_APIENTRY _mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_BUFFER_SIZE:
+ case GL_BUFFER_USAGE:
+ case GL_BUFFER_ACCESS_OES:
+ case GL_BUFFER_MAPPED_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetBufferParameterivARB(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetBufferPointervARB(GLenum target, GLenum pname, GLvoid ** params);
+static void GL_APIENTRY _es_GetBufferPointervOES(GLenum target, GLenum pname, GLvoid **params)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferPointervOES(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_BUFFER_MAP_POINTER_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetBufferPointervOES(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetBufferPointervARB(target, pname, params);
+}
+
+extern GLenum GL_APIENTRY _mesa_GetError(void);
+#define _es_GetError _mesa_GetError
+
+extern void GL_APIENTRY _mesa_GetFloatv(GLenum pname, GLfloat * params);
+#define _es_GetFloatv _mesa_GetFloatv
+
+extern void GL_APIENTRY _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_FRAMEBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetFramebufferAttachmentParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: /* size 1 */
+ case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetFramebufferAttachmentParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetFramebufferAttachmentParameterivEXT(target, attachment, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetIntegerv(GLenum pname, GLint * params);
+#define _es_GetIntegerv _mesa_GetIntegerv
+
+extern void GL_APIENTRY _mesa_GetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
+#define _es_GetProgramInfoLog _mesa_GetProgramInfoLog
+
+extern void GL_APIENTRY _mesa_GetProgramiv(GLuint program, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ switch(pname) {
+ case GL_DELETE_STATUS:
+ case GL_LINK_STATUS:
+ case GL_VALIDATE_STATUS:
+ case GL_INFO_LOG_LENGTH:
+ case GL_ATTACHED_SHADERS:
+ case GL_ACTIVE_ATTRIBUTES:
+ case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH:
+ case GL_ACTIVE_UNIFORMS:
+ case GL_ACTIVE_UNIFORM_MAX_LENGTH:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetProgramiv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetProgramiv(program, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_RENDERBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetRenderbufferParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_RENDERBUFFER_WIDTH: /* size 1 */
+ case GL_RENDERBUFFER_HEIGHT: /* size 1 */
+ case GL_RENDERBUFFER_INTERNAL_FORMAT: /* size 1 */
+ case GL_RENDERBUFFER_RED_SIZE: /* size 1 */
+ case GL_RENDERBUFFER_GREEN_SIZE: /* size 1 */
+ case GL_RENDERBUFFER_BLUE_SIZE: /* size 1 */
+ case GL_RENDERBUFFER_ALPHA_SIZE: /* size 1 */
+ case GL_RENDERBUFFER_DEPTH_SIZE: /* size 1 */
+ case GL_RENDERBUFFER_STENCIL_SIZE: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetRenderbufferParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetRenderbufferParameterivEXT(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
+#define _es_GetShaderInfoLog _mesa_GetShaderInfoLog
+
+extern void GL_APIENTRY _mesa_GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision);
+static void GL_APIENTRY _es_GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ switch(shadertype) {
+ case GL_VERTEX_SHADER:
+ case GL_FRAGMENT_SHADER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetShaderPrecisionFormat(shadertype=0x%x)", shadertype);
+ return;
+ }
+ switch(precisiontype) {
+ case GL_LOW_FLOAT:
+ case GL_MEDIUM_FLOAT:
+ case GL_HIGH_FLOAT:
+ case GL_LOW_INT:
+ case GL_MEDIUM_INT:
+ case GL_HIGH_INT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetShaderPrecisionFormat(precisiontype=0x%x)", precisiontype);
+ return;
+ }
+
+ _mesa_GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+extern void GL_APIENTRY _mesa_GetShaderSourceARB(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source);
+#define _es_GetShaderSource _mesa_GetShaderSourceARB
+
+extern void GL_APIENTRY _mesa_GetShaderiv(GLuint shader, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ switch(pname) {
+ case GL_SHADER_TYPE:
+ case GL_COMPILE_STATUS:
+ case GL_DELETE_STATUS:
+ case GL_INFO_LOG_LENGTH:
+ case GL_SHADER_SOURCE_LENGTH:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetShaderiv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetShaderiv(shader, pname, params);
+}
+
+extern const GLubyte * GL_APIENTRY _mesa_GetString(GLenum name);
+static const GLubyte * GL_APIENTRY _es_GetString(GLenum name)
+{
+ switch(name) {
+ case GL_VENDOR:
+ case GL_RENDERER:
+ case GL_VERSION:
+ case GL_EXTENSIONS:
+ case GL_SHADING_LANGUAGE_VERSION:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetString(name=0x%x)", name);
+ return (const GLubyte *) 0;
+ }
+
+ return _mesa_GetString(name);
+}
+
+extern void GL_APIENTRY _mesa_GetTexParameterfv(GLenum target, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_WRAP_R_OES: /* size 1 */
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexParameterfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetTexParameteriv(GLenum target, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_WRAP_R_OES: /* size 1 */
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetTexParameteriv(target, pname, params);
+}
+
+extern GLint GL_APIENTRY _mesa_GetUniformLocationARB(GLuint program, const char * name);
+#define _es_GetUniformLocation _mesa_GetUniformLocationARB
+
+extern void GL_APIENTRY _mesa_GetUniformfvARB(GLuint program, GLint location, GLfloat * params);
+#define _es_GetUniformfv _mesa_GetUniformfvARB
+
+extern void GL_APIENTRY _mesa_GetUniformivARB(GLuint program, GLint location, GLint * params);
+#define _es_GetUniformiv _mesa_GetUniformivARB
+
+extern void GL_APIENTRY _mesa_GetVertexAttribPointervARB(GLuint index, GLenum pname, GLvoid ** pointer);
+static void GL_APIENTRY _es_GetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid **pointer)
+{
+ switch(pname) {
+ case GL_VERTEX_ATTRIB_ARRAY_POINTER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetVertexAttribPointerv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetVertexAttribPointervARB(index, pname, pointer);
+}
+
+extern void GL_APIENTRY _mesa_GetVertexAttribfvARB(GLuint index, GLenum pname, GLfloat * params);
+static void GL_APIENTRY _es_GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ switch(pname) {
+ case GL_VERTEX_ATTRIB_ARRAY_ENABLED: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_SIZE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_STRIDE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_TYPE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: /* size 1 */
+ case GL_CURRENT_VERTEX_ATTRIB: /* size 16? */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetVertexAttribfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetVertexAttribfvARB(index, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_GetVertexAttribivARB(GLuint index, GLenum pname, GLint * params);
+static void GL_APIENTRY _es_GetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ switch(pname) {
+ case GL_VERTEX_ATTRIB_ARRAY_ENABLED: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_SIZE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_STRIDE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_TYPE: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: /* size 1 */
+ case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: /* size 1 */
+ case GL_CURRENT_VERTEX_ATTRIB: /* size 16? */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glGetVertexAttribiv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_GetVertexAttribivARB(index, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_Hint(GLenum target, GLenum mode);
+static void GL_APIENTRY _es_Hint(GLenum target, GLenum mode)
+{
+ switch(target) {
+ case GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES:
+ case GL_GENERATE_MIPMAP_HINT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glHint(target=0x%x)", target);
+ return;
+ }
+ switch(mode) {
+ case GL_FASTEST:
+ case GL_NICEST:
+ case GL_DONT_CARE:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glHint(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_Hint(target, mode);
+}
+
+extern GLboolean GL_APIENTRY _mesa_IsBufferARB(GLuint buffer);
+#define _es_IsBuffer _mesa_IsBufferARB
+
+extern GLboolean GL_APIENTRY _mesa_IsEnabled(GLenum cap);
+static GLboolean GL_APIENTRY _es_IsEnabled(GLenum cap)
+{
+ switch(cap) {
+ case GL_CULL_FACE:
+ case GL_SCISSOR_TEST:
+ case GL_POLYGON_OFFSET_FILL:
+ case GL_SAMPLE_ALPHA_TO_COVERAGE:
+ case GL_SAMPLE_COVERAGE:
+ case GL_STENCIL_TEST:
+ case GL_DEPTH_TEST:
+ case GL_DITHER:
+ case GL_BLEND:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glIsEnabled(cap=0x%x)", cap);
+ return GL_FALSE;
+ }
+
+ return _mesa_IsEnabled(cap);
+}
+
+extern GLboolean GL_APIENTRY _mesa_IsFramebufferEXT(GLuint framebuffer);
+#define _es_IsFramebuffer _mesa_IsFramebufferEXT
+
+extern GLboolean GL_APIENTRY _mesa_IsProgram(GLuint program);
+#define _es_IsProgram _mesa_IsProgram
+
+extern GLboolean GL_APIENTRY _mesa_IsRenderbufferEXT(GLuint renderbuffer);
+#define _es_IsRenderbuffer _mesa_IsRenderbufferEXT
+
+extern GLboolean GL_APIENTRY _mesa_IsShader(GLuint shader);
+#define _es_IsShader _mesa_IsShader
+
+extern GLboolean GL_APIENTRY _mesa_IsTexture(GLuint texture);
+#define _es_IsTexture _mesa_IsTexture
+
+extern void GL_APIENTRY _mesa_LineWidth(GLfloat width);
+#define _es_LineWidth _mesa_LineWidth
+
+extern void GL_APIENTRY _mesa_LinkProgramARB(GLuint program);
+#define _es_LinkProgram _mesa_LinkProgramARB
+
+extern void * GL_APIENTRY _mesa_MapBufferARB(GLenum target, GLenum access);
+static void * GL_APIENTRY _es_MapBufferOES(GLenum target, GLenum access)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMapBufferOES(target=0x%x)", target);
+ return (void *) 0;
+ }
+ switch(access) {
+ case GL_WRITE_ONLY_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMapBufferOES(access=0x%x)", access);
+ return (void *) 0;
+ }
+
+ return _mesa_MapBufferARB(target, access);
+}
+
+extern void GL_APIENTRY _mesa_MultiDrawArraysEXT(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount);
+static void GL_APIENTRY _es_MultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawArraysEXT(mode=0x%x)", mode);
+ return;
+ }
+
+ _mesa_MultiDrawArraysEXT(mode, first, count, primcount);
+}
+
+extern void GL_APIENTRY _mesa_MultiDrawElementsEXT(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount);
+static void GL_APIENTRY _es_MultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
+{
+ switch(mode) {
+ case GL_POINTS:
+ case GL_LINES:
+ case GL_LINE_LOOP:
+ case GL_LINE_STRIP:
+ case GL_TRIANGLES:
+ case GL_TRIANGLE_STRIP:
+ case GL_TRIANGLE_FAN:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawElementsEXT(mode=0x%x)", mode);
+ return;
+ }
+ switch(type) {
+ case GL_UNSIGNED_BYTE:
+ case GL_UNSIGNED_SHORT:
+ case GL_UNSIGNED_INT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glMultiDrawElementsEXT(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_MultiDrawElementsEXT(mode, count, type, indices, primcount);
+}
+
+extern void GL_APIENTRY _mesa_PixelStorei(GLenum pname, GLint param);
+static void GL_APIENTRY _es_PixelStorei(GLenum pname, GLint param)
+{
+ switch(pname) {
+ case GL_PACK_ALIGNMENT:
+ case GL_UNPACK_ALIGNMENT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glPixelStorei(pname=0x%x)", pname);
+ return;
+ }
+ switch(param) {
+ case 1:
+ case 2:
+ case 4:
+ case 8:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glPixelStorei(param=%d)", param);
+ return;
+ }
+
+ _mesa_PixelStorei(pname, param);
+}
+
+extern void GL_APIENTRY _mesa_PolygonOffset(GLfloat factor, GLfloat units);
+#define _es_PolygonOffset _mesa_PolygonOffset
+
+extern void GL_APIENTRY _mesa_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels);
+static void GL_APIENTRY _es_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glReadPixels(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_ReleaseShaderCompiler(void);
+#define _es_ReleaseShaderCompiler _mesa_ReleaseShaderCompiler
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_RenderbufferStorageEXT(GLenum target, GLenum internalFormat, GLsizei width, GLsizei height);
+static void GL_APIENTRY _check_RenderbufferStorage(GLenum target, GLenum internalFormat, GLsizei width, GLsizei height)
+{
+ switch(target) {
+ case GL_RENDERBUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glRenderbufferStorage(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_DEPTH_COMPONENT16:
+ case GL_RGBA4:
+ case GL_RGB5_A1:
+ case GL_RGB565:
+ case GL_STENCIL_INDEX8:
+ case GL_DEPTH_COMPONENT24_OES:
+ case GL_DEPTH_COMPONENT32_OES:
+ case GL_RGB8_OES:
+ case GL_RGBA8_OES:
+ case GL_STENCIL_INDEX1_OES:
+ case GL_STENCIL_INDEX4_OES:
+ case GL_DEPTH24_STENCIL8_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glRenderbufferStorage(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+
+ _es_RenderbufferStorageEXT(target, internalFormat, width, height);
+}
+
+extern void GL_APIENTRY _mesa_SampleCoverageARB(GLclampf value, GLboolean invert);
+#define _es_SampleCoverage _mesa_SampleCoverageARB
+
+extern void GL_APIENTRY _mesa_Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
+#define _es_Scissor _mesa_Scissor
+
+extern void GL_APIENTRY _mesa_ShaderBinary(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length);
+#define _es_ShaderBinary _mesa_ShaderBinary
+
+extern void GL_APIENTRY _mesa_ShaderSourceARB(GLuint shader, GLsizei count, const GLchar ** string, const int * length);
+#define _es_ShaderSource _mesa_ShaderSourceARB
+
+extern void GL_APIENTRY _mesa_StencilFunc(GLenum func, GLint ref, GLuint mask);
+static void GL_APIENTRY _es_StencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_GEQUAL:
+ case GL_EQUAL:
+ case GL_NOTEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilFunc(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_StencilFunc(func, ref, mask);
+}
+
+extern void GL_APIENTRY _mesa_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+static void GL_APIENTRY _es_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ switch(face) {
+ case GL_FRONT:
+ case GL_BACK:
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilFuncSeparate(face=0x%x)", face);
+ return;
+ }
+ switch(func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_GEQUAL:
+ case GL_EQUAL:
+ case GL_NOTEQUAL:
+ case GL_ALWAYS:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilFuncSeparate(func=0x%x)", func);
+ return;
+ }
+
+ _mesa_StencilFuncSeparate(face, func, ref, mask);
+}
+
+extern void GL_APIENTRY _mesa_StencilMask(GLuint mask);
+#define _es_StencilMask _mesa_StencilMask
+
+extern void GL_APIENTRY _mesa_StencilMaskSeparate(GLenum face, GLuint mask);
+static void GL_APIENTRY _es_StencilMaskSeparate(GLenum face, GLuint mask)
+{
+ switch(face) {
+ case GL_FRONT:
+ case GL_BACK:
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilMaskSeparate(face=0x%x)", face);
+ return;
+ }
+
+ _mesa_StencilMaskSeparate(face, mask);
+}
+
+extern void GL_APIENTRY _mesa_StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+static void GL_APIENTRY _es_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ switch(fail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(fail=0x%x)", fail);
+ return;
+ }
+ switch(zfail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(zfail=0x%x)", zfail);
+ return;
+ }
+ switch(zpass) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOp(zpass=0x%x)", zpass);
+ return;
+ }
+
+ _mesa_StencilOp(fail, zfail, zpass);
+}
+
+extern void GL_APIENTRY _mesa_StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
+static void GL_APIENTRY _es_StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
+{
+ switch(face) {
+ case GL_FRONT:
+ case GL_BACK:
+ case GL_FRONT_AND_BACK:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOpSeparate(face=0x%x)", face);
+ return;
+ }
+ switch(fail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOpSeparate(fail=0x%x)", fail);
+ return;
+ }
+ switch(zfail) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOpSeparate(zfail=0x%x)", zfail);
+ return;
+ }
+ switch(zpass) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ case GL_INCR_WRAP:
+ case GL_DECR_WRAP:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glStencilOpSeparate(zpass=0x%x)", zpass);
+ return;
+ }
+
+ _mesa_StencilOpSeparate(face, fail, zfail, zpass);
+}
+
+extern void GL_APIENTRY _mesa_TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_ALPHA:
+ if (format != GL_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (format != GL_RGB) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (format != GL_RGBA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ if (format != GL_LUMINANCE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_LUMINANCE_ALPHA:
+ if (format != GL_LUMINANCE_ALPHA) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_DEPTH_COMPONENT:
+ if (format != GL_DEPTH_COMPONENT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_DEPTH_STENCIL_OES:
+ if (format != GL_DEPTH_STENCIL_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ case GL_BGRA_EXT:
+ if (format != GL_BGRA_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(internalFormat=%d)", internalFormat);
+ return;
+ }
+ switch(border) {
+ case 0:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glTexImage2D(border=%d)", border);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1 && type != GL_UNSIGNED_INT_2_10_10_10_REV_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_DEPTH_COMPONENT:
+ if (type != GL_UNSIGNED_SHORT && type != GL_UNSIGNED_INT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_DEPTH_STENCIL_OES:
+ if (type != GL_UNSIGNED_INT_24_8_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_BGRA_EXT:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage2D(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_TexImage3D(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexImage3DOES(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexImage3DOES(target=0x%x)", target);
+ return;
+ }
+ switch(internalFormat) {
+ case GL_ALPHA:
+ case GL_RGB:
+ case GL_RGBA:
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexImage3DOES(internalFormat=0x%x)", internalFormat);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1 && type != GL_UNSIGNED_INT_2_10_10_10_REV_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexImage3DOES(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param);
+static void GL_APIENTRY _es_TexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ case GL_TEXTURE_WRAP_R_OES:
+ if (param != GL_CLAMP_TO_EDGE && param != GL_REPEAT && param != GL_MIRRORED_REPEAT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && param != GL_LINEAR_MIPMAP_NEAREST && param != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterf(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameterf(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexParameterfv(GLenum target, GLenum pname, const GLfloat * params);
+static void GL_APIENTRY _es_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_WRAP_R_OES: /* size 1 */
+ if (params[0] != GL_CLAMP_TO_EDGE && params[0] != GL_REPEAT && params[0] != GL_MIRRORED_REPEAT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR && params[0] != GL_NEAREST_MIPMAP_NEAREST && params[0] != GL_NEAREST_MIPMAP_LINEAR && params[0] != GL_LINEAR_MIPMAP_NEAREST && params[0] != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameterfv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameterfv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexParameteri(GLenum target, GLenum pname, GLint param);
+static void GL_APIENTRY _es_TexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S:
+ case GL_TEXTURE_WRAP_T:
+ case GL_TEXTURE_WRAP_R_OES:
+ if (param != GL_CLAMP_TO_EDGE && param != GL_REPEAT && param != GL_MIRRORED_REPEAT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && param != GL_LINEAR_MIPMAP_NEAREST && param != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER:
+ if (param != GL_NEAREST && param != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteri(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameteri(target, pname, param);
+}
+
+extern void GL_APIENTRY _mesa_TexParameteriv(GLenum target, GLenum pname, const GLint * params);
+static void GL_APIENTRY _es_TexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(target=0x%x)", target);
+ return;
+ }
+ switch(pname) {
+ case GL_TEXTURE_WRAP_S: /* size 1 */
+ case GL_TEXTURE_WRAP_T: /* size 1 */
+ case GL_TEXTURE_WRAP_R_OES: /* size 1 */
+ if (params[0] != GL_CLAMP_TO_EDGE && params[0] != GL_REPEAT && params[0] != GL_MIRRORED_REPEAT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MIN_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR && params[0] != GL_NEAREST_MIPMAP_NEAREST && params[0] != GL_NEAREST_MIPMAP_LINEAR && params[0] != GL_LINEAR_MIPMAP_NEAREST && params[0] != GL_LINEAR_MIPMAP_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAG_FILTER: /* size 1 */
+ if (params[0] != GL_NEAREST && params[0] != GL_LINEAR) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+ break;
+ case GL_TEXTURE_MAX_ANISOTROPY_EXT: /* size 1 */
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexParameteriv(pname=0x%x)", pname);
+ return;
+ }
+
+ _mesa_TexParameteriv(target, pname, params);
+}
+
+extern void GL_APIENTRY _mesa_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_2D:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
+ case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexSubImage2D(target=0x%x)", target);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1 && type != GL_UNSIGNED_INT_2_10_10_10_REV_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_DEPTH_COMPONENT:
+ if (type != GL_UNSIGNED_SHORT && type != GL_UNSIGNED_INT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_DEPTH_STENCIL_OES:
+ if (type != GL_UNSIGNED_INT_24_8_OES) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_BGRA_EXT:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage2D(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels);
+static void GL_APIENTRY _es_TexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ switch(target) {
+ case GL_TEXTURE_3D_OES:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glTexSubImage3DOES(target=0x%x)", target);
+ return;
+ }
+ switch(format) {
+ case GL_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGB:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_5_6_5) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_RGBA:
+ if (type != GL_UNSIGNED_BYTE && type != GL_UNSIGNED_SHORT_4_4_4_4 && type != GL_UNSIGNED_SHORT_5_5_5_1 && type != GL_UNSIGNED_INT_2_10_10_10_REV_EXT) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ case GL_LUMINANCE:
+ case GL_LUMINANCE_ALPHA:
+ if (type != GL_UNSIGNED_BYTE) {
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage3DOES(format=0x%x)", format);
+ return;
+ }
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_OPERATION, "glTexSubImage3DOES(format=0x%x)", format);
+ return;
+ }
+
+ _mesa_TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+extern void GL_APIENTRY _mesa_Uniform1fARB(GLint location, GLfloat v0);
+#define _es_Uniform1f _mesa_Uniform1fARB
+
+extern void GL_APIENTRY _mesa_Uniform1fvARB(GLint location, GLsizei count, const GLfloat * values);
+#define _es_Uniform1fv _mesa_Uniform1fvARB
+
+extern void GL_APIENTRY _mesa_Uniform1iARB(GLint location, GLint v0);
+#define _es_Uniform1i _mesa_Uniform1iARB
+
+extern void GL_APIENTRY _mesa_Uniform1ivARB(GLint location, GLsizei count, const GLint * values);
+#define _es_Uniform1iv _mesa_Uniform1ivARB
+
+extern void GL_APIENTRY _mesa_Uniform2fARB(GLint location, GLfloat v0, GLfloat v1);
+#define _es_Uniform2f _mesa_Uniform2fARB
+
+extern void GL_APIENTRY _mesa_Uniform2fvARB(GLint location, GLsizei count, const GLfloat * values);
+#define _es_Uniform2fv _mesa_Uniform2fvARB
+
+extern void GL_APIENTRY _mesa_Uniform2iARB(GLint location, GLint v0, GLint v1);
+#define _es_Uniform2i _mesa_Uniform2iARB
+
+extern void GL_APIENTRY _mesa_Uniform2ivARB(GLint location, GLsizei count, const GLint * values);
+#define _es_Uniform2iv _mesa_Uniform2ivARB
+
+extern void GL_APIENTRY _mesa_Uniform3fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+#define _es_Uniform3f _mesa_Uniform3fARB
+
+extern void GL_APIENTRY _mesa_Uniform3fvARB(GLint location, GLsizei count, const GLfloat * values);
+#define _es_Uniform3fv _mesa_Uniform3fvARB
+
+extern void GL_APIENTRY _mesa_Uniform3iARB(GLint location, GLint v0, GLint v1, GLint v2);
+#define _es_Uniform3i _mesa_Uniform3iARB
+
+extern void GL_APIENTRY _mesa_Uniform3ivARB(GLint location, GLsizei count, const GLint * values);
+#define _es_Uniform3iv _mesa_Uniform3ivARB
+
+extern void GL_APIENTRY _mesa_Uniform4fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+#define _es_Uniform4f _mesa_Uniform4fARB
+
+extern void GL_APIENTRY _mesa_Uniform4fvARB(GLint location, GLsizei count, const GLfloat * values);
+#define _es_Uniform4fv _mesa_Uniform4fvARB
+
+extern void GL_APIENTRY _mesa_Uniform4iARB(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+#define _es_Uniform4i _mesa_Uniform4iARB
+
+extern void GL_APIENTRY _mesa_Uniform4ivARB(GLint location, GLsizei count, const GLint * values);
+#define _es_Uniform4iv _mesa_Uniform4ivARB
+
+extern void GL_APIENTRY _mesa_UniformMatrix2fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+#define _es_UniformMatrix2fv _mesa_UniformMatrix2fvARB
+
+extern void GL_APIENTRY _mesa_UniformMatrix3fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+#define _es_UniformMatrix3fv _mesa_UniformMatrix3fvARB
+
+extern void GL_APIENTRY _mesa_UniformMatrix4fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+#define _es_UniformMatrix4fv _mesa_UniformMatrix4fvARB
+
+extern GLboolean GL_APIENTRY _mesa_UnmapBufferARB(GLenum target);
+static GLboolean GL_APIENTRY _es_UnmapBufferOES(GLenum target)
+{
+ switch(target) {
+ case GL_ARRAY_BUFFER:
+ case GL_ELEMENT_ARRAY_BUFFER:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM, "glUnmapBufferOES(target=0x%x)", target);
+ return GL_FALSE;
+ }
+
+ return _mesa_UnmapBufferARB(target);
+}
+
+extern void GL_APIENTRY _mesa_UseProgramObjectARB(GLuint program);
+#define _es_UseProgram _mesa_UseProgramObjectARB
+
+extern void GL_APIENTRY _mesa_ValidateProgramARB(GLuint program);
+#define _es_ValidateProgram _mesa_ValidateProgramARB
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib1f(GLuint index, GLfloat x);
+#define _check_VertexAttrib1f _es_VertexAttrib1f
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib1fv(GLuint index, const GLfloat * v);
+#define _check_VertexAttrib1fv _es_VertexAttrib1fv
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+#define _check_VertexAttrib2f _es_VertexAttrib2f
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib2fv(GLuint index, const GLfloat * v);
+#define _check_VertexAttrib2fv _es_VertexAttrib2fv
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+#define _check_VertexAttrib3f _es_VertexAttrib3f
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib3fv(GLuint index, const GLfloat * v);
+#define _check_VertexAttrib3fv _es_VertexAttrib3fv
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+#define _check_VertexAttrib4f _es_VertexAttrib4f
+
+/* this function is special and is defined elsewhere */
+extern void GL_APIENTRY _es_VertexAttrib4fv(GLuint index, const GLfloat * v);
+#define _check_VertexAttrib4fv _es_VertexAttrib4fv
+
+extern void GL_APIENTRY _mesa_VertexAttribPointerARB(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer);
+static void GL_APIENTRY _es_VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ switch(size) {
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glVertexAttribPointer(size=%d)", size);
+ return;
+ }
+ switch(type) {
+ case GL_BYTE:
+ case GL_UNSIGNED_BYTE:
+ case GL_SHORT:
+ case GL_UNSIGNED_SHORT:
+ case GL_FLOAT:
+ case GL_FIXED:
+ break;
+ default:
+ _mesa_error(_mesa_get_current_context(), GL_INVALID_VALUE, "glVertexAttribPointer(type=0x%x)", type);
+ return;
+ }
+
+ _mesa_VertexAttribPointerARB(index, size, type, normalized, stride, pointer);
+}
+
+extern void GL_APIENTRY _mesa_Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
+#define _es_Viewport _mesa_Viewport
+
+
+#include "glapi/glapi.h"
+
+#if FEATURE_remap_table
+
+/* cannot include main/dispatch.h here */
+#define _GLAPI_USE_REMAP_TABLE
+#include "es2api/main/glapidispatch.h"
+
+#define need_MESA_remap_table
+#include "es2api/main/remap_helper.h"
+
+/* force SET_* macros to use the local remap table */
+#define driDispatchRemapTable remap_table
+static int remap_table[driDispatchRemapTable_size];
+
+static void
+init_remap_table(void)
+{
+ _glthread_DECLARE_STATIC_MUTEX(mutex);
+ static GLboolean initialized = GL_FALSE;
+ const struct gl_function_pool_remap *remap = MESA_remap_table_functions;
+ int i;
+
+ _glthread_LOCK_MUTEX(mutex);
+ if (initialized) {
+ _glthread_UNLOCK_MUTEX(mutex);
+ return;
+ }
+
+ for (i = 0; i < driDispatchRemapTable_size; i++) {
+ GLint offset;
+ const char *spec;
+
+ /* sanity check */
+ ASSERT(i == remap[i].remap_index);
+ spec = _mesa_function_pool + remap[i].pool_index;
+
+ offset = _mesa_map_function_spec(spec);
+ remap_table[i] = offset;
+ }
+ initialized = GL_TRUE;
+ _glthread_UNLOCK_MUTEX(mutex);
+}
+
+#else /* FEATURE_remap_table */
+
+/* cannot include main/dispatch.h here */
+#include "es2api/main/glapidispatch.h"
+
+static INLINE void
+init_remap_table(void)
+{
+}
+
+#endif /* FEATURE_remap_table */
+
+struct _glapi_table *
+_mesa_create_exec_table_es2(void)
+{
+ struct _glapi_table *exec;
+
+ exec = _mesa_alloc_dispatch_table(_gloffset_COUNT);
+ if (exec == NULL)
+ return NULL;
+
+ init_remap_table();
+
+ SET_ActiveTexture(exec, _es_ActiveTexture);
+ SET_AttachShader(exec, _es_AttachShader);
+ SET_BindAttribLocation(exec, _es_BindAttribLocation);
+ SET_BindBuffer(exec, _es_BindBuffer);
+ SET_BindFramebuffer(exec, _es_BindFramebuffer);
+ SET_BindRenderbuffer(exec, _es_BindRenderbuffer);
+ SET_BindTexture(exec, _es_BindTexture);
+ SET_BlendColor(exec, _es_BlendColor);
+ SET_BlendEquation(exec, _es_BlendEquation);
+ SET_BlendEquationSeparate(exec, _es_BlendEquationSeparate);
+ SET_BlendFunc(exec, _es_BlendFunc);
+ SET_BlendFuncSeparate(exec, _es_BlendFuncSeparate);
+ SET_BufferData(exec, _es_BufferData);
+ SET_BufferSubData(exec, _es_BufferSubData);
+ SET_CheckFramebufferStatus(exec, _es_CheckFramebufferStatus);
+ SET_Clear(exec, _es_Clear);
+ SET_ClearColor(exec, _es_ClearColor);
+ SET_ClearDepthf(exec, _es_ClearDepthf);
+ SET_ClearStencil(exec, _es_ClearStencil);
+ SET_ColorMask(exec, _es_ColorMask);
+ SET_CompileShader(exec, _es_CompileShader);
+ SET_CompressedTexImage2D(exec, _es_CompressedTexImage2D);
+ SET_CompressedTexImage3DOES(exec, _es_CompressedTexImage3DOES);
+ SET_CompressedTexSubImage2D(exec, _es_CompressedTexSubImage2D);
+ SET_CompressedTexSubImage3DOES(exec, _es_CompressedTexSubImage3DOES);
+ SET_CopyTexImage2D(exec, _es_CopyTexImage2D);
+ SET_CopyTexSubImage2D(exec, _es_CopyTexSubImage2D);
+ SET_CopyTexSubImage3DOES(exec, _es_CopyTexSubImage3DOES);
+ SET_CreateProgram(exec, _es_CreateProgram);
+ SET_CreateShader(exec, _es_CreateShader);
+ SET_CullFace(exec, _es_CullFace);
+ SET_DeleteBuffers(exec, _es_DeleteBuffers);
+ SET_DeleteFramebuffers(exec, _es_DeleteFramebuffers);
+ SET_DeleteProgram(exec, _es_DeleteProgram);
+ SET_DeleteRenderbuffers(exec, _es_DeleteRenderbuffers);
+ SET_DeleteShader(exec, _es_DeleteShader);
+ SET_DeleteTextures(exec, _es_DeleteTextures);
+ SET_DepthFunc(exec, _es_DepthFunc);
+ SET_DepthMask(exec, _es_DepthMask);
+ SET_DepthRangef(exec, _es_DepthRangef);
+ SET_DetachShader(exec, _es_DetachShader);
+ SET_Disable(exec, _es_Disable);
+ SET_DisableVertexAttribArray(exec, _es_DisableVertexAttribArray);
+ SET_DrawArrays(exec, _es_DrawArrays);
+ SET_DrawElements(exec, _es_DrawElements);
+ SET_EGLImageTargetRenderbufferStorageOES(exec, _es_EGLImageTargetRenderbufferStorageOES);
+ SET_EGLImageTargetTexture2DOES(exec, _es_EGLImageTargetTexture2DOES);
+ SET_Enable(exec, _es_Enable);
+ SET_EnableVertexAttribArray(exec, _es_EnableVertexAttribArray);
+ SET_Finish(exec, _es_Finish);
+ SET_Flush(exec, _es_Flush);
+ SET_FramebufferRenderbuffer(exec, _es_FramebufferRenderbuffer);
+ SET_FramebufferTexture2D(exec, _es_FramebufferTexture2D);
+ SET_FramebufferTexture3DOES(exec, _es_FramebufferTexture3DOES);
+ SET_FrontFace(exec, _es_FrontFace);
+ SET_GenBuffers(exec, _es_GenBuffers);
+ SET_GenFramebuffers(exec, _es_GenFramebuffers);
+ SET_GenRenderbuffers(exec, _es_GenRenderbuffers);
+ SET_GenTextures(exec, _es_GenTextures);
+ SET_GenerateMipmap(exec, _es_GenerateMipmap);
+ SET_GetActiveAttrib(exec, _es_GetActiveAttrib);
+ SET_GetActiveUniform(exec, _es_GetActiveUniform);
+ SET_GetAttachedShaders(exec, _es_GetAttachedShaders);
+ SET_GetAttribLocation(exec, _es_GetAttribLocation);
+ SET_GetBooleanv(exec, _es_GetBooleanv);
+ SET_GetBufferParameteriv(exec, _es_GetBufferParameteriv);
+ SET_GetBufferPointervOES(exec, _es_GetBufferPointervOES);
+ SET_GetError(exec, _es_GetError);
+ SET_GetFloatv(exec, _es_GetFloatv);
+ SET_GetFramebufferAttachmentParameteriv(exec, _es_GetFramebufferAttachmentParameteriv);
+ SET_GetIntegerv(exec, _es_GetIntegerv);
+ SET_GetProgramInfoLog(exec, _es_GetProgramInfoLog);
+ SET_GetProgramiv(exec, _es_GetProgramiv);
+ SET_GetRenderbufferParameteriv(exec, _es_GetRenderbufferParameteriv);
+ SET_GetShaderInfoLog(exec, _es_GetShaderInfoLog);
+ SET_GetShaderPrecisionFormat(exec, _es_GetShaderPrecisionFormat);
+ SET_GetShaderSource(exec, _es_GetShaderSource);
+ SET_GetShaderiv(exec, _es_GetShaderiv);
+ SET_GetString(exec, _es_GetString);
+ SET_GetTexParameterfv(exec, _es_GetTexParameterfv);
+ SET_GetTexParameteriv(exec, _es_GetTexParameteriv);
+ SET_GetUniformLocation(exec, _es_GetUniformLocation);
+ SET_GetUniformfv(exec, _es_GetUniformfv);
+ SET_GetUniformiv(exec, _es_GetUniformiv);
+ SET_GetVertexAttribPointerv(exec, _es_GetVertexAttribPointerv);
+ SET_GetVertexAttribfv(exec, _es_GetVertexAttribfv);
+ SET_GetVertexAttribiv(exec, _es_GetVertexAttribiv);
+ SET_Hint(exec, _es_Hint);
+ SET_IsBuffer(exec, _es_IsBuffer);
+ SET_IsEnabled(exec, _es_IsEnabled);
+ SET_IsFramebuffer(exec, _es_IsFramebuffer);
+ SET_IsProgram(exec, _es_IsProgram);
+ SET_IsRenderbuffer(exec, _es_IsRenderbuffer);
+ SET_IsShader(exec, _es_IsShader);
+ SET_IsTexture(exec, _es_IsTexture);
+ SET_LineWidth(exec, _es_LineWidth);
+ SET_LinkProgram(exec, _es_LinkProgram);
+ SET_MapBufferOES(exec, _es_MapBufferOES);
+ SET_MultiDrawArraysEXT(exec, _es_MultiDrawArraysEXT);
+ SET_MultiDrawElementsEXT(exec, _es_MultiDrawElementsEXT);
+ SET_PixelStorei(exec, _es_PixelStorei);
+ SET_PolygonOffset(exec, _es_PolygonOffset);
+ SET_ReadPixels(exec, _es_ReadPixels);
+ SET_ReleaseShaderCompiler(exec, _es_ReleaseShaderCompiler);
+ SET_RenderbufferStorage(exec, _check_RenderbufferStorage);
+ SET_SampleCoverage(exec, _es_SampleCoverage);
+ SET_Scissor(exec, _es_Scissor);
+ SET_ShaderBinary(exec, _es_ShaderBinary);
+ SET_ShaderSource(exec, _es_ShaderSource);
+ SET_StencilFunc(exec, _es_StencilFunc);
+ SET_StencilFuncSeparate(exec, _es_StencilFuncSeparate);
+ SET_StencilMask(exec, _es_StencilMask);
+ SET_StencilMaskSeparate(exec, _es_StencilMaskSeparate);
+ SET_StencilOp(exec, _es_StencilOp);
+ SET_StencilOpSeparate(exec, _es_StencilOpSeparate);
+ SET_TexImage2D(exec, _es_TexImage2D);
+ SET_TexImage3DOES(exec, _es_TexImage3DOES);
+ SET_TexParameterf(exec, _es_TexParameterf);
+ SET_TexParameterfv(exec, _es_TexParameterfv);
+ SET_TexParameteri(exec, _es_TexParameteri);
+ SET_TexParameteriv(exec, _es_TexParameteriv);
+ SET_TexSubImage2D(exec, _es_TexSubImage2D);
+ SET_TexSubImage3DOES(exec, _es_TexSubImage3DOES);
+ SET_Uniform1f(exec, _es_Uniform1f);
+ SET_Uniform1fv(exec, _es_Uniform1fv);
+ SET_Uniform1i(exec, _es_Uniform1i);
+ SET_Uniform1iv(exec, _es_Uniform1iv);
+ SET_Uniform2f(exec, _es_Uniform2f);
+ SET_Uniform2fv(exec, _es_Uniform2fv);
+ SET_Uniform2i(exec, _es_Uniform2i);
+ SET_Uniform2iv(exec, _es_Uniform2iv);
+ SET_Uniform3f(exec, _es_Uniform3f);
+ SET_Uniform3fv(exec, _es_Uniform3fv);
+ SET_Uniform3i(exec, _es_Uniform3i);
+ SET_Uniform3iv(exec, _es_Uniform3iv);
+ SET_Uniform4f(exec, _es_Uniform4f);
+ SET_Uniform4fv(exec, _es_Uniform4fv);
+ SET_Uniform4i(exec, _es_Uniform4i);
+ SET_Uniform4iv(exec, _es_Uniform4iv);
+ SET_UniformMatrix2fv(exec, _es_UniformMatrix2fv);
+ SET_UniformMatrix3fv(exec, _es_UniformMatrix3fv);
+ SET_UniformMatrix4fv(exec, _es_UniformMatrix4fv);
+ SET_UnmapBufferOES(exec, _es_UnmapBufferOES);
+ SET_UseProgram(exec, _es_UseProgram);
+ SET_ValidateProgram(exec, _es_ValidateProgram);
+ SET_VertexAttrib1f(exec, _check_VertexAttrib1f);
+ SET_VertexAttrib1fv(exec, _check_VertexAttrib1fv);
+ SET_VertexAttrib2f(exec, _check_VertexAttrib2f);
+ SET_VertexAttrib2fv(exec, _check_VertexAttrib2fv);
+ SET_VertexAttrib3f(exec, _check_VertexAttrib3f);
+ SET_VertexAttrib3fv(exec, _check_VertexAttrib3fv);
+ SET_VertexAttrib4f(exec, _check_VertexAttrib4f);
+ SET_VertexAttrib4fv(exec, _check_VertexAttrib4fv);
+ SET_VertexAttribPointer(exec, _es_VertexAttribPointer);
+ SET_Viewport(exec, _es_Viewport);
+
+ return exec;
+}
+
+#endif /* FEATURE_ES2 */