Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /* DO NOT MODIFY - automatically generated by generate_builtins.py */
  2. /*
  3.  * Copyright © 2010 Intel Corporation
  4.  *
  5.  * Permission is hereby granted, free of charge, to any person obtaining a
  6.  * copy of this software and associated documentation files (the "Software"),
  7.  * to deal in the Software without restriction, including without limitation
  8.  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  9.  * and/or sell copies of the Software, and to permit persons to whom the
  10.  * Software is furnished to do so, subject to the following conditions:
  11.  *
  12.  * The above copyright notice and this permission notice (including the next
  13.  * paragraph) shall be included in all copies or substantial portions of the
  14.  * Software.
  15.  *
  16.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  17.  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  18.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
  19.  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  20.  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  21.  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
  22.  * DEALINGS IN THE SOFTWARE.
  23.  */
  24.  
  25. #include <stdio.h>
  26. #include "main/core.h" /* for struct gl_shader */
  27. #include "glsl_parser_extras.h"
  28. #include "ir_reader.h"
  29. #include "program.h"
  30. #include "ast.h"
  31.  
  32. extern "C" struct gl_shader *
  33. _mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type);
  34.  
  35. gl_shader *
  36. read_builtins(GLenum target, const char *protos, const char **functions, unsigned count)
  37. {
  38.    struct gl_context fakeCtx;
  39.    fakeCtx.API = API_OPENGL_COMPAT;
  40.    fakeCtx.Const.GLSLVersion = 150;
  41.    fakeCtx.Extensions.ARB_ES2_compatibility = true;
  42.    fakeCtx.Extensions.ARB_ES3_compatibility = true;
  43.    fakeCtx.Const.ForceGLSLExtensionsWarn = false;
  44.    gl_shader *sh = _mesa_new_shader(NULL, 0, target);
  45.    struct _mesa_glsl_parse_state *st =
  46.       new(sh) _mesa_glsl_parse_state(&fakeCtx, target, sh);
  47.  
  48.    st->language_version = 150;
  49.    st->symbols->separate_function_namespace = false;
  50.    st->ARB_texture_rectangle_enable = true;
  51.    st->EXT_texture_array_enable = true;
  52.    st->OES_EGL_image_external_enable = true;
  53.    st->ARB_shader_bit_encoding_enable = true;
  54.    st->ARB_texture_cube_map_array_enable = true;
  55.    st->ARB_shading_language_packing_enable = true;
  56.    st->ARB_texture_multisample_enable = true;
  57.    st->ARB_texture_query_lod_enable = true;
  58.    st->ARB_gpu_shader5_enable = true;
  59.    _mesa_glsl_initialize_types(st);
  60.  
  61.    sh->ir = new(sh) exec_list;
  62.    sh->symbols = st->symbols;
  63.  
  64.    /* Read the IR containing the prototypes */
  65.    _mesa_glsl_read_ir(st, sh->ir, protos, true);
  66.  
  67.    /* Read ALL the function bodies, telling the IR reader not to scan for
  68.     * prototypes (we've already created them).  The IR reader will skip any
  69.     * signature that does not already exist as a prototype.
  70.     */
  71.    for (unsigned i = 0; i < count; i++) {
  72.       _mesa_glsl_read_ir(st, sh->ir, functions[i], false);
  73.  
  74.       if (st->error) {
  75.          printf("error reading builtin: %.35s ...\n", functions[i]);
  76.          printf("Info log:\n%s\n", st->info_log);
  77.          ralloc_free(sh);
  78.          return NULL;
  79.       }
  80.    }
  81.  
  82.    reparent_ir(sh->ir, sh);
  83.    delete st;
  84.  
  85.    return sh;
  86. }
  87.  
  88. static const char builtin_abs[] =
  89.    "((function abs\n"
  90.    "   (signature float\n"
  91.    "     (parameters\n"
  92.    "       (declare (in) float arg0))\n"
  93.    "     ((return (expression float abs (var_ref arg0)))))\n"
  94.    "\n"
  95.    "   (signature vec2\n"
  96.    "     (parameters\n"
  97.    "       (declare (in) vec2 arg0))\n"
  98.    "     ((return (expression vec2 abs (var_ref arg0)))))\n"
  99.    "\n"
  100.    "   (signature vec3\n"
  101.    "     (parameters\n"
  102.    "       (declare (in) vec3 arg0))\n"
  103.    "     ((return (expression vec3 abs (var_ref arg0)))))\n"
  104.    "\n"
  105.    "   (signature vec4\n"
  106.    "     (parameters\n"
  107.    "       (declare (in) vec4 arg0))\n"
  108.    "     ((return (expression vec4 abs (var_ref arg0)))))\n"
  109.    "\n"
  110.    "   (signature int\n"
  111.    "     (parameters\n"
  112.    "       (declare (in) int arg0))\n"
  113.    "     ((return (expression int abs (var_ref arg0)))))\n"
  114.    "\n"
  115.    "   (signature ivec2\n"
  116.    "     (parameters\n"
  117.    "       (declare (in) ivec2 arg0))\n"
  118.    "     ((return (expression ivec2 abs (var_ref arg0)))))\n"
  119.    "\n"
  120.    "   (signature ivec3\n"
  121.    "     (parameters\n"
  122.    "       (declare (in) ivec3 arg0))\n"
  123.    "     ((return (expression ivec3 abs (var_ref arg0)))))\n"
  124.    "\n"
  125.    "   (signature ivec4\n"
  126.    "     (parameters\n"
  127.    "       (declare (in) ivec4 arg0))\n"
  128.    "     ((return (expression ivec4 abs (var_ref arg0)))))\n"
  129.    "))\n"
  130.    ""
  131. ;
  132. static const char builtin_acos[] =
  133.    "((function acos\n"
  134.    "   (signature float\n"
  135.    "     (parameters\n"
  136.    "       (declare (in) float x))\n"
  137.    "     ((declare () float s)\n"
  138.    "      (call asin (var_ref s) ((var_ref x)))\n"
  139.    "      (return (expression float - (constant float (1.5707964)) (var_ref s)))))\n"
  140.    "\n"
  141.    "   (signature vec2\n"
  142.    "     (parameters\n"
  143.    "       (declare (in) vec2 x))\n"
  144.    "     ((declare () vec2 s)\n"
  145.    "      (call asin (var_ref s) ((var_ref x)))\n"
  146.    "      (return (expression vec2 - (constant float (1.5707964)) (var_ref s)))))\n"
  147.    "\n"
  148.    "   (signature vec3\n"
  149.    "     (parameters\n"
  150.    "       (declare (in) vec3 x))\n"
  151.    "     ((declare () vec3 s)\n"
  152.    "      (call asin (var_ref s) ((var_ref x)))\n"
  153.    "      (return (expression vec3 - (constant float (1.5707964)) (var_ref s)))))\n"
  154.    "\n"
  155.    "   (signature vec4\n"
  156.    "     (parameters\n"
  157.    "       (declare (in) vec4 x))\n"
  158.    "     ((declare () vec4 s)\n"
  159.    "      (call asin (var_ref s) ((var_ref x)))\n"
  160.    "      (return (expression vec4 - (constant float (1.5707964)) (var_ref s)))))\n"
  161.    "))\n"
  162.    ""
  163. ;
  164. static const char builtin_acosh[] =
  165.    "((function acosh\n"
  166.    "   (signature float\n"
  167.    "     (parameters\n"
  168.    "       (declare (in) float x))\n"
  169.    "     ((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"
  170.    "\n"
  171.    "   (signature vec2\n"
  172.    "     (parameters\n"
  173.    "       (declare (in) vec2 x))\n"
  174.    "     ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 - (expression vec2 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n"
  175.    "\n"
  176.    "   (signature vec3\n"
  177.    "     (parameters\n"
  178.    "       (declare (in) vec3 x))\n"
  179.    "     ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 - (expression vec3 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n"
  180.    "\n"
  181.    "   (signature vec4\n"
  182.    "     (parameters\n"
  183.    "       (declare (in) vec4 x))\n"
  184.    "     ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 - (expression vec4 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n"
  185.    "))\n"
  186.    ""
  187. ;
  188. static const char builtin_all[] =
  189.    "((function all\n"
  190.    "   (signature bool\n"
  191.    "     (parameters\n"
  192.    "       (declare (in) bvec2 arg0))\n"
  193.    "     ((return (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))))))\n"
  194.    "\n"
  195.    "   (signature bool\n"
  196.    "     (parameters\n"
  197.    "       (declare (in) bvec3 arg0))\n"
  198.    "     ((return (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))))))\n"
  199.    "\n"
  200.    "   (signature bool\n"
  201.    "     (parameters\n"
  202.    "       (declare (in) bvec4 arg0))\n"
  203.    "     ((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"
  204.    "))\n"
  205.    ""
  206. ;
  207. static const char builtin_any[] =
  208.    "((function any\n"
  209.    "   (signature bool\n"
  210.    "     (parameters\n"
  211.    "       (declare (in) bvec2 arg0))\n"
  212.    "     ((return (expression bool any (var_ref arg0)))))\n"
  213.    "\n"
  214.    "   (signature bool\n"
  215.    "     (parameters\n"
  216.    "       (declare (in) bvec3 arg0))\n"
  217.    "     ((return (expression bool any (var_ref arg0)))))\n"
  218.    "\n"
  219.    "   (signature bool\n"
  220.    "     (parameters\n"
  221.    "       (declare (in) bvec4 arg0))\n"
  222.    "     ((return (expression bool any (var_ref arg0)))))\n"
  223.    "))\n"
  224.    ""
  225. ;
  226. static const char builtin_asin[] =
  227.    "((function asin\n"
  228.    "   (signature float\n"
  229.    "     (parameters\n"
  230.    "       (declare (in) float x))\n"
  231.    "     ((return (expression float *\n"
  232.    "           (expression float sign (var_ref x))\n"
  233.    "           (expression float -\n"
  234.    "            (constant float (1.5707964))\n"
  235.    "            (expression float *\n"
  236.    "             (expression float sqrt\n"
  237.    "              (expression float -\n"
  238.    "               (constant float (1.0))\n"
  239.    "               (expression float abs (var_ref x))))\n"
  240.    "             (expression float +\n"
  241.    "              (constant float (1.5707964))\n"
  242.    "              (expression float *\n"
  243.    "               (expression float abs (var_ref x))\n"
  244.    "               (expression float +\n"
  245.    "                (constant float (-0.21460183))\n"
  246.    "                (expression float *\n"
  247.    "                 (expression float abs (var_ref x))\n"
  248.    "                     (expression float +\n"
  249.    "                      (constant float (0.086566724))\n"
  250.    "                      (expression float *\n"
  251.    "                       (expression float abs (var_ref x))\n"
  252.    "                       (constant float (-0.03102955))\n"
  253.    "                 ))))))))))))\n"
  254.    "\n"
  255.    "   (signature vec2\n"
  256.    "     (parameters\n"
  257.    "       (declare (in) vec2 x))\n"
  258.    "     ((return (expression vec2 *\n"
  259.    "           (expression vec2 sign (var_ref x))\n"
  260.    "           (expression vec2 -\n"
  261.    "            (constant float (1.5707964))\n"
  262.    "            (expression vec2 *\n"
  263.    "             (expression vec2 sqrt\n"
  264.    "              (expression vec2 -\n"
  265.    "               (constant float (1.0))\n"
  266.    "               (expression vec2 abs (var_ref x))))\n"
  267.    "             (expression vec2 +\n"
  268.    "              (constant float (1.5707964))\n"
  269.    "              (expression vec2 *\n"
  270.    "               (expression vec2 abs (var_ref x))\n"
  271.    "               (expression vec2 +\n"
  272.    "                (constant float (-0.21460183))\n"
  273.    "                (expression vec2 *\n"
  274.    "                 (expression vec2 abs (var_ref x))\n"
  275.    "                     (expression vec2 +\n"
  276.    "                      (constant float (0.086566724))\n"
  277.    "                      (expression vec2 *\n"
  278.    "                       (expression vec2 abs (var_ref x))\n"
  279.    "                       (constant float (-0.03102955))\n"
  280.    "                 ))))))))))))\n"
  281.    "\n"
  282.    "   (signature vec3\n"
  283.    "     (parameters\n"
  284.    "       (declare (in) vec3 x))\n"
  285.    "     ((return (expression vec3 *\n"
  286.    "           (expression vec3 sign (var_ref x))\n"
  287.    "           (expression vec3 -\n"
  288.    "            (constant float (1.5707964))\n"
  289.    "            (expression vec3 *\n"
  290.    "             (expression vec3 sqrt\n"
  291.    "              (expression vec3 -\n"
  292.    "               (constant float (1.0))\n"
  293.    "               (expression vec3 abs (var_ref x))))\n"
  294.    "             (expression vec3 +\n"
  295.    "              (constant float (1.5707964))\n"
  296.    "              (expression vec3 *\n"
  297.    "               (expression vec3 abs (var_ref x))\n"
  298.    "               (expression vec3 +\n"
  299.    "                (constant float (-0.21460183))\n"
  300.    "                (expression vec3 *\n"
  301.    "                 (expression vec3 abs (var_ref x))\n"
  302.    "                     (expression vec3 +\n"
  303.    "                      (constant float (0.086566724))\n"
  304.    "                      (expression vec3 *\n"
  305.    "                       (expression vec3 abs (var_ref x))\n"
  306.    "                       (constant float (-0.03102955))\n"
  307.    "                 ))))))))))))\n"
  308.    "\n"
  309.    "   (signature vec4\n"
  310.    "     (parameters\n"
  311.    "       (declare (in) vec4 x))\n"
  312.    "     ((return (expression vec4 *\n"
  313.    "           (expression vec4 sign (var_ref x))\n"
  314.    "           (expression vec4 -\n"
  315.    "            (constant float (1.5707964))\n"
  316.    "            (expression vec4 *\n"
  317.    "             (expression vec4 sqrt\n"
  318.    "              (expression vec4 -\n"
  319.    "               (constant float (1.0))\n"
  320.    "               (expression vec4 abs (var_ref x))))\n"
  321.    "             (expression vec4 +\n"
  322.    "              (constant float (1.5707964))\n"
  323.    "              (expression vec4 *\n"
  324.    "               (expression vec4 abs (var_ref x))\n"
  325.    "               (expression vec4 +\n"
  326.    "                (constant float (-0.21460183))\n"
  327.    "                (expression vec4 *\n"
  328.    "                 (expression vec4 abs (var_ref x))\n"
  329.    "                     (expression vec4 +\n"
  330.    "                      (constant float (0.086566724))\n"
  331.    "                      (expression vec4 *\n"
  332.    "                       (expression vec4 abs (var_ref x))\n"
  333.    "                       (constant float (-0.03102955))\n"
  334.    "                 ))))))))))))\n"
  335.    "))\n"
  336.    ""
  337. ;
  338. static const char builtin_asinh[] =
  339.    "((function asinh\n"
  340.    "   (signature float\n"
  341.    "     (parameters\n"
  342.    "       (declare (in) float x))\n"
  343.    "     ((return (expression float *\n"
  344.    "               (expression float sign (var_ref x))\n"
  345.    "               (expression float log\n"
  346.    "                (expression float +\n"
  347.    "                 (expression float abs (var_ref x))\n"
  348.    "                 (expression float sqrt\n"
  349.    "                  (expression float +\n"
  350.    "                   (expression float * (var_ref x) (var_ref x))\n"
  351.    "                   (constant float (1))))))))))\n"
  352.    "\n"
  353.    "   (signature vec2\n"
  354.    "     (parameters\n"
  355.    "       (declare (in) vec2 x))\n"
  356.    "     ((return (expression vec2 *\n"
  357.    "               (expression vec2 sign (var_ref x))\n"
  358.    "               (expression vec2 log\n"
  359.    "                (expression vec2 +\n"
  360.    "                 (expression vec2 abs (var_ref x))\n"
  361.    "                 (expression vec2 sqrt\n"
  362.    "                  (expression vec2 +\n"
  363.    "                   (expression vec2 * (var_ref x) (var_ref x))\n"
  364.    "                   (constant float (1))))))))))\n"
  365.    "\n"
  366.    "   (signature vec3\n"
  367.    "     (parameters\n"
  368.    "       (declare (in) vec3 x))\n"
  369.    "     ((return (expression vec3 *\n"
  370.    "               (expression vec3 sign (var_ref x))\n"
  371.    "               (expression vec3 log\n"
  372.    "                (expression vec3 +\n"
  373.    "                 (expression vec3 abs (var_ref x))\n"
  374.    "                 (expression vec3 sqrt\n"
  375.    "                  (expression vec3 +\n"
  376.    "                   (expression vec3 * (var_ref x) (var_ref x))\n"
  377.    "                   (constant float (1))))))))))\n"
  378.    "\n"
  379.    "   (signature vec4\n"
  380.    "     (parameters\n"
  381.    "       (declare (in) vec4 x))\n"
  382.    "     ((return (expression vec4 *\n"
  383.    "               (expression vec4 sign (var_ref x))\n"
  384.    "               (expression vec4 log\n"
  385.    "                (expression vec4 +\n"
  386.    "                 (expression vec4 abs (var_ref x))\n"
  387.    "                 (expression vec4 sqrt\n"
  388.    "                  (expression vec4 +\n"
  389.    "                   (expression vec4 * (var_ref x) (var_ref x))\n"
  390.    "                   (constant float (1))))))))))\n"
  391.    "))\n"
  392.    ""
  393. ;
  394. static const char builtin_atan[] =
  395.    "((function atan\n"
  396.    "   (signature float\n"
  397.    "     (parameters\n"
  398.    "       (declare (in) float y_over_x))\n"
  399.    "     ((declare () float s)\n"
  400.    "      (call asin (var_ref s)\n"
  401.    "                      ((expression float *\n"
  402.    "                       (var_ref y_over_x)\n"
  403.    "                       (expression float rsq\n"
  404.    "                        (expression float +\n"
  405.    "                         (expression float *\n"
  406.    "                          (var_ref y_over_x)\n"
  407.    "                          (var_ref y_over_x))\n"
  408.    "                         (constant float (1.0)))))))\n"
  409.    "      (return (var_ref s))))\n"
  410.    "\n"
  411.    "   (signature vec2\n"
  412.    "     (parameters\n"
  413.    "       (declare (in) vec2 y_over_x))\n"
  414.    "     ((declare () vec2 s)\n"
  415.    "      (call asin (var_ref s)\n"
  416.    "                      ((expression vec2 *\n"
  417.    "                       (var_ref y_over_x)\n"
  418.    "                       (expression vec2 rsq\n"
  419.    "                        (expression vec2 +\n"
  420.    "                         (expression vec2 *\n"
  421.    "                          (var_ref y_over_x)\n"
  422.    "                          (var_ref y_over_x))\n"
  423.    "                         (constant float (1.0)))))))\n"
  424.    "      (return (var_ref s))))\n"
  425.    "\n"
  426.    "   (signature vec3\n"
  427.    "     (parameters\n"
  428.    "       (declare (in) vec3 y_over_x))\n"
  429.    "     ((declare () vec3 s)\n"
  430.    "      (call asin (var_ref s)\n"
  431.    "                      ((expression vec3 *\n"
  432.    "                       (var_ref y_over_x)\n"
  433.    "                       (expression vec3 rsq\n"
  434.    "                        (expression vec3 +\n"
  435.    "                         (expression vec3 *\n"
  436.    "                          (var_ref y_over_x)\n"
  437.    "                          (var_ref y_over_x))\n"
  438.    "                         (constant float (1.0)))))))\n"
  439.    "      (return (var_ref s))))\n"
  440.    "\n"
  441.    "   (signature vec4\n"
  442.    "     (parameters\n"
  443.    "       (declare (in) vec4 y_over_x))\n"
  444.    "     ((declare () vec4 s)\n"
  445.    "      (call asin (var_ref s)\n"
  446.    "                      ((expression vec4 *\n"
  447.    "                       (var_ref y_over_x)\n"
  448.    "                       (expression vec4 rsq\n"
  449.    "                        (expression vec4 +\n"
  450.    "                         (expression vec4 *\n"
  451.    "                          (var_ref y_over_x)\n"
  452.    "                          (var_ref y_over_x))\n"
  453.    "                         (constant float (1.0)))))))\n"
  454.    "      (return (var_ref s))))\n"
  455.    "\n"
  456.    "  (signature float\n"
  457.    "    (parameters\n"
  458.    "      (declare (in ) float y)\n"
  459.    "      (declare (in ) float x)\n"
  460.    "    )\n"
  461.    "    (\n"
  462.    "      (declare () float r)\n"
  463.    "      (if (expression bool >\n"
  464.    "           (expression float abs (var_ref x))\n"
  465.    "           (expression float * (constant float (1.0e-8)) (expression float abs (var_ref y)))) (\n"
  466.    "        (call atan (var_ref r) ((expression float / (var_ref y) (var_ref x))))\n"
  467.    "        (if (expression bool < (var_ref x) (constant float (0.000000)) ) (\n"
  468.    "          (if (expression bool >= (var_ref y) (constant float (0.000000)) )\n"
  469.    "              ((assign (x) (var_ref r) (expression float + (var_ref r) (constant float (3.141593)))))\n"
  470.    "              ((assign (x) (var_ref r) (expression float - (var_ref r) (constant float (3.141593))))))\n"
  471.    "        )\n"
  472.    "        (\n"
  473.    "        ))\n"
  474.    "      )\n"
  475.    "      (\n"
  476.    "        (declare () float sgn)\n"
  477.    "        (assign (x) (var_ref sgn) (expression float sign (var_ref y)))\n"
  478.    "        (assign (x) (var_ref r) (expression float * (var_ref sgn) (constant float (1.5707965))))\n"
  479.    "      ))\n"
  480.    "\n"
  481.    "      (return (var_ref r) )\n"
  482.    "    ))\n"
  483.    "\n"
  484.    "\n"
  485.    "\n"
  486.    "   (signature vec2\n"
  487.    "     (parameters\n"
  488.    "       (declare (in) vec2 y)\n"
  489.    "       (declare (in) vec2 x))\n"
  490.    "     ((declare () vec2 r)\n"
  491.    "      (declare () float temp)\n"
  492.    "      (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n"
  493.    "      (assign (x) (var_ref r) (var_ref temp))\n"
  494.    "      (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n"
  495.    "      (assign (y) (var_ref r) (var_ref temp))\n"
  496.    "      (return (var_ref r))))\n"
  497.    "\n"
  498.    "   (signature vec3\n"
  499.    "     (parameters\n"
  500.    "       (declare (in) vec3 y)\n"
  501.    "       (declare (in) vec3 x))\n"
  502.    "     ((declare () vec3 r)\n"
  503.    "      (declare () float temp)\n"
  504.    "      (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n"
  505.    "      (assign (x) (var_ref r) (var_ref temp))\n"
  506.    "      (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n"
  507.    "      (assign (y) (var_ref r) (var_ref temp))\n"
  508.    "      (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))\n"
  509.    "      (assign (z) (var_ref r) (var_ref temp))\n"
  510.    "      (return (var_ref r))))\n"
  511.    "\n"
  512.    "   (signature vec4\n"
  513.    "     (parameters\n"
  514.    "       (declare (in) vec4 y)\n"
  515.    "       (declare (in) vec4 x))\n"
  516.    "     ((declare () vec4 r)\n"
  517.    "      (declare () float temp)\n"
  518.    "      (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n"
  519.    "      (assign (x) (var_ref r) (var_ref temp))\n"
  520.    "      (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n"
  521.    "      (assign (y) (var_ref r) (var_ref temp))\n"
  522.    "      (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))\n"
  523.    "      (assign (z) (var_ref r) (var_ref temp))\n"
  524.    "      (call atan (var_ref temp) ((swiz w (var_ref y)) (swiz w (var_ref x))))\n"
  525.    "      (assign (w) (var_ref r) (var_ref temp))\n"
  526.    "      (return (var_ref r))))\n"
  527.    "\n"
  528.    "))\n"
  529.    ""
  530. ;
  531. static const char builtin_atanh[] =
  532.    "((function atanh\n"
  533.    "   (signature float\n"
  534.    "     (parameters\n"
  535.    "       (declare (in) float x))\n"
  536.    "     ((return (expression float * (constant float (0.5))\n"
  537.    "                (expression float log\n"
  538.    "              (expression float /\n"
  539.    "                    (expression float + (constant float (1)) (var_ref x))\n"
  540.    "                    (expression float - (constant float (1)) (var_ref x))))))))\n"
  541.    "\n"
  542.    "   (signature vec2\n"
  543.    "     (parameters\n"
  544.    "       (declare (in) vec2 x))\n"
  545.    "     ((return (expression vec2 * (constant float (0.5))\n"
  546.    "                (expression vec2 log\n"
  547.    "              (expression vec2 /\n"
  548.    "                    (expression vec2 + (constant float (1)) (var_ref x))\n"
  549.    "                    (expression vec2 - (constant float (1)) (var_ref x))))))))\n"
  550.    "\n"
  551.    "   (signature vec3\n"
  552.    "     (parameters\n"
  553.    "       (declare (in) vec3 x))\n"
  554.    "     ((return (expression vec3 * (constant float (0.5))\n"
  555.    "                (expression vec3 log\n"
  556.    "              (expression vec3 /\n"
  557.    "                    (expression vec3 + (constant float (1)) (var_ref x))\n"
  558.    "                    (expression vec3 - (constant float (1)) (var_ref x))))))))\n"
  559.    "\n"
  560.    "   (signature vec4\n"
  561.    "     (parameters\n"
  562.    "       (declare (in) vec4 x))\n"
  563.    "     ((return (expression vec4 * (constant float (0.5))\n"
  564.    "                (expression vec4 log\n"
  565.    "              (expression vec4 /\n"
  566.    "                    (expression vec4 + (constant float (1)) (var_ref x))\n"
  567.    "                    (expression vec4 - (constant float (1)) (var_ref x))))))))\n"
  568.    "))\n"
  569.    ""
  570. ;
  571. static const char builtin_bitCount[] =
  572.    "((function bitCount\n"
  573.    "   (signature int\n"
  574.    "     (parameters\n"
  575.    "       (declare (in) int value))\n"
  576.    "     ((return (expression int bit_count (var_ref value)))))\n"
  577.    "\n"
  578.    "   (signature ivec2\n"
  579.    "     (parameters\n"
  580.    "       (declare (in) ivec2 value))\n"
  581.    "     ((return (expression ivec2 bit_count (var_ref value)))))\n"
  582.    "\n"
  583.    "   (signature ivec3\n"
  584.    "     (parameters\n"
  585.    "       (declare (in) ivec3 value))\n"
  586.    "     ((return (expression ivec3 bit_count (var_ref value)))))\n"
  587.    "\n"
  588.    "   (signature ivec4\n"
  589.    "     (parameters\n"
  590.    "       (declare (in) ivec4 value))\n"
  591.    "     ((return (expression ivec4 bit_count (var_ref value)))))\n"
  592.    "\n"
  593.    "   (signature int\n"
  594.    "     (parameters\n"
  595.    "       (declare (in) uint value))\n"
  596.    "     ((return (expression int bit_count (var_ref value)))))\n"
  597.    "\n"
  598.    "   (signature ivec2\n"
  599.    "     (parameters\n"
  600.    "       (declare (in) uvec2 value))\n"
  601.    "     ((return (expression ivec2 bit_count (var_ref value)))))\n"
  602.    "\n"
  603.    "   (signature ivec3\n"
  604.    "     (parameters\n"
  605.    "       (declare (in) uvec3 value))\n"
  606.    "     ((return (expression ivec3 bit_count (var_ref value)))))\n"
  607.    "\n"
  608.    "   (signature ivec4\n"
  609.    "     (parameters\n"
  610.    "       (declare (in) uvec4 value))\n"
  611.    "     ((return (expression ivec4 bit_count (var_ref value)))))\n"
  612.    "))\n"
  613.    ""
  614. ;
  615. static const char builtin_bitfieldExtract[] =
  616.    "((function bitfieldExtract\n"
  617.    "   (signature int\n"
  618.    "     (parameters\n"
  619.    "       (declare (in) int value)\n"
  620.    "       (declare (in) int offset)\n"
  621.    "       (declare (in) int bits))\n"
  622.    "     ((return (expression int bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  623.    "\n"
  624.    "   (signature ivec2\n"
  625.    "     (parameters\n"
  626.    "       (declare (in) ivec2 value)\n"
  627.    "       (declare (in) int offset)\n"
  628.    "       (declare (in) int bits))\n"
  629.    "     ((return (expression ivec2 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  630.    "\n"
  631.    "   (signature ivec3\n"
  632.    "     (parameters\n"
  633.    "       (declare (in) ivec3 value)\n"
  634.    "       (declare (in) int offset)\n"
  635.    "       (declare (in) int bits))\n"
  636.    "     ((return (expression ivec3 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  637.    "\n"
  638.    "   (signature ivec4\n"
  639.    "     (parameters\n"
  640.    "       (declare (in) ivec4 value)\n"
  641.    "       (declare (in) int offset)\n"
  642.    "       (declare (in) int bits))\n"
  643.    "     ((return (expression ivec4 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  644.    "\n"
  645.    "   (signature uint\n"
  646.    "     (parameters\n"
  647.    "       (declare (in) uint value)\n"
  648.    "       (declare (in) int offset)\n"
  649.    "       (declare (in) int bits))\n"
  650.    "     ((return (expression uint bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  651.    "\n"
  652.    "   (signature uvec2\n"
  653.    "     (parameters\n"
  654.    "       (declare (in) uvec2 value)\n"
  655.    "       (declare (in) int offset)\n"
  656.    "       (declare (in) int bits))\n"
  657.    "     ((return (expression uvec2 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  658.    "\n"
  659.    "   (signature uvec3\n"
  660.    "     (parameters\n"
  661.    "       (declare (in) uvec3 value)\n"
  662.    "       (declare (in) int offset)\n"
  663.    "       (declare (in) int bits))\n"
  664.    "     ((return (expression uvec3 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  665.    "\n"
  666.    "   (signature uvec4\n"
  667.    "     (parameters\n"
  668.    "       (declare (in) uvec4 value)\n"
  669.    "       (declare (in) int offset)\n"
  670.    "       (declare (in) int bits))\n"
  671.    "     ((return (expression uvec4 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))\n"
  672.    "))\n"
  673.    ""
  674. ;
  675. static const char builtin_bitfieldInsert[] =
  676.    "((function bitfieldInsert\n"
  677.    "   (signature int\n"
  678.    "     (parameters\n"
  679.    "       (declare (in) int base)\n"
  680.    "       (declare (in) int insert)\n"
  681.    "       (declare (in) int offset)\n"
  682.    "       (declare (in) int bits))\n"
  683.    "     ((return (expression int bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  684.    "\n"
  685.    "   (signature ivec2\n"
  686.    "     (parameters\n"
  687.    "       (declare (in) ivec2 base)\n"
  688.    "       (declare (in) ivec2 insert)\n"
  689.    "       (declare (in) int offset)\n"
  690.    "       (declare (in) int bits))\n"
  691.    "     ((return (expression ivec2 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  692.    "\n"
  693.    "   (signature ivec3\n"
  694.    "     (parameters\n"
  695.    "       (declare (in) ivec3 base)\n"
  696.    "       (declare (in) ivec3 insert)\n"
  697.    "       (declare (in) int offset)\n"
  698.    "       (declare (in) int bits))\n"
  699.    "     ((return (expression ivec3 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  700.    "\n"
  701.    "   (signature ivec4\n"
  702.    "     (parameters\n"
  703.    "       (declare (in) ivec4 base)\n"
  704.    "       (declare (in) ivec4 insert)\n"
  705.    "       (declare (in) int offset)\n"
  706.    "       (declare (in) int bits))\n"
  707.    "     ((return (expression ivec4 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  708.    "\n"
  709.    "   (signature uint\n"
  710.    "     (parameters\n"
  711.    "       (declare (in) uint base)\n"
  712.    "       (declare (in) uint insert)\n"
  713.    "       (declare (in) int offset)\n"
  714.    "       (declare (in) int bits))\n"
  715.    "     ((return (expression uint bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  716.    "\n"
  717.    "   (signature uvec2\n"
  718.    "     (parameters\n"
  719.    "       (declare (in) uvec2 base)\n"
  720.    "       (declare (in) uvec2 insert)\n"
  721.    "       (declare (in) int offset)\n"
  722.    "       (declare (in) int bits))\n"
  723.    "     ((return (expression uvec2 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  724.    "\n"
  725.    "   (signature uvec3\n"
  726.    "     (parameters\n"
  727.    "       (declare (in) uvec3 base)\n"
  728.    "       (declare (in) uvec3 insert)\n"
  729.    "       (declare (in) int offset)\n"
  730.    "       (declare (in) int bits))\n"
  731.    "     ((return (expression uvec3 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  732.    "\n"
  733.    "   (signature uvec4\n"
  734.    "     (parameters\n"
  735.    "       (declare (in) uvec4 base)\n"
  736.    "       (declare (in) uvec4 insert)\n"
  737.    "       (declare (in) int offset)\n"
  738.    "       (declare (in) int bits))\n"
  739.    "     ((return (expression uvec4 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))\n"
  740.    "))\n"
  741.    ""
  742. ;
  743. static const char builtin_bitfieldReverse[] =
  744.    "((function bitfieldReverse\n"
  745.    "   (signature int\n"
  746.    "     (parameters\n"
  747.    "       (declare (in) int value))\n"
  748.    "     ((return (expression int bitfield_reverse (var_ref value)))))\n"
  749.    "\n"
  750.    "   (signature ivec2\n"
  751.    "     (parameters\n"
  752.    "       (declare (in) ivec2 value))\n"
  753.    "     ((return (expression ivec2 bitfield_reverse (var_ref value)))))\n"
  754.    "\n"
  755.    "   (signature ivec3\n"
  756.    "     (parameters\n"
  757.    "       (declare (in) ivec3 value))\n"
  758.    "     ((return (expression ivec3 bitfield_reverse (var_ref value)))))\n"
  759.    "\n"
  760.    "   (signature ivec4\n"
  761.    "     (parameters\n"
  762.    "       (declare (in) ivec4 value))\n"
  763.    "     ((return (expression ivec4 bitfield_reverse (var_ref value)))))\n"
  764.    "\n"
  765.    "   (signature uint\n"
  766.    "     (parameters\n"
  767.    "       (declare (in) uint value))\n"
  768.    "     ((return (expression uint bitfield_reverse (var_ref value)))))\n"
  769.    "\n"
  770.    "   (signature uvec2\n"
  771.    "     (parameters\n"
  772.    "       (declare (in) uvec2 value))\n"
  773.    "     ((return (expression uvec2 bitfield_reverse (var_ref value)))))\n"
  774.    "\n"
  775.    "   (signature uvec3\n"
  776.    "     (parameters\n"
  777.    "       (declare (in) uvec3 value))\n"
  778.    "     ((return (expression uvec3 bitfield_reverse (var_ref value)))))\n"
  779.    "\n"
  780.    "   (signature uvec4\n"
  781.    "     (parameters\n"
  782.    "       (declare (in) uvec4 value))\n"
  783.    "     ((return (expression uvec4 bitfield_reverse (var_ref value)))))\n"
  784.    "))\n"
  785.    ""
  786. ;
  787. static const char builtin_ceil[] =
  788.    "((function ceil\n"
  789.    "   (signature float\n"
  790.    "     (parameters\n"
  791.    "       (declare (in) float arg0))\n"
  792.    "     ((return (expression float ceil (var_ref arg0)))))\n"
  793.    "\n"
  794.    "   (signature vec2\n"
  795.    "     (parameters\n"
  796.    "       (declare (in) vec2 arg0))\n"
  797.    "     ((return (expression vec2 ceil (var_ref arg0)))))\n"
  798.    "\n"
  799.    "   (signature vec3\n"
  800.    "     (parameters\n"
  801.    "       (declare (in) vec3 arg0))\n"
  802.    "     ((return (expression vec3 ceil (var_ref arg0)))))\n"
  803.    "\n"
  804.    "   (signature vec4\n"
  805.    "     (parameters\n"
  806.    "       (declare (in) vec4 arg0))\n"
  807.    "     ((return (expression vec4 ceil (var_ref arg0)))))\n"
  808.    "))\n"
  809.    ""
  810. ;
  811. static const char builtin_clamp[] =
  812.    "((function clamp\n"
  813.    "   (signature float\n"
  814.    "     (parameters\n"
  815.    "       (declare (in) float arg0)\n"
  816.    "       (declare (in) float arg1)\n"
  817.    "       (declare (in) float arg2))\n"
  818.    "     ((return (expression float max (expression float min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  819.    "\n"
  820.    "   (signature vec2\n"
  821.    "     (parameters\n"
  822.    "       (declare (in) vec2 arg0)\n"
  823.    "       (declare (in) vec2 arg1)\n"
  824.    "       (declare (in) vec2 arg2))\n"
  825.    "     ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  826.    "\n"
  827.    "   (signature vec3\n"
  828.    "     (parameters\n"
  829.    "       (declare (in) vec3 arg0)\n"
  830.    "       (declare (in) vec3 arg1)\n"
  831.    "       (declare (in) vec3 arg2))\n"
  832.    "     ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  833.    "\n"
  834.    "   (signature vec4\n"
  835.    "     (parameters\n"
  836.    "       (declare (in) vec4 arg0)\n"
  837.    "       (declare (in) vec4 arg1)\n"
  838.    "       (declare (in) vec4 arg2))\n"
  839.    "     ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  840.    "\n"
  841.    "   (signature vec2\n"
  842.    "     (parameters\n"
  843.    "       (declare (in) vec2  arg0)\n"
  844.    "       (declare (in) float arg1)\n"
  845.    "       (declare (in) float arg2))\n"
  846.    "     ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  847.    "\n"
  848.    "   (signature vec3\n"
  849.    "     (parameters\n"
  850.    "       (declare (in) vec3  arg0)\n"
  851.    "       (declare (in) float arg1)\n"
  852.    "       (declare (in) float arg2))\n"
  853.    "     ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  854.    "\n"
  855.    "   (signature vec4\n"
  856.    "     (parameters\n"
  857.    "       (declare (in) vec4  arg0)\n"
  858.    "       (declare (in) float arg1)\n"
  859.    "       (declare (in) float arg2))\n"
  860.    "     ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  861.    "\n"
  862.    "   (signature int\n"
  863.    "     (parameters\n"
  864.    "       (declare (in) int arg0)\n"
  865.    "       (declare (in) int arg1)\n"
  866.    "       (declare (in) int arg2))\n"
  867.    "     ((return (expression int max (expression int min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  868.    "\n"
  869.    "   (signature ivec2\n"
  870.    "     (parameters\n"
  871.    "       (declare (in) ivec2 arg0)\n"
  872.    "       (declare (in) ivec2 arg1)\n"
  873.    "       (declare (in) ivec2 arg2))\n"
  874.    "     ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  875.    "\n"
  876.    "   (signature ivec3\n"
  877.    "     (parameters\n"
  878.    "       (declare (in) ivec3 arg0)\n"
  879.    "       (declare (in) ivec3 arg1)\n"
  880.    "       (declare (in) ivec3 arg2))\n"
  881.    "     ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  882.    "\n"
  883.    "   (signature ivec4\n"
  884.    "     (parameters\n"
  885.    "       (declare (in) ivec4 arg0)\n"
  886.    "       (declare (in) ivec4 arg1)\n"
  887.    "       (declare (in) ivec4 arg2))\n"
  888.    "     ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  889.    "\n"
  890.    "   (signature ivec2\n"
  891.    "     (parameters\n"
  892.    "       (declare (in) ivec2 arg0)\n"
  893.    "       (declare (in) int arg1)\n"
  894.    "       (declare (in) int arg2))\n"
  895.    "     ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  896.    "\n"
  897.    "   (signature ivec3\n"
  898.    "     (parameters\n"
  899.    "       (declare (in) ivec3 arg0)\n"
  900.    "       (declare (in) int arg1)\n"
  901.    "       (declare (in) int arg2))\n"
  902.    "     ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  903.    "\n"
  904.    "   (signature ivec4\n"
  905.    "     (parameters\n"
  906.    "       (declare (in) ivec4 arg0)\n"
  907.    "       (declare (in) int arg1)\n"
  908.    "       (declare (in) int arg2))\n"
  909.    "     ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  910.    "\n"
  911.    "   (signature uint\n"
  912.    "     (parameters\n"
  913.    "       (declare (in) uint arg0)\n"
  914.    "       (declare (in) uint arg1)\n"
  915.    "       (declare (in) uint arg2))\n"
  916.    "     ((return (expression uint max (expression uint min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  917.    "\n"
  918.    "   (signature uvec2\n"
  919.    "     (parameters\n"
  920.    "       (declare (in) uvec2 arg0)\n"
  921.    "       (declare (in) uvec2 arg1)\n"
  922.    "       (declare (in) uvec2 arg2))\n"
  923.    "     ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  924.    "\n"
  925.    "   (signature uvec3\n"
  926.    "     (parameters\n"
  927.    "       (declare (in) uvec3 arg0)\n"
  928.    "       (declare (in) uvec3 arg1)\n"
  929.    "       (declare (in) uvec3 arg2))\n"
  930.    "     ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  931.    "\n"
  932.    "   (signature uvec4\n"
  933.    "     (parameters\n"
  934.    "       (declare (in) uvec4 arg0)\n"
  935.    "       (declare (in) uvec4 arg1)\n"
  936.    "       (declare (in) uvec4 arg2))\n"
  937.    "     ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  938.    "\n"
  939.    "   (signature uvec2\n"
  940.    "     (parameters\n"
  941.    "       (declare (in) uvec2 arg0)\n"
  942.    "       (declare (in) uint arg1)\n"
  943.    "       (declare (in) uint arg2))\n"
  944.    "     ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  945.    "\n"
  946.    "   (signature uvec3\n"
  947.    "     (parameters\n"
  948.    "       (declare (in) uvec3 arg0)\n"
  949.    "       (declare (in) uint arg1)\n"
  950.    "       (declare (in) uint arg2))\n"
  951.    "     ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  952.    "\n"
  953.    "   (signature uvec4\n"
  954.    "     (parameters\n"
  955.    "       (declare (in) uvec4 arg0)\n"
  956.    "       (declare (in) uint arg1)\n"
  957.    "       (declare (in) uint arg2))\n"
  958.    "     ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n"
  959.    "))\n"
  960.    ""
  961. ;
  962. static const char builtin_cos[] =
  963.    "((function cos\n"
  964.    "   (signature float\n"
  965.    "     (parameters\n"
  966.    "       (declare (in) float angle))\n"
  967.    "     ((return (expression float cos (var_ref angle)))))\n"
  968.    "\n"
  969.    "   (signature vec2\n"
  970.    "     (parameters\n"
  971.    "       (declare (in) vec2 angle))\n"
  972.    "     ((return (expression vec2 cos (var_ref angle)))))\n"
  973.    "\n"
  974.    "   (signature vec3\n"
  975.    "     (parameters\n"
  976.    "       (declare (in) vec3 angle))\n"
  977.    "     ((return (expression vec3 cos (var_ref angle)))))\n"
  978.    "\n"
  979.    "   (signature vec4\n"
  980.    "     (parameters\n"
  981.    "       (declare (in) vec4 angle))\n"
  982.    "     ((return (expression vec4 cos (var_ref angle)))))\n"
  983.    "))\n"
  984.    ""
  985. ;
  986. static const char builtin_cosh[] =
  987.    "((function cosh\n"
  988.    "   (signature float\n"
  989.    "     (parameters\n"
  990.    "       (declare (in) float x))\n"
  991.    "     ((return (expression float * (constant float (0.5))\n"
  992.    "                (expression float +\n"
  993.    "              (expression float exp (var_ref x))\n"
  994.    "              (expression float exp (expression float neg (var_ref x))))))))\n"
  995.    "   (signature vec2\n"
  996.    "     (parameters\n"
  997.    "       (declare (in) vec2 x))\n"
  998.    "     ((return (expression vec2 * (constant float (0.5))\n"
  999.    "                (expression vec2 +\n"
  1000.    "              (expression vec2 exp (var_ref x))\n"
  1001.    "              (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
  1002.    "   (signature vec3\n"
  1003.    "     (parameters\n"
  1004.    "       (declare (in) vec3 x))\n"
  1005.    "     ((return (expression vec3 * (constant float (0.5))\n"
  1006.    "                (expression vec3 +\n"
  1007.    "              (expression vec3 exp (var_ref x))\n"
  1008.    "              (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
  1009.    "   (signature vec4\n"
  1010.    "     (parameters\n"
  1011.    "       (declare (in) vec4 x))\n"
  1012.    "     ((return (expression vec4 * (constant float (0.5))\n"
  1013.    "                (expression vec4 +\n"
  1014.    "              (expression vec4 exp (var_ref x))\n"
  1015.    "              (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
  1016.    "))\n"
  1017.    ""
  1018. ;
  1019. static const char builtin_cross[] =
  1020.    "((function cross\n"
  1021.    "   (signature vec3\n"
  1022.    "     (parameters\n"
  1023.    "       (declare (in) vec3 a)\n"
  1024.    "       (declare (in) vec3 b))\n"
  1025.    "     ((return (expression vec3 -\n"
  1026.    "        (expression vec3 * (swiz yzx (var_ref a)) (swiz zxy (var_ref b)))\n"
  1027.    "        (expression vec3 * (swiz zxy (var_ref a)) (swiz yzx (var_ref b)))))))\n"
  1028.    "))\n"
  1029.    ""
  1030. ;
  1031. static const char builtin_dFdx[] =
  1032.    "((function dFdx\n"
  1033.    "   (signature float\n"
  1034.    "     (parameters\n"
  1035.    "       (declare (in) float p))\n"
  1036.    "     ((return (expression float dFdx (var_ref p)))))\n"
  1037.    "\n"
  1038.    "   (signature vec2\n"
  1039.    "     (parameters\n"
  1040.    "       (declare (in) vec2 p))\n"
  1041.    "     ((return (expression vec2 dFdx (var_ref p)))))\n"
  1042.    "\n"
  1043.    "   (signature vec3\n"
  1044.    "     (parameters\n"
  1045.    "       (declare (in) vec3 p))\n"
  1046.    "     ((return (expression vec3 dFdx (var_ref p)))))\n"
  1047.    "\n"
  1048.    "   (signature vec4\n"
  1049.    "     (parameters\n"
  1050.    "       (declare (in) vec4 p))\n"
  1051.    "     ((return (expression vec4 dFdx (var_ref p)))))\n"
  1052.    "))\n"
  1053.    ""
  1054. ;
  1055. static const char builtin_dFdy[] =
  1056.    "((function dFdy\n"
  1057.    "   (signature float\n"
  1058.    "     (parameters\n"
  1059.    "       (declare (in) float p))\n"
  1060.    "     ((return (expression float dFdy (var_ref p)))))\n"
  1061.    "\n"
  1062.    "   (signature vec2\n"
  1063.    "     (parameters\n"
  1064.    "       (declare (in) vec2 p))\n"
  1065.    "     ((return (expression vec2 dFdy (var_ref p)))))\n"
  1066.    "\n"
  1067.    "   (signature vec3\n"
  1068.    "     (parameters\n"
  1069.    "       (declare (in) vec3 p))\n"
  1070.    "     ((return (expression vec3 dFdy (var_ref p)))))\n"
  1071.    "\n"
  1072.    "   (signature vec4\n"
  1073.    "     (parameters\n"
  1074.    "       (declare (in) vec4 p))\n"
  1075.    "     ((return (expression vec4 dFdy (var_ref p)))))\n"
  1076.    "))\n"
  1077.    ""
  1078. ;
  1079. static const char builtin_degrees[] =
  1080.    "((function degrees\n"
  1081.    "   (signature float\n"
  1082.    "     (parameters\n"
  1083.    "       (declare (in) float arg0))\n"
  1084.    "     ((return (expression float * (var_ref arg0) (constant float (57.295780))))))\n"
  1085.    "\n"
  1086.    "   (signature vec2\n"
  1087.    "     (parameters\n"
  1088.    "       (declare (in) vec2 arg0))\n"
  1089.    "     ((return (expression vec2 * (var_ref arg0) (constant float (57.295780))))))\n"
  1090.    "\n"
  1091.    "   (signature vec3\n"
  1092.    "     (parameters\n"
  1093.    "       (declare (in) vec3 arg0))\n"
  1094.    "     ((return (expression vec3 * (var_ref arg0) (constant float (57.295780))))))\n"
  1095.    "\n"
  1096.    "   (signature vec4\n"
  1097.    "     (parameters\n"
  1098.    "       (declare (in) vec4 arg0))\n"
  1099.    "     ((return (expression vec4 * (var_ref arg0) (constant float (57.295780))))))\n"
  1100.    "))\n"
  1101.    ""
  1102. ;
  1103. static const char builtin_determinant[] =
  1104.    "(\n"
  1105.    "(function dot\n"
  1106.    "  (signature float\n"
  1107.    "    (parameters\n"
  1108.    "      (declare (in) vec4 parameter@1)\n"
  1109.    "      (declare (in) vec4 parameter@2))\n"
  1110.    "    ()))\n"
  1111.    "(function determinant\n"
  1112.    "  (signature float\n"
  1113.    "    (parameters\n"
  1114.    "      (declare (in) mat2 m))\n"
  1115.    "    (\n"
  1116.    "      (return (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))))))))\n"
  1117.    "  (signature float\n"
  1118.    "    (parameters\n"
  1119.    "      (declare (in) mat3 m))\n"
  1120.    "    (\n"
  1121.    "      (return (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))))))))))\n"
  1122.    "  (signature float\n"
  1123.    "    (parameters\n"
  1124.    "      (declare (in) mat4 m))\n"
  1125.    "    (\n"
  1126.    "      (declare () vec4 adj_0)\n"
  1127.    "      (declare () float SubFactor18)\n"
  1128.    "      (declare () float SubFactor17)\n"
  1129.    "      (declare () float SubFactor16)\n"
  1130.    "      (declare () float SubFactor15)\n"
  1131.    "      (declare () float SubFactor14)\n"
  1132.    "      (declare () float SubFactor13)\n"
  1133.    "      (declare () float SubFactor12)\n"
  1134.    "      (declare () float SubFactor11)\n"
  1135.    "      (declare () float SubFactor10)\n"
  1136.    "      (declare () float SubFactor09)\n"
  1137.    "      (declare () float SubFactor08)\n"
  1138.    "      (declare () float SubFactor07)\n"
  1139.    "      (declare () float SubFactor06)\n"
  1140.    "      (declare () float SubFactor05)\n"
  1141.    "      (declare () float SubFactor04)\n"
  1142.    "      (declare () float SubFactor03)\n"
  1143.    "      (declare () float SubFactor02)\n"
  1144.    "      (declare () float SubFactor01)\n"
  1145.    "      (declare () float SubFactor00)\n"
  1146.    "      (declare (temporary) float assignment_tmp)\n"
  1147.    "      (assign  (x) (var_ref assignment_tmp)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1148.    "      (assign  (x) (var_ref SubFactor00)  (var_ref assignment_tmp)) \n"
  1149.    "      (declare (temporary) float assignment_tmp@2)\n"
  1150.    "      (assign  (x) (var_ref assignment_tmp@2)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1151.    "      (assign  (x) (var_ref SubFactor01)  (var_ref assignment_tmp@2)) \n"
  1152.    "      (declare (temporary) float assignment_tmp@3)\n"
  1153.    "      (assign  (x) (var_ref assignment_tmp@3)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n"
  1154.    "      (assign  (x) (var_ref SubFactor02)  (var_ref assignment_tmp@3)) \n"
  1155.    "      (declare (temporary) float assignment_tmp@4)\n"
  1156.    "      (assign  (x) (var_ref assignment_tmp@4)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1157.    "      (assign  (x) (var_ref SubFactor03)  (var_ref assignment_tmp@4)) \n"
  1158.    "      (declare (temporary) float assignment_tmp@5)\n"
  1159.    "      (assign  (x) (var_ref assignment_tmp@5)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n"
  1160.    "      (assign  (x) (var_ref SubFactor04)  (var_ref assignment_tmp@5)) \n"
  1161.    "      (declare (temporary) float assignment_tmp@6)\n"
  1162.    "      (assign  (x) (var_ref assignment_tmp@6)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) \n"
  1163.    "      (assign  (x) (var_ref SubFactor05)  (var_ref assignment_tmp@6)) \n"
  1164.    "      (declare (temporary) float assignment_tmp@7)\n"
  1165.    "      (assign  (x) (var_ref assignment_tmp@7)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1166.    "      (assign  (x) (var_ref SubFactor06)  (var_ref assignment_tmp@7)) \n"
  1167.    "      (declare (temporary) float assignment_tmp@8)\n"
  1168.    "      (assign  (x) (var_ref assignment_tmp@8)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1169.    "      (assign  (x) (var_ref SubFactor07)  (var_ref assignment_tmp@8)) \n"
  1170.    "      (declare (temporary) float assignment_tmp@9)\n"
  1171.    "      (assign  (x) (var_ref assignment_tmp@9)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1172.    "      (assign  (x) (var_ref SubFactor08)  (var_ref assignment_tmp@9)) \n"
  1173.    "      (declare (temporary) float assignment_tmp@10)\n"
  1174.    "      (assign  (x) (var_ref assignment_tmp@10)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1175.    "      (assign  (x) (var_ref SubFactor09)  (var_ref assignment_tmp@10)) \n"
  1176.    "      (declare (temporary) float assignment_tmp@11)\n"
  1177.    "      (assign  (x) (var_ref assignment_tmp@11)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1178.    "      (assign  (x) (var_ref SubFactor10)  (var_ref assignment_tmp@11)) \n"
  1179.    "      (declare (temporary) float assignment_tmp@12)\n"
  1180.    "      (assign  (x) (var_ref assignment_tmp@12)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1181.    "      (assign  (x) (var_ref SubFactor11)  (var_ref assignment_tmp@12)) \n"
  1182.    "      (declare (temporary) float assignment_tmp@13)\n"
  1183.    "      (assign  (x) (var_ref assignment_tmp@13)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n"
  1184.    "      (assign  (x) (var_ref SubFactor12)  (var_ref assignment_tmp@13)) \n"
  1185.    "      (declare (temporary) float assignment_tmp@14)\n"
  1186.    "      (assign  (x) (var_ref assignment_tmp@14)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1187.    "      (assign  (x) (var_ref SubFactor13)  (var_ref assignment_tmp@14)) \n"
  1188.    "      (declare (temporary) float assignment_tmp@15)\n"
  1189.    "      (assign  (x) (var_ref assignment_tmp@15)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1190.    "      (assign  (x) (var_ref SubFactor14)  (var_ref assignment_tmp@15)) \n"
  1191.    "      (declare (temporary) float assignment_tmp@16)\n"
  1192.    "      (assign  (x) (var_ref assignment_tmp@16)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1193.    "      (assign  (x) (var_ref SubFactor15)  (var_ref assignment_tmp@16)) \n"
  1194.    "      (declare (temporary) float assignment_tmp@17)\n"
  1195.    "      (assign  (x) (var_ref assignment_tmp@17)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1196.    "      (assign  (x) (var_ref SubFactor16)  (var_ref assignment_tmp@17)) \n"
  1197.    "      (declare (temporary) float assignment_tmp@18)\n"
  1198.    "      (assign  (x) (var_ref assignment_tmp@18)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1199.    "      (assign  (x) (var_ref SubFactor17)  (var_ref assignment_tmp@18)) \n"
  1200.    "      (declare (temporary) float assignment_tmp@19)\n"
  1201.    "      (assign  (x) (var_ref assignment_tmp@19)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n"
  1202.    "      (assign  (x) (var_ref SubFactor18)  (var_ref assignment_tmp@19)) \n"
  1203.    "      (declare (temporary) vec4 assignment_tmp@20)\n"
  1204.    "      (assign  (xyzw) (var_ref assignment_tmp@20)  (expression vec4 vector_insert (var_ref adj_0) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor01))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor02))) (constant int (0)))) \n"
  1205.    "      (assign  (xyzw) (var_ref adj_0)  (var_ref assignment_tmp@20)) \n"
  1206.    "      (declare (temporary) vec4 assignment_tmp@21)\n"
  1207.    "      (assign  (xyzw) (var_ref assignment_tmp@21)  (expression vec4 vector_insert (var_ref adj_0) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor04)))) (constant int (1)))) \n"
  1208.    "      (assign  (xyzw) (var_ref adj_0)  (var_ref assignment_tmp@21)) \n"
  1209.    "      (declare (temporary) vec4 assignment_tmp@22)\n"
  1210.    "      (assign  (xyzw) (var_ref assignment_tmp@22)  (expression vec4 vector_insert (var_ref adj_0) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor01)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor05))) (constant int (2)))) \n"
  1211.    "      (assign  (xyzw) (var_ref adj_0)  (var_ref assignment_tmp@22)) \n"
  1212.    "      (declare (temporary) vec4 assignment_tmp@23)\n"
  1213.    "      (assign  (xyzw) (var_ref assignment_tmp@23)  (expression vec4 vector_insert (var_ref adj_0) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor02)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor04))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor05)))) (constant int (3)))) \n"
  1214.    "      (assign  (xyzw) (var_ref adj_0)  (var_ref assignment_tmp@23)) \n"
  1215.    "      (declare (temporary) float dot_retval)\n"
  1216.    "      (call dot (var_ref dot_retval)  ((array_ref (var_ref m) (constant int (0))) (var_ref adj_0)))\n"
  1217.    "      (return (var_ref dot_retval))))))"
  1218. ;
  1219. static const char builtin_distance[] =
  1220.    "((function distance\n"
  1221.    "   (signature float\n"
  1222.    "     (parameters\n"
  1223.    "       (declare (in) float p0)\n"
  1224.    "       (declare (in) float p1))\n"
  1225.    "     ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))\n"
  1226.    "\n"
  1227.    "   (signature float\n"
  1228.    "     (parameters\n"
  1229.    "       (declare (in) vec2 p0)\n"
  1230.    "       (declare (in) vec2 p1))\n"
  1231.    "     ((declare () vec2 p)\n"
  1232.    "      (assign (xy) (var_ref p) (expression vec2 - (var_ref p0) (var_ref p1)))\n"
  1233.    "      (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
  1234.    "\n"
  1235.    "   (signature float\n"
  1236.    "     (parameters\n"
  1237.    "       (declare (in) vec3 p0)\n"
  1238.    "       (declare (in) vec3 p1))\n"
  1239.    "     ((declare () vec3 p)\n"
  1240.    "      (assign (xyz) (var_ref p) (expression vec3 - (var_ref p0) (var_ref p1)))\n"
  1241.    "      (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
  1242.    "\n"
  1243.    "   (signature float\n"
  1244.    "     (parameters\n"
  1245.    "       (declare (in) vec4 p0)\n"
  1246.    "       (declare (in) vec4 p1))\n"
  1247.    "     ((declare () vec4 p)\n"
  1248.    "      (assign (xyzw) (var_ref p) (expression vec4 - (var_ref p0) (var_ref p1)))\n"
  1249.    "      (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n"
  1250.    "))\n"
  1251.    ""
  1252. ;
  1253. static const char builtin_dot[] =
  1254.    "((function dot\n"
  1255.    "   (signature float\n"
  1256.    "     (parameters\n"
  1257.    "       (declare (in) float arg0)\n"
  1258.    "       (declare (in) float arg1))\n"
  1259.    "     ((return (expression float * (var_ref arg0) (var_ref arg1)))))\n"
  1260.    "\n"
  1261.    "   (signature float\n"
  1262.    "     (parameters\n"
  1263.    "       (declare (in) vec2 arg0)\n"
  1264.    "       (declare (in) vec2 arg1))\n"
  1265.    "     ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
  1266.    "\n"
  1267.    "   (signature float\n"
  1268.    "     (parameters\n"
  1269.    "       (declare (in) vec3 arg0)\n"
  1270.    "       (declare (in) vec3 arg1))\n"
  1271.    "     ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
  1272.    "\n"
  1273.    "   (signature float\n"
  1274.    "     (parameters\n"
  1275.    "       (declare (in) vec4 arg0)\n"
  1276.    "       (declare (in) vec4 arg1))\n"
  1277.    "     ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n"
  1278.    "))\n"
  1279.    ""
  1280. ;
  1281. static const char builtin_equal[] =
  1282.    "((function equal\n"
  1283.    "   (signature bvec2\n"
  1284.    "     (parameters\n"
  1285.    "       (declare (in) vec2 arg0)\n"
  1286.    "       (declare (in) vec2 arg1))\n"
  1287.    "     ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
  1288.    "\n"
  1289.    "   (signature bvec3\n"
  1290.    "     (parameters\n"
  1291.    "       (declare (in) vec3 arg0)\n"
  1292.    "       (declare (in) vec3 arg1))\n"
  1293.    "     ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
  1294.    "\n"
  1295.    "   (signature bvec4\n"
  1296.    "     (parameters\n"
  1297.    "       (declare (in) vec4 arg0)\n"
  1298.    "       (declare (in) vec4 arg1))\n"
  1299.    "     ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
  1300.    "\n"
  1301.    "   (signature bvec2\n"
  1302.    "     (parameters\n"
  1303.    "       (declare (in) bvec2 arg0)\n"
  1304.    "       (declare (in) bvec2 arg1))\n"
  1305.    "     ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
  1306.    "\n"
  1307.    "   (signature bvec3\n"
  1308.    "     (parameters\n"
  1309.    "       (declare (in) bvec3 arg0)\n"
  1310.    "       (declare (in) bvec3 arg1))\n"
  1311.    "     ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
  1312.    "\n"
  1313.    "   (signature bvec4\n"
  1314.    "     (parameters\n"
  1315.    "       (declare (in) bvec4 arg0)\n"
  1316.    "       (declare (in) bvec4 arg1))\n"
  1317.    "     ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
  1318.    "\n"
  1319.    "   (signature bvec2\n"
  1320.    "     (parameters\n"
  1321.    "       (declare (in) ivec2 arg0)\n"
  1322.    "       (declare (in) ivec2 arg1))\n"
  1323.    "     ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
  1324.    "\n"
  1325.    "   (signature bvec3\n"
  1326.    "     (parameters\n"
  1327.    "       (declare (in) ivec3 arg0)\n"
  1328.    "       (declare (in) ivec3 arg1))\n"
  1329.    "     ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
  1330.    "\n"
  1331.    "   (signature bvec4\n"
  1332.    "     (parameters\n"
  1333.    "       (declare (in) ivec4 arg0)\n"
  1334.    "       (declare (in) ivec4 arg1))\n"
  1335.    "     ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
  1336.    "\n"
  1337.    "   (signature bvec2\n"
  1338.    "     (parameters\n"
  1339.    "       (declare (in) uvec2 arg0)\n"
  1340.    "       (declare (in) uvec2 arg1))\n"
  1341.    "     ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n"
  1342.    "\n"
  1343.    "   (signature bvec3\n"
  1344.    "     (parameters\n"
  1345.    "       (declare (in) uvec3 arg0)\n"
  1346.    "       (declare (in) uvec3 arg1))\n"
  1347.    "     ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n"
  1348.    "\n"
  1349.    "   (signature bvec4\n"
  1350.    "     (parameters\n"
  1351.    "       (declare (in) uvec4 arg0)\n"
  1352.    "       (declare (in) uvec4 arg1))\n"
  1353.    "     ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n"
  1354.    "))\n"
  1355.    ""
  1356. ;
  1357. static const char builtin_exp[] =
  1358.    "((function exp\n"
  1359.    "   (signature float\n"
  1360.    "     (parameters\n"
  1361.    "       (declare (in) float arg0))\n"
  1362.    "     ((return (expression float exp (var_ref arg0)))))\n"
  1363.    "\n"
  1364.    "   (signature vec2\n"
  1365.    "     (parameters\n"
  1366.    "       (declare (in) vec2 arg0))\n"
  1367.    "     ((return (expression vec2 exp (var_ref arg0)))))\n"
  1368.    "\n"
  1369.    "   (signature vec3\n"
  1370.    "     (parameters\n"
  1371.    "       (declare (in) vec3 arg0))\n"
  1372.    "     ((return (expression vec3 exp (var_ref arg0)))))\n"
  1373.    "\n"
  1374.    "   (signature vec4\n"
  1375.    "     (parameters\n"
  1376.    "       (declare (in) vec4 arg0))\n"
  1377.    "     ((return (expression vec4 exp (var_ref arg0)))))\n"
  1378.    "))\n"
  1379.    ""
  1380. ;
  1381. static const char builtin_exp2[] =
  1382.    "((function exp2\n"
  1383.    "   (signature float\n"
  1384.    "     (parameters\n"
  1385.    "       (declare (in) float arg0))\n"
  1386.    "     ((return (expression float exp2 (var_ref arg0)))))\n"
  1387.    "\n"
  1388.    "   (signature vec2\n"
  1389.    "     (parameters\n"
  1390.    "       (declare (in) vec2 arg0))\n"
  1391.    "     ((return (expression vec2 exp2 (var_ref arg0)))))\n"
  1392.    "\n"
  1393.    "   (signature vec3\n"
  1394.    "     (parameters\n"
  1395.    "       (declare (in) vec3 arg0))\n"
  1396.    "     ((return (expression vec3 exp2 (var_ref arg0)))))\n"
  1397.    "\n"
  1398.    "   (signature vec4\n"
  1399.    "     (parameters\n"
  1400.    "       (declare (in) vec4 arg0))\n"
  1401.    "     ((return (expression vec4 exp2 (var_ref arg0)))))\n"
  1402.    "))\n"
  1403.    ""
  1404. ;
  1405. static const char builtin_faceforward[] =
  1406.    "((function faceforward\n"
  1407.    "   (signature float\n"
  1408.    "     (parameters\n"
  1409.    "       (declare (in) float N)\n"
  1410.    "       (declare (in) float I)\n"
  1411.    "       (declare (in) float Nref))\n"
  1412.    "     ((if (expression bool < (expression float * (var_ref Nref) (var_ref I)) (constant float (0)))\n"
  1413.    "          ((return (var_ref N)))\n"
  1414.    "      ((return (expression float neg (var_ref N)))))))\n"
  1415.    "\n"
  1416.    "   (signature vec2\n"
  1417.    "     (parameters\n"
  1418.    "       (declare (in) vec2 N)\n"
  1419.    "       (declare (in) vec2 I)\n"
  1420.    "       (declare (in) vec2 Nref))\n"
  1421.    "     ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
  1422.    "          ((return (var_ref N)))\n"
  1423.    "      ((return (expression vec2 neg (var_ref N)))))))\n"
  1424.    "\n"
  1425.    "   (signature vec3\n"
  1426.    "     (parameters\n"
  1427.    "       (declare (in) vec3 N)\n"
  1428.    "       (declare (in) vec3 I)\n"
  1429.    "       (declare (in) vec3 Nref))\n"
  1430.    "     ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
  1431.    "          ((return (var_ref N)))\n"
  1432.    "      ((return (expression vec3 neg (var_ref N)))))))\n"
  1433.    "\n"
  1434.    "   (signature vec4\n"
  1435.    "     (parameters\n"
  1436.    "       (declare (in) vec4 N)\n"
  1437.    "       (declare (in) vec4 I)\n"
  1438.    "       (declare (in) vec4 Nref))\n"
  1439.    "     ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n"
  1440.    "          ((return (var_ref N)))\n"
  1441.    "      ((return (expression vec4 neg (var_ref N)))))))\n"
  1442.    "))\n"
  1443.    ""
  1444. ;
  1445. static const char builtin_findLSB[] =
  1446.    "((function findLSB\n"
  1447.    "   (signature int\n"
  1448.    "     (parameters\n"
  1449.    "       (declare (in) int value))\n"
  1450.    "     ((return (expression int find_lsb (var_ref value)))))\n"
  1451.    "\n"
  1452.    "   (signature ivec2\n"
  1453.    "     (parameters\n"
  1454.    "       (declare (in) ivec2 value))\n"
  1455.    "     ((return (expression ivec2 find_lsb (var_ref value)))))\n"
  1456.    "\n"
  1457.    "   (signature ivec3\n"
  1458.    "     (parameters\n"
  1459.    "       (declare (in) ivec3 value))\n"
  1460.    "     ((return (expression ivec3 find_lsb (var_ref value)))))\n"
  1461.    "\n"
  1462.    "   (signature ivec4\n"
  1463.    "     (parameters\n"
  1464.    "       (declare (in) ivec4 value))\n"
  1465.    "     ((return (expression ivec4 find_lsb (var_ref value)))))\n"
  1466.    "\n"
  1467.    "   (signature int\n"
  1468.    "     (parameters\n"
  1469.    "       (declare (in) uint value))\n"
  1470.    "     ((return (expression int find_lsb (var_ref value)))))\n"
  1471.    "\n"
  1472.    "   (signature ivec2\n"
  1473.    "     (parameters\n"
  1474.    "       (declare (in) uvec2 value))\n"
  1475.    "     ((return (expression ivec2 find_lsb (var_ref value)))))\n"
  1476.    "\n"
  1477.    "   (signature ivec3\n"
  1478.    "     (parameters\n"
  1479.    "       (declare (in) uvec3 value))\n"
  1480.    "     ((return (expression ivec3 find_lsb (var_ref value)))))\n"
  1481.    "\n"
  1482.    "   (signature ivec4\n"
  1483.    "     (parameters\n"
  1484.    "       (declare (in) uvec4 value))\n"
  1485.    "     ((return (expression ivec4 find_lsb (var_ref value)))))\n"
  1486.    "))\n"
  1487.    ""
  1488. ;
  1489. static const char builtin_findMSB[] =
  1490.    "((function findMSB\n"
  1491.    "   (signature int\n"
  1492.    "     (parameters\n"
  1493.    "       (declare (in) int value))\n"
  1494.    "     ((return (expression int find_msb (var_ref value)))))\n"
  1495.    "\n"
  1496.    "   (signature ivec2\n"
  1497.    "     (parameters\n"
  1498.    "       (declare (in) ivec2 value))\n"
  1499.    "     ((return (expression ivec2 find_msb (var_ref value)))))\n"
  1500.    "\n"
  1501.    "   (signature ivec3\n"
  1502.    "     (parameters\n"
  1503.    "       (declare (in) ivec3 value))\n"
  1504.    "     ((return (expression ivec3 find_msb (var_ref value)))))\n"
  1505.    "\n"
  1506.    "   (signature ivec4\n"
  1507.    "     (parameters\n"
  1508.    "       (declare (in) ivec4 value))\n"
  1509.    "     ((return (expression ivec4 find_msb (var_ref value)))))\n"
  1510.    "\n"
  1511.    "   (signature int\n"
  1512.    "     (parameters\n"
  1513.    "       (declare (in) uint value))\n"
  1514.    "     ((return (expression int find_msb (var_ref value)))))\n"
  1515.    "\n"
  1516.    "   (signature ivec2\n"
  1517.    "     (parameters\n"
  1518.    "       (declare (in) uvec2 value))\n"
  1519.    "     ((return (expression ivec2 find_msb (var_ref value)))))\n"
  1520.    "\n"
  1521.    "   (signature ivec3\n"
  1522.    "     (parameters\n"
  1523.    "       (declare (in) uvec3 value))\n"
  1524.    "     ((return (expression ivec3 find_msb (var_ref value)))))\n"
  1525.    "\n"
  1526.    "   (signature ivec4\n"
  1527.    "     (parameters\n"
  1528.    "       (declare (in) uvec4 value))\n"
  1529.    "     ((return (expression ivec4 find_msb (var_ref value)))))\n"
  1530.    "))\n"
  1531.    ""
  1532. ;
  1533. static const char builtin_floatBitsToInt[] =
  1534.    "((function floatBitsToInt\n"
  1535.    "   (signature int\n"
  1536.    "     (parameters\n"
  1537.    "       (declare (in) float arg))\n"
  1538.    "     ((return (expression int bitcast_f2i (var_ref arg)))))\n"
  1539.    "\n"
  1540.    "   (signature ivec2\n"
  1541.    "     (parameters\n"
  1542.    "       (declare (in) vec2 arg))\n"
  1543.    "     ((return (expression ivec2 bitcast_f2i (var_ref arg)))))\n"
  1544.    "\n"
  1545.    "   (signature ivec3\n"
  1546.    "     (parameters\n"
  1547.    "       (declare (in) vec3 arg))\n"
  1548.    "     ((return (expression ivec3 bitcast_f2i (var_ref arg)))))\n"
  1549.    "\n"
  1550.    "   (signature ivec4\n"
  1551.    "     (parameters\n"
  1552.    "       (declare (in) vec4 arg))\n"
  1553.    "     ((return (expression ivec4 bitcast_f2i (var_ref arg)))))\n"
  1554.    "))\n"
  1555.    ""
  1556. ;
  1557. static const char builtin_floatBitsToUint[] =
  1558.    "((function floatBitsToUint\n"
  1559.    "   (signature uint\n"
  1560.    "     (parameters\n"
  1561.    "       (declare (in) float arg))\n"
  1562.    "     ((return (expression uint bitcast_f2u (var_ref arg)))))\n"
  1563.    "\n"
  1564.    "   (signature uvec2\n"
  1565.    "     (parameters\n"
  1566.    "       (declare (in) vec2 arg))\n"
  1567.    "     ((return (expression uvec2 bitcast_f2u (var_ref arg)))))\n"
  1568.    "\n"
  1569.    "   (signature uvec3\n"
  1570.    "     (parameters\n"
  1571.    "       (declare (in) vec3 arg))\n"
  1572.    "     ((return (expression uvec3 bitcast_f2u (var_ref arg)))))\n"
  1573.    "\n"
  1574.    "   (signature uvec4\n"
  1575.    "     (parameters\n"
  1576.    "       (declare (in) vec4 arg))\n"
  1577.    "     ((return (expression uvec4 bitcast_f2u (var_ref arg)))))\n"
  1578.    "))\n"
  1579.    ""
  1580. ;
  1581. static const char builtin_floor[] =
  1582.    "((function floor\n"
  1583.    "   (signature float\n"
  1584.    "     (parameters\n"
  1585.    "       (declare (in) float arg0))\n"
  1586.    "     ((return (expression float floor (var_ref arg0)))))\n"
  1587.    "\n"
  1588.    "   (signature vec2\n"
  1589.    "     (parameters\n"
  1590.    "       (declare (in) vec2 arg0))\n"
  1591.    "     ((return (expression vec2 floor (var_ref arg0)))))\n"
  1592.    "\n"
  1593.    "   (signature vec3\n"
  1594.    "     (parameters\n"
  1595.    "       (declare (in) vec3 arg0))\n"
  1596.    "     ((return (expression vec3 floor (var_ref arg0)))))\n"
  1597.    "\n"
  1598.    "   (signature vec4\n"
  1599.    "     (parameters\n"
  1600.    "       (declare (in) vec4 arg0))\n"
  1601.    "     ((return (expression vec4 floor (var_ref arg0)))))\n"
  1602.    "))\n"
  1603.    ""
  1604. ;
  1605. static const char builtin_fract[] =
  1606.    "((function fract\n"
  1607.    "   (signature float\n"
  1608.    "     (parameters\n"
  1609.    "       (declare (in) float x))\n"
  1610.    "     ((return (expression float fract (var_ref x)))))\n"
  1611.    "\n"
  1612.    "   (signature vec2\n"
  1613.    "     (parameters\n"
  1614.    "       (declare (in) vec2 x))\n"
  1615.    "     ((return (expression vec2 fract (var_ref x)))))\n"
  1616.    "\n"
  1617.    "   (signature vec3\n"
  1618.    "     (parameters\n"
  1619.    "       (declare (in) vec3 x))\n"
  1620.    "     ((return (expression vec3 fract (var_ref x)))))\n"
  1621.    "\n"
  1622.    "   (signature vec4\n"
  1623.    "     (parameters\n"
  1624.    "       (declare (in) vec4 x))\n"
  1625.    "     ((return (expression vec4 fract (var_ref x)))))\n"
  1626.    "))\n"
  1627.    "\n"
  1628.    ""
  1629. ;
  1630. static const char builtin_ftransform[] =
  1631.    "((declare (uniform) mat4 gl_ModelViewProjectionMatrix)\n"
  1632.    " (declare (in) vec4 gl_Vertex)\n"
  1633.    " (function ftransform\n"
  1634.    "   (signature vec4\n"
  1635.    "     (parameters)\n"
  1636.    "    ((return (expression vec4 *\n"
  1637.    "          (var_ref gl_ModelViewProjectionMatrix)\n"
  1638.    "          (var_ref gl_Vertex)))))\n"
  1639.    "))\n"
  1640.    ""
  1641. ;
  1642. static const char builtin_fwidth[] =
  1643.    "((function fwidth\n"
  1644.    "   (signature float\n"
  1645.    "     (parameters\n"
  1646.    "       (declare (in) float p))\n"
  1647.    "     ((return (expression float +\n"
  1648.    "                (expression float abs (expression float dFdx (var_ref p)))\n"
  1649.    "                (expression float abs (expression float dFdy (var_ref p)))))))\n"
  1650.    "\n"
  1651.    "   (signature vec2\n"
  1652.    "     (parameters\n"
  1653.    "       (declare (in) vec2 p))\n"
  1654.    "     ((return (expression vec2 +\n"
  1655.    "                (expression vec2 abs (expression vec2 dFdx (var_ref p)))\n"
  1656.    "                (expression vec2 abs (expression vec2 dFdy (var_ref p)))))))\n"
  1657.    "\n"
  1658.    "   (signature vec3\n"
  1659.    "     (parameters\n"
  1660.    "       (declare (in) vec3 p))\n"
  1661.    "     ((return (expression vec3 +\n"
  1662.    "                (expression vec3 abs (expression vec3 dFdx (var_ref p)))\n"
  1663.    "                (expression vec3 abs (expression vec3 dFdy (var_ref p)))))))\n"
  1664.    "\n"
  1665.    "   (signature vec4\n"
  1666.    "     (parameters\n"
  1667.    "       (declare (in) vec4 p))\n"
  1668.    "     ((return (expression vec4 +\n"
  1669.    "                (expression vec4 abs (expression vec4 dFdx (var_ref p)))\n"
  1670.    "                (expression vec4 abs (expression vec4 dFdy (var_ref p)))))))\n"
  1671.    "))\n"
  1672.    ""
  1673. ;
  1674. static const char builtin_greaterThan[] =
  1675.    "((function greaterThan\n"
  1676.    "   (signature bvec2\n"
  1677.    "     (parameters\n"
  1678.    "       (declare (in) vec2 arg0)\n"
  1679.    "       (declare (in) vec2 arg1))\n"
  1680.    "     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
  1681.    "\n"
  1682.    "   (signature bvec3\n"
  1683.    "     (parameters\n"
  1684.    "       (declare (in) vec3 arg0)\n"
  1685.    "       (declare (in) vec3 arg1))\n"
  1686.    "     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
  1687.    "\n"
  1688.    "   (signature bvec4\n"
  1689.    "     (parameters\n"
  1690.    "       (declare (in) vec4 arg0)\n"
  1691.    "       (declare (in) vec4 arg1))\n"
  1692.    "     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
  1693.    "\n"
  1694.    "   (signature bvec2\n"
  1695.    "     (parameters\n"
  1696.    "       (declare (in) ivec2 arg0)\n"
  1697.    "       (declare (in) ivec2 arg1))\n"
  1698.    "     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
  1699.    "\n"
  1700.    "   (signature bvec3\n"
  1701.    "     (parameters\n"
  1702.    "       (declare (in) ivec3 arg0)\n"
  1703.    "       (declare (in) ivec3 arg1))\n"
  1704.    "     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
  1705.    "\n"
  1706.    "   (signature bvec4\n"
  1707.    "     (parameters\n"
  1708.    "       (declare (in) ivec4 arg0)\n"
  1709.    "       (declare (in) ivec4 arg1))\n"
  1710.    "     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
  1711.    "\n"
  1712.    "   (signature bvec2\n"
  1713.    "     (parameters\n"
  1714.    "       (declare (in) uvec2 arg0)\n"
  1715.    "       (declare (in) uvec2 arg1))\n"
  1716.    "     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n"
  1717.    "\n"
  1718.    "   (signature bvec3\n"
  1719.    "     (parameters\n"
  1720.    "       (declare (in) uvec3 arg0)\n"
  1721.    "       (declare (in) uvec3 arg1))\n"
  1722.    "     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n"
  1723.    "\n"
  1724.    "   (signature bvec4\n"
  1725.    "     (parameters\n"
  1726.    "       (declare (in) uvec4 arg0)\n"
  1727.    "       (declare (in) uvec4 arg1))\n"
  1728.    "     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n"
  1729.    "))\n"
  1730.    ""
  1731. ;
  1732. static const char builtin_greaterThanEqual[] =
  1733.    "((function greaterThanEqual\n"
  1734.    "   (signature bvec2\n"
  1735.    "     (parameters\n"
  1736.    "       (declare (in) vec2 arg0)\n"
  1737.    "       (declare (in) vec2 arg1))\n"
  1738.    "     ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
  1739.    "\n"
  1740.    "   (signature bvec3\n"
  1741.    "     (parameters\n"
  1742.    "       (declare (in) vec3 arg0)\n"
  1743.    "       (declare (in) vec3 arg1))\n"
  1744.    "     ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
  1745.    "\n"
  1746.    "   (signature bvec4\n"
  1747.    "     (parameters\n"
  1748.    "       (declare (in) vec4 arg0)\n"
  1749.    "       (declare (in) vec4 arg1))\n"
  1750.    "     ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
  1751.    "\n"
  1752.    "   (signature bvec2\n"
  1753.    "     (parameters\n"
  1754.    "       (declare (in) ivec2 arg0)\n"
  1755.    "       (declare (in) ivec2 arg1))\n"
  1756.    "     ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
  1757.    "\n"
  1758.    "   (signature bvec3\n"
  1759.    "     (parameters\n"
  1760.    "       (declare (in) ivec3 arg0)\n"
  1761.    "       (declare (in) ivec3 arg1))\n"
  1762.    "     ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
  1763.    "\n"
  1764.    "   (signature bvec4\n"
  1765.    "     (parameters\n"
  1766.    "       (declare (in) ivec4 arg0)\n"
  1767.    "       (declare (in) ivec4 arg1))\n"
  1768.    "     ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
  1769.    "\n"
  1770.    "   (signature bvec2\n"
  1771.    "     (parameters\n"
  1772.    "       (declare (in) uvec2 arg0)\n"
  1773.    "       (declare (in) uvec2 arg1))\n"
  1774.    "     ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n"
  1775.    "\n"
  1776.    "   (signature bvec3\n"
  1777.    "     (parameters\n"
  1778.    "       (declare (in) uvec3 arg0)\n"
  1779.    "       (declare (in) uvec3 arg1))\n"
  1780.    "     ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n"
  1781.    "\n"
  1782.    "   (signature bvec4\n"
  1783.    "     (parameters\n"
  1784.    "       (declare (in) uvec4 arg0)\n"
  1785.    "       (declare (in) uvec4 arg1))\n"
  1786.    "     ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n"
  1787.    "))\n"
  1788.    ""
  1789. ;
  1790. static const char builtin_intBitsToFloat[] =
  1791.    "((function intBitsToFloat\n"
  1792.    "   (signature float\n"
  1793.    "     (parameters\n"
  1794.    "       (declare (in) int arg))\n"
  1795.    "     ((return (expression float bitcast_i2f (var_ref arg)))))\n"
  1796.    "\n"
  1797.    "   (signature vec2\n"
  1798.    "     (parameters\n"
  1799.    "       (declare (in) ivec2 arg))\n"
  1800.    "     ((return (expression vec2 bitcast_i2f (var_ref arg)))))\n"
  1801.    "\n"
  1802.    "   (signature vec3\n"
  1803.    "     (parameters\n"
  1804.    "       (declare (in) ivec3 arg))\n"
  1805.    "     ((return (expression vec3 bitcast_i2f (var_ref arg)))))\n"
  1806.    "\n"
  1807.    "   (signature vec4\n"
  1808.    "     (parameters\n"
  1809.    "       (declare (in) ivec4 arg))\n"
  1810.    "     ((return (expression vec4 bitcast_i2f (var_ref arg)))))\n"
  1811.    "))\n"
  1812.    ""
  1813. ;
  1814. static const char builtin_inverse[] =
  1815.    "(\n"
  1816.    "(function inverse\n"
  1817.    "  (signature mat2\n"
  1818.    "    (parameters\n"
  1819.    "      (declare (in) mat2 m))\n"
  1820.    "    (\n"
  1821.    "      (declare () float det)\n"
  1822.    "      (declare () mat2 adj)\n"
  1823.    "      (declare (temporary) vec2 assignment_tmp)\n"
  1824.    "      (assign  (xy) (var_ref assignment_tmp)  (expression vec2 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (constant int (0)))) \n"
  1825.    "      (assign  (xy) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp)) \n"
  1826.    "      (declare (temporary) vec2 assignment_tmp@2)\n"
  1827.    "      (assign  (xy) (var_ref assignment_tmp@2)  (expression vec2 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float neg (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1)))) (constant int (1)))) \n"
  1828.    "      (assign  (xy) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@2)) \n"
  1829.    "      (declare (temporary) vec2 assignment_tmp@3)\n"
  1830.    "      (assign  (xy) (var_ref assignment_tmp@3)  (expression vec2 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float neg (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0)))) (constant int (0)))) \n"
  1831.    "      (assign  (xy) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@3)) \n"
  1832.    "      (declare (temporary) vec2 assignment_tmp@4)\n"
  1833.    "      (assign  (xy) (var_ref assignment_tmp@4)  (expression vec2 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (constant int (1)))) \n"
  1834.    "      (assign  (xy) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@4)) \n"
  1835.    "      (declare (temporary) float assignment_tmp@5)\n"
  1836.    "      (assign  (x) (var_ref assignment_tmp@5)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1)))))) \n"
  1837.    "      (assign  (x) (var_ref det)  (var_ref assignment_tmp@5)) \n"
  1838.    "      (return (expression mat2 / (var_ref adj) (var_ref det)))))\n"
  1839.    "  (signature mat3\n"
  1840.    "    (parameters\n"
  1841.    "      (declare (in) mat3 m))\n"
  1842.    "    (\n"
  1843.    "      (declare () float det)\n"
  1844.    "      (declare () mat3 adj)\n"
  1845.    "      (declare (temporary) vec3 assignment_tmp)\n"
  1846.    "      (assign  (xyz) (var_ref assignment_tmp)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))))) (constant int (0)))) \n"
  1847.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp)) \n"
  1848.    "      (declare (temporary) vec3 assignment_tmp@6)\n"
  1849.    "      (assign  (xyz) (var_ref assignment_tmp@6)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float neg (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) (constant int (0)))) \n"
  1850.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@6)) \n"
  1851.    "      (declare (temporary) vec3 assignment_tmp@7)\n"
  1852.    "      (assign  (xyz) (var_ref assignment_tmp@7)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))))) (constant int (0)))) \n"
  1853.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@7)) \n"
  1854.    "      (declare (temporary) vec3 assignment_tmp@8)\n"
  1855.    "      (assign  (xyz) (var_ref assignment_tmp@8)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float neg (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2)))))) (constant int (1)))) \n"
  1856.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@8)) \n"
  1857.    "      (declare (temporary) vec3 assignment_tmp@9)\n"
  1858.    "      (assign  (xyz) (var_ref assignment_tmp@9)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))))) (constant int (1)))) \n"
  1859.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@9)) \n"
  1860.    "      (declare (temporary) vec3 assignment_tmp@10)\n"
  1861.    "      (assign  (xyz) (var_ref assignment_tmp@10)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float neg (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1)))))) (constant int (1)))) \n"
  1862.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@10)) \n"
  1863.    "      (declare (temporary) vec3 assignment_tmp@11)\n"
  1864.    "      (assign  (xyz) (var_ref assignment_tmp@11)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))))) (constant int (2)))) \n"
  1865.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@11)) \n"
  1866.    "      (declare (temporary) vec3 assignment_tmp@12)\n"
  1867.    "      (assign  (xyz) (var_ref assignment_tmp@12)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float neg (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2)))))) (constant int (2)))) \n"
  1868.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@12)) \n"
  1869.    "      (declare (temporary) vec3 assignment_tmp@13)\n"
  1870.    "      (assign  (xyz) (var_ref assignment_tmp@13)  (expression vec3 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))))) (constant int (2)))) \n"
  1871.    "      (assign  (xyz) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@13)) \n"
  1872.    "      (declare (temporary) float assignment_tmp@14)\n"
  1873.    "      (assign  (x) (var_ref assignment_tmp@14)  (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0)))))))) \n"
  1874.    "      (assign  (x) (var_ref det)  (var_ref assignment_tmp@14)) \n"
  1875.    "      (return (expression mat3 / (var_ref adj) (var_ref det)))))\n"
  1876.    "  (signature mat4\n"
  1877.    "    (parameters\n"
  1878.    "      (declare (in) mat4 m))\n"
  1879.    "    (\n"
  1880.    "      (declare () float det)\n"
  1881.    "      (declare () mat4 adj)\n"
  1882.    "      (declare () float SubFactor18)\n"
  1883.    "      (declare () float SubFactor17)\n"
  1884.    "      (declare () float SubFactor16)\n"
  1885.    "      (declare () float SubFactor15)\n"
  1886.    "      (declare () float SubFactor14)\n"
  1887.    "      (declare () float SubFactor13)\n"
  1888.    "      (declare () float SubFactor12)\n"
  1889.    "      (declare () float SubFactor11)\n"
  1890.    "      (declare () float SubFactor10)\n"
  1891.    "      (declare () float SubFactor09)\n"
  1892.    "      (declare () float SubFactor08)\n"
  1893.    "      (declare () float SubFactor07)\n"
  1894.    "      (declare () float SubFactor06)\n"
  1895.    "      (declare () float SubFactor05)\n"
  1896.    "      (declare () float SubFactor04)\n"
  1897.    "      (declare () float SubFactor03)\n"
  1898.    "      (declare () float SubFactor02)\n"
  1899.    "      (declare () float SubFactor01)\n"
  1900.    "      (declare () float SubFactor00)\n"
  1901.    "      (declare (temporary) float assignment_tmp)\n"
  1902.    "      (assign  (x) (var_ref assignment_tmp)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1903.    "      (assign  (x) (var_ref SubFactor00)  (var_ref assignment_tmp)) \n"
  1904.    "      (declare (temporary) float assignment_tmp@15)\n"
  1905.    "      (assign  (x) (var_ref assignment_tmp@15)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1906.    "      (assign  (x) (var_ref SubFactor01)  (var_ref assignment_tmp@15)) \n"
  1907.    "      (declare (temporary) float assignment_tmp@16)\n"
  1908.    "      (assign  (x) (var_ref assignment_tmp@16)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n"
  1909.    "      (assign  (x) (var_ref SubFactor02)  (var_ref assignment_tmp@16)) \n"
  1910.    "      (declare (temporary) float assignment_tmp@17)\n"
  1911.    "      (assign  (x) (var_ref assignment_tmp@17)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n"
  1912.    "      (assign  (x) (var_ref SubFactor03)  (var_ref assignment_tmp@17)) \n"
  1913.    "      (declare (temporary) float assignment_tmp@18)\n"
  1914.    "      (assign  (x) (var_ref assignment_tmp@18)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n"
  1915.    "      (assign  (x) (var_ref SubFactor04)  (var_ref assignment_tmp@18)) \n"
  1916.    "      (declare (temporary) float assignment_tmp@19)\n"
  1917.    "      (assign  (x) (var_ref assignment_tmp@19)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) \n"
  1918.    "      (assign  (x) (var_ref SubFactor05)  (var_ref assignment_tmp@19)) \n"
  1919.    "      (declare (temporary) float assignment_tmp@20)\n"
  1920.    "      (assign  (x) (var_ref assignment_tmp@20)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1921.    "      (assign  (x) (var_ref SubFactor06)  (var_ref assignment_tmp@20)) \n"
  1922.    "      (declare (temporary) float assignment_tmp@21)\n"
  1923.    "      (assign  (x) (var_ref assignment_tmp@21)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1924.    "      (assign  (x) (var_ref SubFactor07)  (var_ref assignment_tmp@21)) \n"
  1925.    "      (declare (temporary) float assignment_tmp@22)\n"
  1926.    "      (assign  (x) (var_ref assignment_tmp@22)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1927.    "      (assign  (x) (var_ref SubFactor08)  (var_ref assignment_tmp@22)) \n"
  1928.    "      (declare (temporary) float assignment_tmp@23)\n"
  1929.    "      (assign  (x) (var_ref assignment_tmp@23)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1930.    "      (assign  (x) (var_ref SubFactor09)  (var_ref assignment_tmp@23)) \n"
  1931.    "      (declare (temporary) float assignment_tmp@24)\n"
  1932.    "      (assign  (x) (var_ref assignment_tmp@24)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1933.    "      (assign  (x) (var_ref SubFactor10)  (var_ref assignment_tmp@24)) \n"
  1934.    "      (declare (temporary) float assignment_tmp@25)\n"
  1935.    "      (assign  (x) (var_ref assignment_tmp@25)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1936.    "      (assign  (x) (var_ref SubFactor11)  (var_ref assignment_tmp@25)) \n"
  1937.    "      (declare (temporary) float assignment_tmp@26)\n"
  1938.    "      (assign  (x) (var_ref assignment_tmp@26)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (3))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n"
  1939.    "      (assign  (x) (var_ref SubFactor12)  (var_ref assignment_tmp@26)) \n"
  1940.    "      (declare (temporary) float assignment_tmp@27)\n"
  1941.    "      (assign  (x) (var_ref assignment_tmp@27)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1942.    "      (assign  (x) (var_ref SubFactor13)  (var_ref assignment_tmp@27)) \n"
  1943.    "      (declare (temporary) float assignment_tmp@28)\n"
  1944.    "      (assign  (x) (var_ref assignment_tmp@28)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1945.    "      (assign  (x) (var_ref SubFactor14)  (var_ref assignment_tmp@28)) \n"
  1946.    "      (declare (temporary) float assignment_tmp@29)\n"
  1947.    "      (assign  (x) (var_ref assignment_tmp@29)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1948.    "      (assign  (x) (var_ref SubFactor15)  (var_ref assignment_tmp@29)) \n"
  1949.    "      (declare (temporary) float assignment_tmp@30)\n"
  1950.    "      (assign  (x) (var_ref assignment_tmp@30)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n"
  1951.    "      (assign  (x) (var_ref SubFactor16)  (var_ref assignment_tmp@30)) \n"
  1952.    "      (declare (temporary) float assignment_tmp@31)\n"
  1953.    "      (assign  (x) (var_ref assignment_tmp@31)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n"
  1954.    "      (assign  (x) (var_ref SubFactor17)  (var_ref assignment_tmp@31)) \n"
  1955.    "      (declare (temporary) float assignment_tmp@32)\n"
  1956.    "      (assign  (x) (var_ref assignment_tmp@32)  (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (2))) (constant int (0))) (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n"
  1957.    "      (assign  (x) (var_ref SubFactor18)  (var_ref assignment_tmp@32)) \n"
  1958.    "      (declare (temporary) vec4 assignment_tmp@33)\n"
  1959.    "      (assign  (xyzw) (var_ref assignment_tmp@33)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor01))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor02))) (constant int (0)))) \n"
  1960.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@33)) \n"
  1961.    "      (declare (temporary) vec4 assignment_tmp@34)\n"
  1962.    "      (assign  (xyzw) (var_ref assignment_tmp@34)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor04)))) (constant int (0)))) \n"
  1963.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@34)) \n"
  1964.    "      (declare (temporary) vec4 assignment_tmp@35)\n"
  1965.    "      (assign  (xyzw) (var_ref assignment_tmp@35)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor01)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor05))) (constant int (0)))) \n"
  1966.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@35)) \n"
  1967.    "      (declare (temporary) vec4 assignment_tmp@36)\n"
  1968.    "      (assign  (xyzw) (var_ref assignment_tmp@36)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (3))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor02)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor04))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor05)))) (constant int (0)))) \n"
  1969.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (3)))  (var_ref assignment_tmp@36)) \n"
  1970.    "      (declare (temporary) vec4 assignment_tmp@37)\n"
  1971.    "      (assign  (xyzw) (var_ref assignment_tmp@37)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor01))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor02)))) (constant int (1)))) \n"
  1972.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@37)) \n"
  1973.    "      (declare (temporary) vec4 assignment_tmp@38)\n"
  1974.    "      (assign  (xyzw) (var_ref assignment_tmp@38)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor00)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor04))) (constant int (1)))) \n"
  1975.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@38)) \n"
  1976.    "      (declare (temporary) vec4 assignment_tmp@39)\n"
  1977.    "      (assign  (xyzw) (var_ref assignment_tmp@39)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor01)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor03))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor05)))) (constant int (1)))) \n"
  1978.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@39)) \n"
  1979.    "      (declare (temporary) vec4 assignment_tmp@40)\n"
  1980.    "      (assign  (xyzw) (var_ref assignment_tmp@40)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (3))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor02)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor04))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor05))) (constant int (1)))) \n"
  1981.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (3)))  (var_ref assignment_tmp@40)) \n"
  1982.    "      (declare (temporary) vec4 assignment_tmp@41)\n"
  1983.    "      (assign  (xyzw) (var_ref assignment_tmp@41)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor06)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor07))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor08))) (constant int (2)))) \n"
  1984.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@41)) \n"
  1985.    "      (declare (temporary) vec4 assignment_tmp@42)\n"
  1986.    "      (assign  (xyzw) (var_ref assignment_tmp@42)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor06)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor09))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor10)))) (constant int (2)))) \n"
  1987.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@42)) \n"
  1988.    "      (declare (temporary) vec4 assignment_tmp@43)\n"
  1989.    "      (assign  (xyzw) (var_ref assignment_tmp@43)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor11)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor09))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor12))) (constant int (2)))) \n"
  1990.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@43)) \n"
  1991.    "      (declare (temporary) vec4 assignment_tmp@44)\n"
  1992.    "      (assign  (xyzw) (var_ref assignment_tmp@44)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (3))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor08)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor10))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor12)))) (constant int (2)))) \n"
  1993.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (3)))  (var_ref assignment_tmp@44)) \n"
  1994.    "      (declare (temporary) vec4 assignment_tmp@45)\n"
  1995.    "      (assign  (xyzw) (var_ref assignment_tmp@45)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (0))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor13)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor14))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor15)))) (constant int (3)))) \n"
  1996.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (0)))  (var_ref assignment_tmp@45)) \n"
  1997.    "      (declare (temporary) vec4 assignment_tmp@46)\n"
  1998.    "      (assign  (xyzw) (var_ref assignment_tmp@46)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (1))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor13)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor16))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor17))) (constant int (3)))) \n"
  1999.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (1)))  (var_ref assignment_tmp@46)) \n"
  2000.    "      (declare (temporary) vec4 assignment_tmp@47)\n"
  2001.    "      (assign  (xyzw) (var_ref assignment_tmp@47)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (2))) (expression float neg (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor14)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor16))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor18)))) (constant int (3)))) \n"
  2002.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (2)))  (var_ref assignment_tmp@47)) \n"
  2003.    "      (declare (temporary) vec4 assignment_tmp@48)\n"
  2004.    "      (assign  (xyzw) (var_ref assignment_tmp@48)  (expression vec4 vector_insert (array_ref (var_ref adj) (constant int (3))) (expression float + (expression float - (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor15)) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor17))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor18))) (constant int (3)))) \n"
  2005.    "      (assign  (xyzw) (array_ref (var_ref adj) (constant int (3)))  (var_ref assignment_tmp@48)) \n"
  2006.    "      (declare (temporary) float assignment_tmp@49)\n"
  2007.    "      (assign  (x) (var_ref assignment_tmp@49)  (expression float + (expression float + (expression float + (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float vector_extract (array_ref (var_ref adj) (constant int (0))) (constant int (0)))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float vector_extract (array_ref (var_ref adj) (constant int (1))) (constant int (0))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (2))) (expression float vector_extract (array_ref (var_ref adj) (constant int (2))) (constant int (0))))) (expression float * (expression float vector_extract (array_ref (var_ref m) (constant int (0))) (constant int (3))) (expression float vector_extract (array_ref (var_ref adj) (constant int (3))) (constant int (0)))))) \n"
  2008.    "      (assign  (x) (var_ref det)  (var_ref assignment_tmp@49)) \n"
  2009.    "      (return (expression mat4 / (var_ref adj) (var_ref det)))))))"
  2010. ;
  2011. static const char builtin_inversesqrt[] =
  2012.    "((function inversesqrt\n"
  2013.    "   (signature float\n"
  2014.    "     (parameters\n"
  2015.    "       (declare (in) float arg0))\n"
  2016.    "     ((return (expression float rsq (var_ref arg0)))))\n"
  2017.    "\n"
  2018.    "   (signature vec2\n"
  2019.    "     (parameters\n"
  2020.    "       (declare (in) vec2 arg0))\n"
  2021.    "     ((return (expression vec2 rsq (var_ref arg0)))))\n"
  2022.    "\n"
  2023.    "   (signature vec3\n"
  2024.    "     (parameters\n"
  2025.    "       (declare (in) vec3 arg0))\n"
  2026.    "     ((return (expression vec3 rsq (var_ref arg0)))))\n"
  2027.    "\n"
  2028.    "   (signature vec4\n"
  2029.    "     (parameters\n"
  2030.    "       (declare (in) vec4 arg0))\n"
  2031.    "     ((return (expression vec4 rsq (var_ref arg0)))))\n"
  2032.    "))\n"
  2033.    ""
  2034. ;
  2035. static const char builtin_isinf[] =
  2036.    "((function isinf\n"
  2037.    "   (signature bool\n"
  2038.    "     (parameters\n"
  2039.    "       (declare (in) float x))\n"
  2040.    "     ((return (expression bool == (expression float abs (var_ref x)) (constant float (+INF))))))\n"
  2041.    "   (signature bvec2\n"
  2042.    "     (parameters\n"
  2043.    "       (declare (in) vec2 x))\n"
  2044.    "     ((return (expression bvec2 == (expression vec2 abs (var_ref x)) (constant vec2 (+INF +INF))))))\n"
  2045.    "   (signature bvec3\n"
  2046.    "     (parameters\n"
  2047.    "       (declare (in) vec3 x))\n"
  2048.    "     ((return (expression bvec3 == (expression vec3 abs (var_ref x)) (constant vec3 (+INF +INF +INF))))))\n"
  2049.    "   (signature bvec4\n"
  2050.    "     (parameters\n"
  2051.    "       (declare (in) vec4 x))\n"
  2052.    "     ((return (expression bvec4 == (expression vec4 abs (var_ref x)) (constant vec4 (+INF +INF +INF +INF))))))))\n"
  2053.    ""
  2054. ;
  2055. static const char builtin_isnan[] =
  2056.    "((function isnan\n"
  2057.    "   (signature bool\n"
  2058.    "     (parameters\n"
  2059.    "       (declare (in) float x))\n"
  2060.    "     ((return (expression bool != (var_ref x) (var_ref x)))))\n"
  2061.    "   (signature bvec2\n"
  2062.    "     (parameters\n"
  2063.    "       (declare (in) vec2 x))\n"
  2064.    "     ((return (expression bvec2 != (var_ref x) (var_ref x)))))\n"
  2065.    "   (signature bvec3\n"
  2066.    "     (parameters\n"
  2067.    "       (declare (in) vec3 x))\n"
  2068.    "     ((return (expression bvec3 != (var_ref x) (var_ref x)))))\n"
  2069.    "   (signature bvec4\n"
  2070.    "     (parameters\n"
  2071.    "       (declare (in) vec4 x))\n"
  2072.    "     ((return (expression bvec4 != (var_ref x) (var_ref x)))))))\n"
  2073.    ""
  2074. ;
  2075. static const char builtin_length[] =
  2076.    "((function length\n"
  2077.    "   (signature float\n"
  2078.    "     (parameters\n"
  2079.    "       (declare (in) float arg0))\n"
  2080.    "     ((return (expression float abs (var_ref arg0)))))\n"
  2081.    "\n"
  2082.    "   (signature float\n"
  2083.    "     (parameters\n"
  2084.    "       (declare (in) vec2 arg0))\n"
  2085.    "     ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
  2086.    "\n"
  2087.    "   (signature float\n"
  2088.    "     (parameters\n"
  2089.    "       (declare (in) vec3 arg0))\n"
  2090.    "     ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
  2091.    "\n"
  2092.    "   (signature float\n"
  2093.    "     (parameters\n"
  2094.    "       (declare (in) vec4 arg0))\n"
  2095.    "     ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n"
  2096.    "))\n"
  2097.    ""
  2098. ;
  2099. static const char builtin_lessThan[] =
  2100.    "((function lessThan\n"
  2101.    "   (signature bvec2\n"
  2102.    "     (parameters\n"
  2103.    "       (declare (in) vec2 arg0)\n"
  2104.    "       (declare (in) vec2 arg1))\n"
  2105.    "     ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
  2106.    "\n"
  2107.    "   (signature bvec3\n"
  2108.    "     (parameters\n"
  2109.    "       (declare (in) vec3 arg0)\n"
  2110.    "       (declare (in) vec3 arg1))\n"
  2111.    "     ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
  2112.    "\n"
  2113.    "   (signature bvec4\n"
  2114.    "     (parameters\n"
  2115.    "       (declare (in) vec4 arg0)\n"
  2116.    "       (declare (in) vec4 arg1))\n"
  2117.    "     ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
  2118.    "\n"
  2119.    "   (signature bvec2\n"
  2120.    "     (parameters\n"
  2121.    "       (declare (in) ivec2 arg0)\n"
  2122.    "       (declare (in) ivec2 arg1))\n"
  2123.    "     ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
  2124.    "\n"
  2125.    "   (signature bvec3\n"
  2126.    "     (parameters\n"
  2127.    "       (declare (in) ivec3 arg0)\n"
  2128.    "       (declare (in) ivec3 arg1))\n"
  2129.    "     ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
  2130.    "\n"
  2131.    "   (signature bvec4\n"
  2132.    "     (parameters\n"
  2133.    "       (declare (in) ivec4 arg0)\n"
  2134.    "       (declare (in) ivec4 arg1))\n"
  2135.    "     ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
  2136.    "\n"
  2137.    "   (signature bvec2\n"
  2138.    "     (parameters\n"
  2139.    "       (declare (in) uvec2 arg0)\n"
  2140.    "       (declare (in) uvec2 arg1))\n"
  2141.    "     ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n"
  2142.    "\n"
  2143.    "   (signature bvec3\n"
  2144.    "     (parameters\n"
  2145.    "       (declare (in) uvec3 arg0)\n"
  2146.    "       (declare (in) uvec3 arg1))\n"
  2147.    "     ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n"
  2148.    "\n"
  2149.    "   (signature bvec4\n"
  2150.    "     (parameters\n"
  2151.    "       (declare (in) uvec4 arg0)\n"
  2152.    "       (declare (in) uvec4 arg1))\n"
  2153.    "     ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n"
  2154.    "))\n"
  2155.    ""
  2156. ;
  2157. static const char builtin_lessThanEqual[] =
  2158.    "((function lessThanEqual\n"
  2159.    "   (signature bvec2\n"
  2160.    "     (parameters\n"
  2161.    "       (declare (in) vec2 arg0)\n"
  2162.    "       (declare (in) vec2 arg1))\n"
  2163.    "     ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
  2164.    "\n"
  2165.    "   (signature bvec3\n"
  2166.    "     (parameters\n"
  2167.    "       (declare (in) vec3 arg0)\n"
  2168.    "       (declare (in) vec3 arg1))\n"
  2169.    "     ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
  2170.    "\n"
  2171.    "   (signature bvec4\n"
  2172.    "     (parameters\n"
  2173.    "       (declare (in) vec4 arg0)\n"
  2174.    "       (declare (in) vec4 arg1))\n"
  2175.    "     ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
  2176.    "\n"
  2177.    "   (signature bvec2\n"
  2178.    "     (parameters\n"
  2179.    "       (declare (in) ivec2 arg0)\n"
  2180.    "       (declare (in) ivec2 arg1))\n"
  2181.    "     ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
  2182.    "\n"
  2183.    "   (signature bvec3\n"
  2184.    "     (parameters\n"
  2185.    "       (declare (in) ivec3 arg0)\n"
  2186.    "       (declare (in) ivec3 arg1))\n"
  2187.    "     ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
  2188.    "\n"
  2189.    "   (signature bvec4\n"
  2190.    "     (parameters\n"
  2191.    "       (declare (in) ivec4 arg0)\n"
  2192.    "       (declare (in) ivec4 arg1))\n"
  2193.    "     ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
  2194.    "\n"
  2195.    "   (signature bvec2\n"
  2196.    "     (parameters\n"
  2197.    "       (declare (in) uvec2 arg0)\n"
  2198.    "       (declare (in) uvec2 arg1))\n"
  2199.    "     ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n"
  2200.    "\n"
  2201.    "   (signature bvec3\n"
  2202.    "     (parameters\n"
  2203.    "       (declare (in) uvec3 arg0)\n"
  2204.    "       (declare (in) uvec3 arg1))\n"
  2205.    "     ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n"
  2206.    "\n"
  2207.    "   (signature bvec4\n"
  2208.    "     (parameters\n"
  2209.    "       (declare (in) uvec4 arg0)\n"
  2210.    "       (declare (in) uvec4 arg1))\n"
  2211.    "     ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n"
  2212.    "))\n"
  2213.    ""
  2214. ;
  2215. static const char builtin_log[] =
  2216.    "((function log\n"
  2217.    "   (signature float\n"
  2218.    "     (parameters\n"
  2219.    "       (declare (in) float arg0))\n"
  2220.    "     ((return (expression float log (var_ref arg0)))))\n"
  2221.    "\n"
  2222.    "   (signature vec2\n"
  2223.    "     (parameters\n"
  2224.    "       (declare (in) vec2 arg0))\n"
  2225.    "     ((return (expression vec2 log (var_ref arg0)))))\n"
  2226.    "\n"
  2227.    "   (signature vec3\n"
  2228.    "     (parameters\n"
  2229.    "       (declare (in) vec3 arg0))\n"
  2230.    "     ((return (expression vec3 log (var_ref arg0)))))\n"
  2231.    "\n"
  2232.    "   (signature vec4\n"
  2233.    "     (parameters\n"
  2234.    "       (declare (in) vec4 arg0))\n"
  2235.    "     ((return (expression vec4 log (var_ref arg0)))))\n"
  2236.    "))\n"
  2237.    ""
  2238. ;
  2239. static const char builtin_log2[] =
  2240.    "((function log2\n"
  2241.    "   (signature float\n"
  2242.    "     (parameters\n"
  2243.    "       (declare (in) float arg0))\n"
  2244.    "     ((return (expression float log2 (var_ref arg0)))))\n"
  2245.    "\n"
  2246.    "   (signature vec2\n"
  2247.    "     (parameters\n"
  2248.    "       (declare (in) vec2 arg0))\n"
  2249.    "     ((return (expression vec2 log2 (var_ref arg0)))))\n"
  2250.    "\n"
  2251.    "   (signature vec3\n"
  2252.    "     (parameters\n"
  2253.    "       (declare (in) vec3 arg0))\n"
  2254.    "     ((return (expression vec3 log2 (var_ref arg0)))))\n"
  2255.    "\n"
  2256.    "   (signature vec4\n"
  2257.    "     (parameters\n"
  2258.    "       (declare (in) vec4 arg0))\n"
  2259.    "     ((return (expression vec4 log2 (var_ref arg0)))))\n"
  2260.    "))\n"
  2261.    ""
  2262. ;
  2263. static const char builtin_matrixCompMult[] =
  2264.    "((function matrixCompMult\n"
  2265.    "   (signature mat2\n"
  2266.    "     (parameters\n"
  2267.    "       (declare (in) mat2 x)\n"
  2268.    "       (declare (in) mat2 y))\n"
  2269.    "     ((declare () mat2 z)\n"
  2270.    "      (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"
  2271.    "      (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"
  2272.    "(return (var_ref z))))\n"
  2273.    "\n"
  2274.    "   (signature mat3\n"
  2275.    "     (parameters\n"
  2276.    "       (declare (in) mat3 x)\n"
  2277.    "       (declare (in) mat3 y))\n"
  2278.    "     ((declare () mat3 z)\n"
  2279.    "      (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"
  2280.    "      (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"
  2281.    "      (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"
  2282.    "(return (var_ref z))))\n"
  2283.    "\n"
  2284.    "   (signature mat4\n"
  2285.    "     (parameters\n"
  2286.    "       (declare (in) mat4 x)\n"
  2287.    "       (declare (in) mat4 y))\n"
  2288.    "     ((declare () mat4 z)\n"
  2289.    "      (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"
  2290.    "      (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"
  2291.    "      (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"
  2292.    "      (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"
  2293.    "(return (var_ref z))))\n"
  2294.    "\n"
  2295.    "   (signature mat2x3\n"
  2296.    "     (parameters\n"
  2297.    "       (declare (in) mat2x3 x)\n"
  2298.    "       (declare (in) mat2x3 y))\n"
  2299.    "     ((declare () mat2x3 z)\n"
  2300.    "      (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"
  2301.    "      (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"
  2302.    "(return (var_ref z))))\n"
  2303.    "\n"
  2304.    "   (signature mat3x2\n"
  2305.    "     (parameters\n"
  2306.    "       (declare (in) mat3x2 x)\n"
  2307.    "       (declare (in) mat3x2 y))\n"
  2308.    "     ((declare () mat3x2 z)\n"
  2309.    "      (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"
  2310.    "      (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"
  2311.    "      (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"
  2312.    "(return (var_ref z))))\n"
  2313.    "\n"
  2314.    "   (signature mat2x4\n"
  2315.    "     (parameters\n"
  2316.    "       (declare (in) mat2x4 x)\n"
  2317.    "       (declare (in) mat2x4 y))\n"
  2318.    "     ((declare () mat2x4 z)\n"
  2319.    "      (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"
  2320.    "      (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"
  2321.    "(return (var_ref z))))\n"
  2322.    "\n"
  2323.    "   (signature mat4x2\n"
  2324.    "     (parameters\n"
  2325.    "       (declare (in) mat4x2 x)\n"
  2326.    "       (declare (in) mat4x2 y))\n"
  2327.    "     ((declare () mat4x2 z)\n"
  2328.    "      (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"
  2329.    "      (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"
  2330.    "      (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"
  2331.    "      (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"
  2332.    "(return (var_ref z))))\n"
  2333.    "\n"
  2334.    "   (signature mat3x4\n"
  2335.    "     (parameters\n"
  2336.    "       (declare (in) mat3x4 x)\n"
  2337.    "       (declare (in) mat3x4 y))\n"
  2338.    "     ((declare () mat3x4 z)\n"
  2339.    "      (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"
  2340.    "      (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"
  2341.    "      (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"
  2342.    "(return (var_ref z))))\n"
  2343.    "\n"
  2344.    "   (signature mat4x3\n"
  2345.    "     (parameters\n"
  2346.    "       (declare (in) mat4x3 x)\n"
  2347.    "       (declare (in) mat4x3 y))\n"
  2348.    "     ((declare () mat4x3 z)\n"
  2349.    "      (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"
  2350.    "      (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"
  2351.    "      (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"
  2352.    "      (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"
  2353.    "(return (var_ref z))))\n"
  2354.    "))\n"
  2355.    ""
  2356. ;
  2357. static const char builtin_max[] =
  2358.    "((function max\n"
  2359.    "   (signature float\n"
  2360.    "     (parameters\n"
  2361.    "       (declare (in) float arg0)\n"
  2362.    "       (declare (in) float arg1))\n"
  2363.    "     ((return (expression float max (var_ref arg0) (var_ref arg1)))))\n"
  2364.    "\n"
  2365.    "   (signature vec2\n"
  2366.    "     (parameters\n"
  2367.    "       (declare (in) vec2 arg0)\n"
  2368.    "       (declare (in) vec2 arg1))\n"
  2369.    "     ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2370.    "\n"
  2371.    "   (signature vec3\n"
  2372.    "     (parameters\n"
  2373.    "       (declare (in) vec3 arg0)\n"
  2374.    "       (declare (in) vec3 arg1))\n"
  2375.    "     ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2376.    "\n"
  2377.    "   (signature vec4\n"
  2378.    "     (parameters\n"
  2379.    "       (declare (in) vec4 arg0)\n"
  2380.    "       (declare (in) vec4 arg1))\n"
  2381.    "     ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2382.    "\n"
  2383.    "   (signature vec2\n"
  2384.    "     (parameters\n"
  2385.    "       (declare (in) vec2  arg0)\n"
  2386.    "       (declare (in) float arg1))\n"
  2387.    "     ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2388.    "\n"
  2389.    "   (signature vec3\n"
  2390.    "     (parameters\n"
  2391.    "       (declare (in) vec3  arg0)\n"
  2392.    "       (declare (in) float arg1))\n"
  2393.    "     ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2394.    "\n"
  2395.    "   (signature vec4\n"
  2396.    "     (parameters\n"
  2397.    "       (declare (in) vec4  arg0)\n"
  2398.    "       (declare (in) float arg1))\n"
  2399.    "     ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2400.    "\n"
  2401.    "   (signature int\n"
  2402.    "     (parameters\n"
  2403.    "       (declare (in) int arg0)\n"
  2404.    "       (declare (in) int arg1))\n"
  2405.    "     ((return (expression int max (var_ref arg0) (var_ref arg1)))))\n"
  2406.    "\n"
  2407.    "   (signature ivec2\n"
  2408.    "     (parameters\n"
  2409.    "       (declare (in) ivec2 arg0)\n"
  2410.    "       (declare (in) ivec2 arg1))\n"
  2411.    "     ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2412.    "\n"
  2413.    "   (signature ivec3\n"
  2414.    "     (parameters\n"
  2415.    "       (declare (in) ivec3 arg0)\n"
  2416.    "       (declare (in) ivec3 arg1))\n"
  2417.    "     ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2418.    "\n"
  2419.    "   (signature ivec4\n"
  2420.    "     (parameters\n"
  2421.    "       (declare (in) ivec4 arg0)\n"
  2422.    "       (declare (in) ivec4 arg1))\n"
  2423.    "     ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2424.    "\n"
  2425.    "   (signature ivec2\n"
  2426.    "     (parameters\n"
  2427.    "       (declare (in) ivec2  arg0)\n"
  2428.    "       (declare (in) int arg1))\n"
  2429.    "     ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2430.    "\n"
  2431.    "   (signature ivec3\n"
  2432.    "     (parameters\n"
  2433.    "       (declare (in) ivec3  arg0)\n"
  2434.    "       (declare (in) int arg1))\n"
  2435.    "     ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2436.    "\n"
  2437.    "   (signature ivec4\n"
  2438.    "     (parameters\n"
  2439.    "       (declare (in) ivec4  arg0)\n"
  2440.    "       (declare (in) int arg1))\n"
  2441.    "     ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2442.    "\n"
  2443.    "   (signature uint\n"
  2444.    "     (parameters\n"
  2445.    "       (declare (in) uint arg0)\n"
  2446.    "       (declare (in) uint arg1))\n"
  2447.    "     ((return (expression uint max (var_ref arg0) (var_ref arg1)))))\n"
  2448.    "\n"
  2449.    "   (signature uvec2\n"
  2450.    "     (parameters\n"
  2451.    "       (declare (in) uvec2 arg0)\n"
  2452.    "       (declare (in) uvec2 arg1))\n"
  2453.    "     ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2454.    "\n"
  2455.    "   (signature uvec3\n"
  2456.    "     (parameters\n"
  2457.    "       (declare (in) uvec3 arg0)\n"
  2458.    "       (declare (in) uvec3 arg1))\n"
  2459.    "     ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2460.    "\n"
  2461.    "   (signature uvec4\n"
  2462.    "     (parameters\n"
  2463.    "       (declare (in) uvec4 arg0)\n"
  2464.    "       (declare (in) uvec4 arg1))\n"
  2465.    "     ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2466.    "\n"
  2467.    "   (signature uvec2\n"
  2468.    "     (parameters\n"
  2469.    "       (declare (in) uvec2  arg0)\n"
  2470.    "       (declare (in) uint arg1))\n"
  2471.    "     ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n"
  2472.    "\n"
  2473.    "   (signature uvec3\n"
  2474.    "     (parameters\n"
  2475.    "       (declare (in) uvec3  arg0)\n"
  2476.    "       (declare (in) uint arg1))\n"
  2477.    "     ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n"
  2478.    "\n"
  2479.    "   (signature uvec4\n"
  2480.    "     (parameters\n"
  2481.    "       (declare (in) uvec4  arg0)\n"
  2482.    "       (declare (in) uint arg1))\n"
  2483.    "     ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n"
  2484.    "))\n"
  2485.    ""
  2486. ;
  2487. static const char builtin_min[] =
  2488.    "((function min\n"
  2489.    "   (signature float\n"
  2490.    "     (parameters\n"
  2491.    "       (declare (in) float arg0)\n"
  2492.    "       (declare (in) float arg1))\n"
  2493.    "     ((return (expression float min (var_ref arg0) (var_ref arg1)))))\n"
  2494.    "\n"
  2495.    "   (signature vec2\n"
  2496.    "     (parameters\n"
  2497.    "       (declare (in) vec2 arg0)\n"
  2498.    "       (declare (in) vec2 arg1))\n"
  2499.    "     ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2500.    "\n"
  2501.    "   (signature vec3\n"
  2502.    "     (parameters\n"
  2503.    "       (declare (in) vec3 arg0)\n"
  2504.    "       (declare (in) vec3 arg1))\n"
  2505.    "     ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2506.    "\n"
  2507.    "   (signature vec4\n"
  2508.    "     (parameters\n"
  2509.    "       (declare (in) vec4 arg0)\n"
  2510.    "       (declare (in) vec4 arg1))\n"
  2511.    "     ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2512.    "\n"
  2513.    "   (signature vec2\n"
  2514.    "     (parameters\n"
  2515.    "       (declare (in) vec2  arg0)\n"
  2516.    "       (declare (in) float arg1))\n"
  2517.    "     ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2518.    "\n"
  2519.    "   (signature vec3\n"
  2520.    "     (parameters\n"
  2521.    "       (declare (in) vec3  arg0)\n"
  2522.    "       (declare (in) float arg1))\n"
  2523.    "     ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2524.    "\n"
  2525.    "   (signature vec4\n"
  2526.    "     (parameters\n"
  2527.    "       (declare (in) vec4  arg0)\n"
  2528.    "       (declare (in) float arg1))\n"
  2529.    "     ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2530.    "\n"
  2531.    "   (signature int\n"
  2532.    "     (parameters\n"
  2533.    "       (declare (in) int arg0)\n"
  2534.    "       (declare (in) int arg1))\n"
  2535.    "     ((return (expression int min (var_ref arg0) (var_ref arg1)))))\n"
  2536.    "\n"
  2537.    "   (signature ivec2\n"
  2538.    "     (parameters\n"
  2539.    "       (declare (in) ivec2 arg0)\n"
  2540.    "       (declare (in) ivec2 arg1))\n"
  2541.    "     ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2542.    "\n"
  2543.    "   (signature ivec3\n"
  2544.    "     (parameters\n"
  2545.    "       (declare (in) ivec3 arg0)\n"
  2546.    "       (declare (in) ivec3 arg1))\n"
  2547.    "     ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2548.    "\n"
  2549.    "   (signature ivec4\n"
  2550.    "     (parameters\n"
  2551.    "       (declare (in) ivec4 arg0)\n"
  2552.    "       (declare (in) ivec4 arg1))\n"
  2553.    "     ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2554.    "\n"
  2555.    "   (signature ivec2\n"
  2556.    "     (parameters\n"
  2557.    "       (declare (in) ivec2  arg0)\n"
  2558.    "       (declare (in) int arg1))\n"
  2559.    "     ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2560.    "\n"
  2561.    "   (signature ivec3\n"
  2562.    "     (parameters\n"
  2563.    "       (declare (in) ivec3  arg0)\n"
  2564.    "       (declare (in) int arg1))\n"
  2565.    "     ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2566.    "\n"
  2567.    "   (signature ivec4\n"
  2568.    "     (parameters\n"
  2569.    "       (declare (in) ivec4  arg0)\n"
  2570.    "       (declare (in) int arg1))\n"
  2571.    "     ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2572.    "\n"
  2573.    "   (signature uint\n"
  2574.    "     (parameters\n"
  2575.    "       (declare (in) uint arg0)\n"
  2576.    "       (declare (in) uint arg1))\n"
  2577.    "     ((return (expression uint min (var_ref arg0) (var_ref arg1)))))\n"
  2578.    "\n"
  2579.    "   (signature uvec2\n"
  2580.    "     (parameters\n"
  2581.    "       (declare (in) uvec2 arg0)\n"
  2582.    "       (declare (in) uvec2 arg1))\n"
  2583.    "     ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2584.    "\n"
  2585.    "   (signature uvec3\n"
  2586.    "     (parameters\n"
  2587.    "       (declare (in) uvec3 arg0)\n"
  2588.    "       (declare (in) uvec3 arg1))\n"
  2589.    "     ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2590.    "\n"
  2591.    "   (signature uvec4\n"
  2592.    "     (parameters\n"
  2593.    "       (declare (in) uvec4 arg0)\n"
  2594.    "       (declare (in) uvec4 arg1))\n"
  2595.    "     ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2596.    "\n"
  2597.    "   (signature uvec2\n"
  2598.    "     (parameters\n"
  2599.    "       (declare (in) uvec2  arg0)\n"
  2600.    "       (declare (in) uint arg1))\n"
  2601.    "     ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n"
  2602.    "\n"
  2603.    "   (signature uvec3\n"
  2604.    "     (parameters\n"
  2605.    "       (declare (in) uvec3  arg0)\n"
  2606.    "       (declare (in) uint arg1))\n"
  2607.    "     ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n"
  2608.    "\n"
  2609.    "   (signature uvec4\n"
  2610.    "     (parameters\n"
  2611.    "       (declare (in) uvec4  arg0)\n"
  2612.    "       (declare (in) uint arg1))\n"
  2613.    "     ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n"
  2614.    "))\n"
  2615.    ""
  2616. ;
  2617. static const char builtin_mix[] =
  2618.    "((function mix\n"
  2619.    "   (signature float\n"
  2620.    "     (parameters\n"
  2621.    "       (declare (in) float arg0)\n"
  2622.    "       (declare (in) float arg1)\n"
  2623.    "       (declare (in) float arg2))\n"
  2624.    "     ((return (expression float lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2625.    "\n"
  2626.    "   (signature vec2\n"
  2627.    "     (parameters\n"
  2628.    "       (declare (in) vec2 arg0)\n"
  2629.    "       (declare (in) vec2 arg1)\n"
  2630.    "       (declare (in) vec2 arg2))\n"
  2631.    "     ((return (expression vec2 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2632.    "\n"
  2633.    "   (signature vec3\n"
  2634.    "     (parameters\n"
  2635.    "       (declare (in) vec3 arg0)\n"
  2636.    "       (declare (in) vec3 arg1)\n"
  2637.    "       (declare (in) vec3 arg2))\n"
  2638.    "     ((return (expression vec3 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2639.    "\n"
  2640.    "   (signature vec4\n"
  2641.    "     (parameters\n"
  2642.    "       (declare (in) vec4 arg0)\n"
  2643.    "       (declare (in) vec4 arg1)\n"
  2644.    "       (declare (in) vec4 arg2))\n"
  2645.    "     ((return (expression vec4 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2646.    "\n"
  2647.    "   (signature vec2\n"
  2648.    "     (parameters\n"
  2649.    "       (declare (in) vec2 arg0)\n"
  2650.    "       (declare (in) vec2 arg1)\n"
  2651.    "       (declare (in) float arg2))\n"
  2652.    "     ((return (expression vec2 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2653.    "\n"
  2654.    "   (signature vec3\n"
  2655.    "     (parameters\n"
  2656.    "       (declare (in) vec3 arg0)\n"
  2657.    "       (declare (in) vec3 arg1)\n"
  2658.    "       (declare (in) float arg2))\n"
  2659.    "     ((return (expression vec3 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2660.    "\n"
  2661.    "   (signature vec4\n"
  2662.    "     (parameters\n"
  2663.    "       (declare (in) vec4 arg0)\n"
  2664.    "       (declare (in) vec4 arg1)\n"
  2665.    "       (declare (in) float arg2))\n"
  2666.    "     ((return (expression vec4 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))\n"
  2667.    "\n"
  2668.    "   (signature float\n"
  2669.    "     (parameters\n"
  2670.    "       (declare (in) float v1)\n"
  2671.    "       (declare (in) float v2)\n"
  2672.    "       (declare (in) bool  a))\n"
  2673.    "     ((assign (var_ref a) (x) (var_ref v1) (var_ref v2))\n"
  2674.    "      (return (var_ref v1))))\n"
  2675.    "\n"
  2676.    "   (signature vec2\n"
  2677.    "     (parameters\n"
  2678.    "       (declare (in) vec2 v1)\n"
  2679.    "       (declare (in) vec2 v2)\n"
  2680.    "       (declare (in) bvec2 a))\n"
  2681.    "     ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
  2682.    "      (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
  2683.    "      (return (var_ref v1))))\n"
  2684.    "\n"
  2685.    "   (signature vec3\n"
  2686.    "     (parameters\n"
  2687.    "       (declare (in) vec3 v1)\n"
  2688.    "       (declare (in) vec3 v2)\n"
  2689.    "       (declare (in) bvec3 a))\n"
  2690.    "     ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
  2691.    "      (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
  2692.    "      (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n"
  2693.    "      (return (var_ref v1))))\n"
  2694.    "\n"
  2695.    "   (signature vec4\n"
  2696.    "     (parameters\n"
  2697.    "       (declare (in) vec4 v1)\n"
  2698.    "       (declare (in) vec4 v2)\n"
  2699.    "       (declare (in) bvec4 a))\n"
  2700.    "     ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n"
  2701.    "      (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n"
  2702.    "      (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n"
  2703.    "      (assign (swiz w (var_ref a)) (w) (var_ref v1) (swiz w (var_ref v2)))\n"
  2704.    "      (return (var_ref v1))))\n"
  2705.    "))\n"
  2706.    ""
  2707. ;
  2708. static const char builtin_mod[] =
  2709.    "((function mod\n"
  2710.    "   (signature float\n"
  2711.    "     (parameters\n"
  2712.    "       (declare (in) float arg0)\n"
  2713.    "       (declare (in) float arg1))\n"
  2714.    "     ((return (expression float % (var_ref arg0) (var_ref arg1)))))\n"
  2715.    "\n"
  2716.    "   (signature vec2\n"
  2717.    "     (parameters\n"
  2718.    "       (declare (in) vec2 arg0)\n"
  2719.    "       (declare (in) vec2 arg1))\n"
  2720.    "     ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n"
  2721.    "\n"
  2722.    "   (signature vec3\n"
  2723.    "     (parameters\n"
  2724.    "       (declare (in) vec3 arg0)\n"
  2725.    "       (declare (in) vec3 arg1))\n"
  2726.    "     ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n"
  2727.    "\n"
  2728.    "   (signature vec4\n"
  2729.    "     (parameters\n"
  2730.    "       (declare (in) vec4 arg0)\n"
  2731.    "       (declare (in) vec4 arg1))\n"
  2732.    "     ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n"
  2733.    "\n"
  2734.    "   (signature vec2\n"
  2735.    "     (parameters\n"
  2736.    "       (declare (in) vec2  arg0)\n"
  2737.    "       (declare (in) float arg1))\n"
  2738.    "     ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n"
  2739.    "\n"
  2740.    "   (signature vec3\n"
  2741.    "     (parameters\n"
  2742.    "       (declare (in) vec3  arg0)\n"
  2743.    "       (declare (in) float arg1))\n"
  2744.    "     ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n"
  2745.    "\n"
  2746.    "   (signature vec4\n"
  2747.    "     (parameters\n"
  2748.    "       (declare (in) vec4  arg0)\n"
  2749.    "       (declare (in) float arg1))\n"
  2750.    "     ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n"
  2751.    "))\n"
  2752.    ""
  2753. ;
  2754. static const char builtin_modf[] =
  2755.    "((function modf\n"
  2756.    "   (signature float\n"
  2757.    "     (parameters\n"
  2758.    "       (declare (in)  float x)\n"
  2759.    "       (declare (out) float i))\n"
  2760.    "     ((declare () float t)\n"
  2761.    "      (assign (x) (var_ref t) (expression float trunc (var_ref x)))\n"
  2762.    "      (assign (x) (var_ref i) (var_ref t))\n"
  2763.    "      (return (expression float - (var_ref x) (var_ref t)))))\n"
  2764.    "\n"
  2765.    "   (signature vec2\n"
  2766.    "     (parameters\n"
  2767.    "       (declare (in)  vec2 x)\n"
  2768.    "       (declare (out) vec2 i))\n"
  2769.    "     ((declare () vec2 t)\n"
  2770.    "      (assign (xy) (var_ref t) (expression vec2 trunc (var_ref x)))\n"
  2771.    "      (assign (xy) (var_ref i) (var_ref t))\n"
  2772.    "      (return (expression vec2 - (var_ref x) (var_ref t)))))\n"
  2773.    "\n"
  2774.    "   (signature vec3\n"
  2775.    "     (parameters\n"
  2776.    "       (declare (in)  vec3 x)\n"
  2777.    "       (declare (out) vec3 i))\n"
  2778.    "     ((declare () vec3 t)\n"
  2779.    "      (assign (xyz) (var_ref t) (expression vec3 trunc (var_ref x)))\n"
  2780.    "      (assign (xyz) (var_ref i) (var_ref t))\n"
  2781.    "      (return (expression vec3 - (var_ref x) (var_ref t)))))\n"
  2782.    "\n"
  2783.    "   (signature vec4\n"
  2784.    "     (parameters\n"
  2785.    "       (declare (in)  vec4 x)\n"
  2786.    "       (declare (out) vec4 i))\n"
  2787.    "     ((declare () vec4 t)\n"
  2788.    "      (assign (xyzw) (var_ref t) (expression vec4 trunc (var_ref x)))\n"
  2789.    "      (assign (xyzw) (var_ref i) (var_ref t))\n"
  2790.    "      (return (expression vec4 - (var_ref x) (var_ref t)))))\n"
  2791.    "))\n"
  2792.    ""
  2793. ;
  2794. static const char builtin_noise1[] =
  2795.    "((function noise1\n"
  2796.    "   (signature float\n"
  2797.    "     (parameters\n"
  2798.    "       (declare (in) float x))\n"
  2799.    "     ((return (expression float noise (var_ref x)))))\n"
  2800.    "   (signature float\n"
  2801.    "     (parameters\n"
  2802.    "       (declare (in) vec2 x))\n"
  2803.    "     ((return (expression float noise (var_ref x)))))\n"
  2804.    "   (signature float\n"
  2805.    "     (parameters\n"
  2806.    "       (declare (in) vec3 x))\n"
  2807.    "     ((return (expression float noise (var_ref x)))))\n"
  2808.    "   (signature float\n"
  2809.    "     (parameters\n"
  2810.    "       (declare (in) vec4 x))\n"
  2811.    "     ((return (expression float noise (var_ref x)))))\n"
  2812.    "))\n"
  2813.    ""
  2814. ;
  2815. static const char builtin_noise2[] =
  2816.    "((function noise2\n"
  2817.    "  (signature vec2\n"
  2818.    "    (parameters (declare (in) vec4 p))\n"
  2819.    "    (\n"
  2820.    "      (declare () float a)\n"
  2821.    "      (declare () float b)\n"
  2822.    "      (declare () vec2 t)\n"
  2823.    "\n"
  2824.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2825.    "      (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
  2826.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2827.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2828.    "      (return (var_ref t))\n"
  2829.    "    ))\n"
  2830.    "\n"
  2831.    "  (signature vec2\n"
  2832.    "    (parameters (declare (in) vec3 p))\n"
  2833.    "    (\n"
  2834.    "      (declare () float a)\n"
  2835.    "      (declare () float b)\n"
  2836.    "      (declare () vec2 t)\n"
  2837.    "\n"
  2838.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2839.    "      (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
  2840.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2841.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2842.    "      (return (var_ref t))\n"
  2843.    "    ))\n"
  2844.    "\n"
  2845.    "  (signature vec2\n"
  2846.    "    (parameters\n"
  2847.    "      (declare (in ) vec2 p)\n"
  2848.    "    )\n"
  2849.    "    (\n"
  2850.    "      (declare () float a)\n"
  2851.    "      (declare () float b)\n"
  2852.    "      (declare () vec2 t)\n"
  2853.    "\n"
  2854.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2855.    "      (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
  2856.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2857.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2858.    "      (return (var_ref t))\n"
  2859.    "    ))\n"
  2860.    "\n"
  2861.    "  (signature vec2\n"
  2862.    "    (parameters\n"
  2863.    "      (declare (in ) float p)\n"
  2864.    "    )\n"
  2865.    "    (\n"
  2866.    "      (declare () float a)\n"
  2867.    "      (declare () float b)\n"
  2868.    "      (declare () vec2 t)\n"
  2869.    "\n"
  2870.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2871.    "      (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n"
  2872.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2873.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2874.    "      (return (var_ref t))\n"
  2875.    "    ))\n"
  2876.    "))\n"
  2877.    ""
  2878. ;
  2879. static const char builtin_noise3[] =
  2880.    "((function noise3\n"
  2881.    "  (signature vec3\n"
  2882.    "    (parameters (declare (in) vec4 p))\n"
  2883.    "    (\n"
  2884.    "      (declare () float a)\n"
  2885.    "      (declare () float b)\n"
  2886.    "      (declare () float c)\n"
  2887.    "      (declare () vec3 t)\n"
  2888.    "\n"
  2889.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2890.    "      (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
  2891.    "      (assign (x) (var_ref c) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0)))))\n"
  2892.    "\n"
  2893.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2894.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2895.    "      (assign (z) (var_ref t) (var_ref c))\n"
  2896.    "      (return (var_ref t))\n"
  2897.    "    ))\n"
  2898.    "\n"
  2899.    "  (signature vec3\n"
  2900.    "    (parameters (declare (in) vec3 p))\n"
  2901.    "    (\n"
  2902.    "      (declare () float a)\n"
  2903.    "      (declare () float b)\n"
  2904.    "      (declare () float c)\n"
  2905.    "      (declare () vec3 t)\n"
  2906.    "\n"
  2907.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2908.    "      (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
  2909.    "      (assign (x) (var_ref c) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0)))))\n"
  2910.    "\n"
  2911.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2912.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2913.    "      (assign (z) (var_ref t) (var_ref c))\n"
  2914.    "      (return (var_ref t))\n"
  2915.    "    ))\n"
  2916.    "\n"
  2917.    "  (signature vec3\n"
  2918.    "    (parameters (declare (in) vec2 p))\n"
  2919.    "    (\n"
  2920.    "      (declare () float a)\n"
  2921.    "      (declare () float b)\n"
  2922.    "      (declare () float c)\n"
  2923.    "      (declare () vec3 t)\n"
  2924.    "\n"
  2925.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2926.    "      (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
  2927.    "      (assign (x) (var_ref c) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0)))))\n"
  2928.    "\n"
  2929.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2930.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2931.    "      (assign (z) (var_ref t) (var_ref c))\n"
  2932.    "      (return (var_ref t))\n"
  2933.    "    ))\n"
  2934.    "\n"
  2935.    "  (signature vec3\n"
  2936.    "    (parameters (declare (in) float p))\n"
  2937.    "    (\n"
  2938.    "      (declare () float a)\n"
  2939.    "      (declare () float b)\n"
  2940.    "      (declare () float c)\n"
  2941.    "      (declare () vec3 t)\n"
  2942.    "\n"
  2943.    "      (assign (x) (var_ref a) (expression float noise (var_ref p)))\n"
  2944.    "      (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n"
  2945.    "      (assign (x) (var_ref c) (expression float noise (expression float + (var_ref p) (constant float (1559.0)))))\n"
  2946.    "\n"
  2947.    "      (assign (x) (var_ref t) (var_ref a))\n"
  2948.    "      (assign (y) (var_ref t) (var_ref b))\n"
  2949.    "      (assign (z) (var_ref t) (var_ref c))\n"
  2950.    "      (return (var_ref t))\n"
  2951.    "    ))\n"
  2952.    "))\n"
  2953.    ""
  2954. ;
  2955. static const char builtin_noise4[] =
  2956.    "((function noise4\n"
  2957.    "  (signature vec4\n"
  2958.    "    (parameters (declare (in) vec4 p))\n"
  2959.    "    (\n"
  2960.    "      (declare () float _x)\n"
  2961.    "      (declare () float _y)\n"
  2962.    "      (declare () float _z)\n"
  2963.    "      (declare () float _w)\n"
  2964.    "      (declare () vec4 _r)\n"
  2965.    "\n"
  2966.    "      (declare () vec4 _p)\n"
  2967.    "      (assign (xyzw) (var_ref _p) (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0))) )\n"
  2968.    "\n"
  2969.    "      (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
  2970.    "      (assign (x) (var_ref _y) (expression float noise(expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
  2971.    "      (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
  2972.    "      (assign (x) (var_ref _w) (expression float noise(expression vec4 + (var_ref _p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n"
  2973.    "\n"
  2974.    "      (assign (x) (var_ref _r) (var_ref _x))\n"
  2975.    "      (assign (y) (var_ref _r) (var_ref _y))\n"
  2976.    "      (assign (z) (var_ref _r) (var_ref _z))\n"
  2977.    "      (assign (w) (var_ref _r) (var_ref _w))\n"
  2978.    "      (return (var_ref _r))\n"
  2979.    "    ))\n"
  2980.    "\n"
  2981.    "  (signature vec4\n"
  2982.    "    (parameters (declare (in) vec3 p))\n"
  2983.    "    (\n"
  2984.    "      (declare () float _x)\n"
  2985.    "      (declare () float _y)\n"
  2986.    "      (declare () float _z)\n"
  2987.    "      (declare () float _w)\n"
  2988.    "      (declare () vec4 _r)\n"
  2989.    "\n"
  2990.    "      (declare () vec3 _p)\n"
  2991.    "      (assign (xyz) (var_ref _p) (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0))) )\n"
  2992.    "\n"
  2993.    "      (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
  2994.    "      (assign (x) (var_ref _y) (expression float noise(expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n"
  2995.    "      (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
  2996.    "      (assign (x) (var_ref _w) (expression float noise(expression vec3 + (var_ref _p) (constant vec3 (601.0 313.0 29.0)))))\n"
  2997.    "\n"
  2998.    "      (assign (x) (var_ref _r) (var_ref _x))\n"
  2999.    "      (assign (y) (var_ref _r) (var_ref _y))\n"
  3000.    "      (assign (z) (var_ref _r) (var_ref _z))\n"
  3001.    "      (assign (w) (var_ref _r) (var_ref _w))\n"
  3002.    "      (return (var_ref _r))\n"
  3003.    "    ))\n"
  3004.    "\n"
  3005.    "  (signature vec4\n"
  3006.    "    (parameters (declare (in) vec2 p))\n"
  3007.    "    (\n"
  3008.    "      (declare () float _x)\n"
  3009.    "      (declare () float _y)\n"
  3010.    "      (declare () float _z)\n"
  3011.    "      (declare () float _w)\n"
  3012.    "      (declare () vec4 _r)\n"
  3013.    "\n"
  3014.    "      (declare () vec2 _p)\n"
  3015.    "      (assign (xy) (var_ref _p) (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0))) )\n"
  3016.    "\n"
  3017.    "      (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
  3018.    "      (assign (x) (var_ref _y) (expression float noise(expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n"
  3019.    "      (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
  3020.    "      (assign (x) (var_ref _w) (expression float noise(expression vec2 + (var_ref _p) (constant vec2 (601.0 313.0)))))\n"
  3021.    "\n"
  3022.    "      (assign (x) (var_ref _r) (var_ref _x))\n"
  3023.    "      (assign (y) (var_ref _r) (var_ref _y))\n"
  3024.    "      (assign (z) (var_ref _r) (var_ref _z))\n"
  3025.    "      (assign (w) (var_ref _r) (var_ref _w))\n"
  3026.    "      (return (var_ref _r))\n"
  3027.    "    ))\n"
  3028.    "\n"
  3029.    "  (signature vec4\n"
  3030.    "    (parameters (declare (in) float p))\n"
  3031.    "    (\n"
  3032.    "      (declare () float _x)\n"
  3033.    "      (declare () float _y)\n"
  3034.    "      (declare () float _z)\n"
  3035.    "      (declare () float _w)\n"
  3036.    "      (declare () vec4 _r)\n"
  3037.    "\n"
  3038.    "      (declare () float _p)\n"
  3039.    "      (assign (x) (var_ref _p) (expression float + (var_ref p) (constant float (1559.0))) )\n"
  3040.    "\n"
  3041.    "      (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n"
  3042.    "      (assign (x) (var_ref _y) (expression float noise(expression float + (var_ref p) (constant float (601.0)))))\n"
  3043.    "      (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n"
  3044.    "      (assign (x) (var_ref _w) (expression float noise(expression float + (var_ref _p) (constant float (601.0)))))\n"
  3045.    "\n"
  3046.    "      (assign (x) (var_ref _r) (var_ref _x))\n"
  3047.    "      (assign (y) (var_ref _r) (var_ref _y))\n"
  3048.    "      (assign (z) (var_ref _r) (var_ref _z))\n"
  3049.    "      (assign (w) (var_ref _r) (var_ref _w))\n"
  3050.    "      (return (var_ref _r))\n"
  3051.    "    ))\n"
  3052.    "))\n"
  3053.    ""
  3054. ;
  3055. static const char builtin_normalize[] =
  3056.    "((function normalize\n"
  3057.    "   (signature float\n"
  3058.    "     (parameters\n"
  3059.    "       (declare (in) float arg0))\n"
  3060.    "     ((return (expression float sign (var_ref arg0)))))\n"
  3061.    "\n"
  3062.    "   (signature vec2\n"
  3063.    "     (parameters\n"
  3064.    "       (declare (in) vec2 arg0))\n"
  3065.    "     ((return (expression vec2 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
  3066.    "\n"
  3067.    "   (signature vec3\n"
  3068.    "     (parameters\n"
  3069.    "       (declare (in) vec3 arg0))\n"
  3070.    "     ((return (expression vec3 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
  3071.    "\n"
  3072.    "   (signature vec4\n"
  3073.    "     (parameters\n"
  3074.    "       (declare (in) vec4 arg0))\n"
  3075.    "     ((return (expression vec4 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n"
  3076.    "))\n"
  3077.    ""
  3078. ;
  3079. static const char builtin_not[] =
  3080.    "((function not\n"
  3081.    "   (signature bvec2\n"
  3082.    "     (parameters\n"
  3083.    "       (declare (in) bvec2 arg0))\n"
  3084.    "     ((return (expression bvec2 ! (var_ref arg0)))))\n"
  3085.    "\n"
  3086.    "   (signature bvec3\n"
  3087.    "     (parameters\n"
  3088.    "       (declare (in) bvec3 arg0))\n"
  3089.    "     ((return (expression bvec3 ! (var_ref arg0)))))\n"
  3090.    "\n"
  3091.    "   (signature bvec4\n"
  3092.    "     (parameters\n"
  3093.    "       (declare (in) bvec4 arg0))\n"
  3094.    "     ((return (expression bvec4 ! (var_ref arg0)))))\n"
  3095.    "))\n"
  3096.    ""
  3097. ;
  3098. static const char builtin_notEqual[] =
  3099.    "((function notEqual\n"
  3100.    "   (signature bvec2\n"
  3101.    "     (parameters\n"
  3102.    "       (declare (in) vec2 arg0)\n"
  3103.    "       (declare (in) vec2 arg1))\n"
  3104.    "     ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
  3105.    "\n"
  3106.    "   (signature bvec3\n"
  3107.    "     (parameters\n"
  3108.    "       (declare (in) vec3 arg0)\n"
  3109.    "       (declare (in) vec3 arg1))\n"
  3110.    "     ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
  3111.    "\n"
  3112.    "   (signature bvec4\n"
  3113.    "     (parameters\n"
  3114.    "       (declare (in) vec4 arg0)\n"
  3115.    "       (declare (in) vec4 arg1))\n"
  3116.    "     ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
  3117.    "\n"
  3118.    "   (signature bvec2\n"
  3119.    "     (parameters\n"
  3120.    "       (declare (in) bvec2 arg0)\n"
  3121.    "       (declare (in) bvec2 arg1))\n"
  3122.    "     ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
  3123.    "\n"
  3124.    "   (signature bvec3\n"
  3125.    "     (parameters\n"
  3126.    "       (declare (in) bvec3 arg0)\n"
  3127.    "       (declare (in) bvec3 arg1))\n"
  3128.    "     ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
  3129.    "\n"
  3130.    "   (signature bvec4\n"
  3131.    "     (parameters\n"
  3132.    "       (declare (in) bvec4 arg0)\n"
  3133.    "       (declare (in) bvec4 arg1))\n"
  3134.    "     ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
  3135.    "\n"
  3136.    "   (signature bvec2\n"
  3137.    "     (parameters\n"
  3138.    "       (declare (in) ivec2 arg0)\n"
  3139.    "       (declare (in) ivec2 arg1))\n"
  3140.    "     ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
  3141.    "\n"
  3142.    "   (signature bvec3\n"
  3143.    "     (parameters\n"
  3144.    "       (declare (in) ivec3 arg0)\n"
  3145.    "       (declare (in) ivec3 arg1))\n"
  3146.    "     ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
  3147.    "\n"
  3148.    "   (signature bvec4\n"
  3149.    "     (parameters\n"
  3150.    "       (declare (in) ivec4 arg0)\n"
  3151.    "       (declare (in) ivec4 arg1))\n"
  3152.    "     ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
  3153.    "\n"
  3154.    "   (signature bvec2\n"
  3155.    "     (parameters\n"
  3156.    "       (declare (in) uvec2 arg0)\n"
  3157.    "       (declare (in) uvec2 arg1))\n"
  3158.    "     ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n"
  3159.    "\n"
  3160.    "   (signature bvec3\n"
  3161.    "     (parameters\n"
  3162.    "       (declare (in) uvec3 arg0)\n"
  3163.    "       (declare (in) uvec3 arg1))\n"
  3164.    "     ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n"
  3165.    "\n"
  3166.    "   (signature bvec4\n"
  3167.    "     (parameters\n"
  3168.    "       (declare (in) uvec4 arg0)\n"
  3169.    "       (declare (in) uvec4 arg1))\n"
  3170.    "     ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n"
  3171.    "))\n"
  3172.    ""
  3173. ;
  3174. static const char builtin_outerProduct[] =
  3175.    "((function outerProduct\n"
  3176.    "   (signature mat2\n"
  3177.    "     (parameters\n"
  3178.    "       (declare (in) vec2 u)\n"
  3179.    "       (declare (in) vec2 v))\n"
  3180.    "     ((declare () mat2 m)\n"
  3181.    "      (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
  3182.    "      (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
  3183.    "      (return (var_ref m))))\n"
  3184.    "\n"
  3185.    "   (signature mat2x3\n"
  3186.    "     (parameters\n"
  3187.    "       (declare (in) vec3 u)\n"
  3188.    "       (declare (in) vec2 v))\n"
  3189.    "     ((declare () mat2x3 m)\n"
  3190.    "      (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
  3191.    "      (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
  3192.    "      (return (var_ref m))))\n"
  3193.    "\n"
  3194.    "   (signature mat2x4\n"
  3195.    "     (parameters\n"
  3196.    "       (declare (in) vec4 u)\n"
  3197.    "       (declare (in) vec2 v))\n"
  3198.    "     ((declare () mat2x4 m)\n"
  3199.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
  3200.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
  3201.    "      (return (var_ref m))))\n"
  3202.    "\n"
  3203.    "   (signature mat3x2\n"
  3204.    "     (parameters\n"
  3205.    "       (declare (in) vec2 u)\n"
  3206.    "       (declare (in) vec3 v))\n"
  3207.    "     ((declare () mat3x2 m)\n"
  3208.    "      (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
  3209.    "      (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
  3210.    "      (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n"
  3211.    "      (return (var_ref m))\n"
  3212.    " ))\n"
  3213.    "\n"
  3214.    "   (signature mat3\n"
  3215.    "     (parameters\n"
  3216.    "       (declare (in) vec3 u)\n"
  3217.    "       (declare (in) vec3 v))\n"
  3218.    "     ((declare () mat3 m)\n"
  3219.    "      (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
  3220.    "      (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
  3221.    "      (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n"
  3222.    "      (return (var_ref m))))\n"
  3223.    "\n"
  3224.    "   (signature mat3x4\n"
  3225.    "     (parameters\n"
  3226.    "       (declare (in) vec4 u)\n"
  3227.    "       (declare (in) vec3 v))\n"
  3228.    "     ((declare () mat3x4 m)\n"
  3229.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
  3230.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
  3231.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n"
  3232.    "      (return (var_ref m))))\n"
  3233.    "\n"
  3234.    "   (signature mat4x2\n"
  3235.    "     (parameters\n"
  3236.    "       (declare (in) vec2 u)\n"
  3237.    "       (declare (in) vec4 v))\n"
  3238.    "     ((declare () mat4x2 m)\n"
  3239.    "      (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n"
  3240.    "      (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n"
  3241.    "      (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n"
  3242.    "      (assign (xy) (array_ref (var_ref m) (constant int (3))) (expression vec2 * (var_ref u) (swiz w (var_ref v))))\n"
  3243.    "      (return (var_ref m))))\n"
  3244.    "\n"
  3245.    "   (signature mat4x3\n"
  3246.    "     (parameters\n"
  3247.    "       (declare (in) vec3 u)\n"
  3248.    "       (declare (in) vec4 v))\n"
  3249.    "     ((declare () mat4x3 m)\n"
  3250.    "      (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n"
  3251.    "      (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n"
  3252.    "      (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n"
  3253.    "      (assign (xyz) (array_ref (var_ref m) (constant int (3))) (expression vec3 * (var_ref u) (swiz w (var_ref v))))\n"
  3254.    "      (return (var_ref m))))\n"
  3255.    "\n"
  3256.    "   (signature mat4\n"
  3257.    "     (parameters\n"
  3258.    "       (declare (in) vec4 u)\n"
  3259.    "       (declare (in) vec4 v))\n"
  3260.    "     ((declare () mat4 m)\n"
  3261.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n"
  3262.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n"
  3263.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n"
  3264.    "      (assign (xyzw) (array_ref (var_ref m) (constant int (3))) (expression vec4 * (var_ref u) (swiz w (var_ref v))))\n"
  3265.    "      (return (var_ref m))))\n"
  3266.    "))\n"
  3267.    ""
  3268. ;
  3269. static const char builtin_packHalf2x16[] =
  3270.    "((function packHalf2x16\n"
  3271.    "   (signature uint\n"
  3272.    "     (parameters\n"
  3273.    "       (declare (in) vec2 arg0))\n"
  3274.    "     ((return (expression uint packHalf2x16 (var_ref arg0)))))\n"
  3275.    "))\n"
  3276.    ""
  3277. ;
  3278. static const char builtin_packSnorm2x16[] =
  3279.    "((function packSnorm2x16\n"
  3280.    "   (signature uint\n"
  3281.    "     (parameters\n"
  3282.    "       (declare (in) vec2 arg0))\n"
  3283.    "     ((return (expression uint packSnorm2x16 (var_ref arg0)))))\n"
  3284.    "))\n"
  3285.    ""
  3286. ;
  3287. static const char builtin_packSnorm4x8[] =
  3288.    "((function packSnorm4x8\n"
  3289.    "   (signature uint\n"
  3290.    "     (parameters\n"
  3291.    "       (declare (in) vec4 arg0))\n"
  3292.    "     ((return (expression uint packSnorm4x8 (var_ref arg0)))))\n"
  3293.    "))\n"
  3294.    ""
  3295. ;
  3296. static const char builtin_packUnorm2x16[] =
  3297.    "((function packUnorm2x16\n"
  3298.    "   (signature uint\n"
  3299.    "     (parameters\n"
  3300.    "       (declare (in) vec2 arg0))\n"
  3301.    "     ((return (expression uint packUnorm2x16 (var_ref arg0)))))\n"
  3302.    "))\n"
  3303.    ""
  3304. ;
  3305. static const char builtin_packUnorm4x8[] =
  3306.    "((function packUnorm4x8\n"
  3307.    "   (signature uint\n"
  3308.    "     (parameters\n"
  3309.    "       (declare (in) vec4 arg0))\n"
  3310.    "     ((return (expression uint packUnorm4x8 (var_ref arg0)))))\n"
  3311.    "))\n"
  3312.    ""
  3313. ;
  3314. static const char builtin_pow[] =
  3315.    "((function pow\n"
  3316.    "   (signature float\n"
  3317.    "     (parameters\n"
  3318.    "       (declare (in) float arg0)\n"
  3319.    "       (declare (in) float arg1))\n"
  3320.    "     ((return (expression float pow (var_ref arg0) (var_ref arg1)))))\n"
  3321.    "\n"
  3322.    "   (signature vec2\n"
  3323.    "     (parameters\n"
  3324.    "       (declare (in) vec2 arg0)\n"
  3325.    "       (declare (in) vec2 arg1))\n"
  3326.    "     ((return (expression vec2 pow (var_ref arg0) (var_ref arg1)))))\n"
  3327.    "\n"
  3328.    "   (signature vec3\n"
  3329.    "     (parameters\n"
  3330.    "       (declare (in) vec3 arg0)\n"
  3331.    "       (declare (in) vec3 arg1))\n"
  3332.    "     ((return (expression vec3 pow (var_ref arg0) (var_ref arg1)))))\n"
  3333.    "\n"
  3334.    "   (signature vec4\n"
  3335.    "     (parameters\n"
  3336.    "       (declare (in) vec4 arg0)\n"
  3337.    "       (declare (in) vec4 arg1))\n"
  3338.    "     ((return (expression vec4 pow (var_ref arg0) (var_ref arg1)))))\n"
  3339.    "))\n"
  3340.    ""
  3341. ;
  3342. static const char builtin_radians[] =
  3343.    "((function radians\n"
  3344.    "   (signature float\n"
  3345.    "     (parameters\n"
  3346.    "       (declare (in) float arg0))\n"
  3347.    "     ((return (expression float * (var_ref arg0) (constant float (0.0174532925))))))\n"
  3348.    "\n"
  3349.    "   (signature vec2\n"
  3350.    "     (parameters\n"
  3351.    "       (declare (in) vec2 arg0))\n"
  3352.    "     ((return (expression vec2 * (var_ref arg0) (constant float (0.0174532925))))))\n"
  3353.    "\n"
  3354.    "   (signature vec3\n"
  3355.    "     (parameters\n"
  3356.    "       (declare (in) vec3 arg0))\n"
  3357.    "     ((return (expression vec3 * (var_ref arg0) (constant float (0.0174532925))))))\n"
  3358.    "\n"
  3359.    "   (signature vec4\n"
  3360.    "     (parameters\n"
  3361.    "       (declare (in) vec4 arg0))\n"
  3362.    "     ((return (expression vec4 * (var_ref arg0) (constant float (0.0174532925))))))\n"
  3363.    "))\n"
  3364.    ""
  3365. ;
  3366. static const char builtin_reflect[] =
  3367.    "((function reflect\n"
  3368.    "   (signature float\n"
  3369.    "     (parameters\n"
  3370.    "       (declare (in) float i)\n"
  3371.    "       (declare (in) float n))\n"
  3372.    "     ((return (expression float -\n"
  3373.    "           (var_ref i)\n"
  3374.    "           (expression float *\n"
  3375.    "            (constant float (2.0))\n"
  3376.    "            (expression float *\n"
  3377.    "             (expression float *\n"
  3378.    "              (var_ref n)\n"
  3379.    "              (var_ref i))\n"
  3380.    "             (var_ref n)))))))\n"
  3381.    "\n"
  3382.    "   (signature vec2\n"
  3383.    "     (parameters\n"
  3384.    "       (declare (in) vec2 i)\n"
  3385.    "       (declare (in) vec2 n))\n"
  3386.    "     ((return (expression vec2 -\n"
  3387.    "           (var_ref i)\n"
  3388.    "           (expression vec2 *\n"
  3389.    "            (constant float (2.0))\n"
  3390.    "            (expression vec2 *\n"
  3391.    "             (expression float dot\n"
  3392.    "              (var_ref n)\n"
  3393.    "              (var_ref i))\n"
  3394.    "             (var_ref n)))))))\n"
  3395.    "\n"
  3396.    "   (signature vec3\n"
  3397.    "     (parameters\n"
  3398.    "       (declare (in) vec3 i)\n"
  3399.    "       (declare (in) vec3 n))\n"
  3400.    "     ((return (expression vec3 -\n"
  3401.    "           (var_ref i)\n"
  3402.    "           (expression vec3 *\n"
  3403.    "            (constant float (2.0))\n"
  3404.    "            (expression vec3 *\n"
  3405.    "             (expression float dot\n"
  3406.    "              (var_ref n)\n"
  3407.    "              (var_ref i))\n"
  3408.    "             (var_ref n)))))))\n"
  3409.    "\n"
  3410.    "   (signature vec4\n"
  3411.    "     (parameters\n"
  3412.    "       (declare (in) vec4 i)\n"
  3413.    "       (declare (in) vec4 n))\n"
  3414.    "     ((return (expression vec4 -\n"
  3415.    "           (var_ref i)\n"
  3416.    "           (expression vec4 *\n"
  3417.    "            (constant float (2.0))\n"
  3418.    "            (expression vec4 *\n"
  3419.    "             (expression float dot\n"
  3420.    "              (var_ref n)\n"
  3421.    "              (var_ref i))\n"
  3422.    "             (var_ref n)))))))\n"
  3423.    "\n"
  3424.    "))\n"
  3425.    ""
  3426. ;
  3427. static const char builtin_refract[] =
  3428.    "((function refract\n"
  3429.    "   (signature float\n"
  3430.    "     (parameters\n"
  3431.    "       (declare (in) float i)\n"
  3432.    "       (declare (in) float n)\n"
  3433.    "       (declare (in) float eta))\n"
  3434.    "     ((declare () float k)\n"
  3435.    "      (assign (x) (var_ref k)\n"
  3436.    "              (expression float - (constant float (1.0))\n"
  3437.    "            (expression float * (var_ref eta)\n"
  3438.    "              (expression float * (var_ref eta)\n"
  3439.    "                (expression float - (constant float (1.0))\n"
  3440.    "                  (expression float * \n"
  3441.    "                    (expression float * (var_ref n) (var_ref i))\n"
  3442.    "                    (expression float * (var_ref n) (var_ref i))))))))\n"
  3443.    "      (if (expression bool < (var_ref k) (constant float (0.0)))\n"
  3444.    "          ((return (constant float (0.0))))\n"
  3445.    "      ((return (expression float -\n"
  3446.    "                 (expression float * (var_ref eta) (var_ref i))\n"
  3447.    "                 (expression float *\n"
  3448.    "                   (expression float +\n"
  3449.    "                     (expression float * (var_ref eta)\n"
  3450.    "                       (expression float * (var_ref n) (var_ref i)))\n"
  3451.    "                     (expression float sqrt (var_ref k)))\n"
  3452.    "                   (var_ref n))))))))\n"
  3453.    "\n"
  3454.    "   (signature vec2\n"
  3455.    "     (parameters\n"
  3456.    "       (declare (in) vec2 i)\n"
  3457.    "       (declare (in) vec2 n)\n"
  3458.    "       (declare (in) float eta))\n"
  3459.    "     ((declare () float k)\n"
  3460.    "      (assign (x) (var_ref k)\n"
  3461.    "              (expression float - (constant float (1.0))\n"
  3462.    "            (expression float * (var_ref eta)\n"
  3463.    "              (expression float * (var_ref eta)\n"
  3464.    "                (expression float - (constant float (1.0))\n"
  3465.    "                  (expression float * \n"
  3466.    "                    (expression float dot (var_ref n) (var_ref i))\n"
  3467.    "                    (expression float dot (var_ref n) (var_ref i))))))))\n"
  3468.    "      (if (expression bool < (var_ref k) (constant float (0.0)))\n"
  3469.    "          ((return (constant vec2 (0.0 0.0))))\n"
  3470.    "      ((return (expression vec2 -\n"
  3471.    "                 (expression vec2 * (var_ref eta) (var_ref i))\n"
  3472.    "                 (expression vec2 *\n"
  3473.    "                   (expression float +\n"
  3474.    "                     (expression float * (var_ref eta)\n"
  3475.    "                       (expression float dot (var_ref n) (var_ref i)))\n"
  3476.    "                     (expression float sqrt (var_ref k)))\n"
  3477.    "                   (var_ref n))))))))\n"
  3478.    "\n"
  3479.    "   (signature vec3\n"
  3480.    "     (parameters\n"
  3481.    "       (declare (in) vec3 i)\n"
  3482.    "       (declare (in) vec3 n)\n"
  3483.    "       (declare (in) float eta))\n"
  3484.    "     ((declare () float k)\n"
  3485.    "      (assign (x) (var_ref k)\n"
  3486.    "              (expression float - (constant float (1.0))\n"
  3487.    "            (expression float * (var_ref eta)\n"
  3488.    "              (expression float * (var_ref eta)\n"
  3489.    "                (expression float - (constant float (1.0))\n"
  3490.    "                  (expression float * \n"
  3491.    "                    (expression float dot (var_ref n) (var_ref i))\n"
  3492.    "                    (expression float dot (var_ref n) (var_ref i))))))))\n"
  3493.    "      (if (expression bool < (var_ref k) (constant float (0.0)))\n"
  3494.    "          ((return (constant vec3 (0.0 0.0 0.0))))\n"
  3495.    "      ((return (expression vec3 -\n"
  3496.    "                 (expression vec3 * (var_ref eta) (var_ref i))\n"
  3497.    "                 (expression vec3 *\n"
  3498.    "                   (expression float +\n"
  3499.    "                     (expression float * (var_ref eta)\n"
  3500.    "                       (expression float dot (var_ref n) (var_ref i)))\n"
  3501.    "                     (expression float sqrt (var_ref k)))\n"
  3502.    "                   (var_ref n))))))))\n"
  3503.    "\n"
  3504.    "   (signature vec4\n"
  3505.    "     (parameters\n"
  3506.    "       (declare (in) vec4 i)\n"
  3507.    "       (declare (in) vec4 n)\n"
  3508.    "       (declare (in) float eta))\n"
  3509.    "     ((declare () float k)\n"
  3510.    "      (assign (x) (var_ref k)\n"
  3511.    "              (expression float - (constant float (1.0))\n"
  3512.    "            (expression float * (var_ref eta)\n"
  3513.    "              (expression float * (var_ref eta)\n"
  3514.    "                (expression float - (constant float (1.0))\n"
  3515.    "                  (expression float * \n"
  3516.    "                    (expression float dot (var_ref n) (var_ref i))\n"
  3517.    "                    (expression float dot (var_ref n) (var_ref i))))))))\n"
  3518.    "      (if (expression bool < (var_ref k) (constant float (0.0)))\n"
  3519.    "          ((return (constant vec4 (0.0 0.0 0.0 0.0))))\n"
  3520.    "      ((return (expression vec4 -\n"
  3521.    "                 (expression vec4 * (var_ref eta) (var_ref i))\n"
  3522.    "                 (expression vec4 *\n"
  3523.    "                   (expression float +\n"
  3524.    "                     (expression float * (var_ref eta)\n"
  3525.    "                       (expression float dot (var_ref n) (var_ref i)))\n"
  3526.    "                     (expression float sqrt (var_ref k)))\n"
  3527.    "                   (var_ref n))))))))\n"
  3528.    "\n"
  3529.    "))\n"
  3530.    ""
  3531. ;
  3532. static const char builtin_round[] =
  3533.    "((function round\n"
  3534.    "   (signature float\n"
  3535.    "     (parameters\n"
  3536.    "       (declare (in) float arg0))\n"
  3537.    "     ((return (expression float round_even (var_ref arg0)))))\n"
  3538.    "\n"
  3539.    "   (signature vec2\n"
  3540.    "     (parameters\n"
  3541.    "       (declare (in) vec2 arg0))\n"
  3542.    "     ((return (expression vec2 round_even (var_ref arg0)))))\n"
  3543.    "\n"
  3544.    "   (signature vec3\n"
  3545.    "     (parameters\n"
  3546.    "       (declare (in) vec3 arg0))\n"
  3547.    "     ((return (expression vec3 round_even (var_ref arg0)))))\n"
  3548.    "\n"
  3549.    "   (signature vec4\n"
  3550.    "     (parameters\n"
  3551.    "       (declare (in) vec4 arg0))\n"
  3552.    "     ((return (expression vec4 round_even (var_ref arg0)))))\n"
  3553.    "))\n"
  3554.    ""
  3555. ;
  3556. static const char builtin_roundEven[] =
  3557.    "((function roundEven\n"
  3558.    "   (signature float\n"
  3559.    "     (parameters\n"
  3560.    "       (declare (in) float arg0))\n"
  3561.    "     ((return (expression float round_even (var_ref arg0)))))\n"
  3562.    "\n"
  3563.    "   (signature vec2\n"
  3564.    "     (parameters\n"
  3565.    "       (declare (in) vec2 arg0))\n"
  3566.    "     ((return (expression vec2 round_even (var_ref arg0)))))\n"
  3567.    "\n"
  3568.    "   (signature vec3\n"
  3569.    "     (parameters\n"
  3570.    "       (declare (in) vec3 arg0))\n"
  3571.    "     ((return (expression vec3 round_even (var_ref arg0)))))\n"
  3572.    "\n"
  3573.    "   (signature vec4\n"
  3574.    "     (parameters\n"
  3575.    "       (declare (in) vec4 arg0))\n"
  3576.    "     ((return (expression vec4 round_even (var_ref arg0)))))\n"
  3577.    "))\n"
  3578.    ""
  3579. ;
  3580. static const char builtin_shadow1D[] =
  3581.    "((function shadow1D\n"
  3582.    "   (signature vec4\n"
  3583.    "     (parameters\n"
  3584.    "       (declare (in) sampler1DShadow sampler) \n"
  3585.    "       (declare (in) vec3 P) )\n"
  3586.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  3587.    "\n"
  3588.    "   (signature vec4\n"
  3589.    "     (parameters\n"
  3590.    "       (declare (in) sampler1DShadow sampler) \n"
  3591.    "       (declare (in) vec3 P) \n"
  3592.    "       (declare (in) float bias) )\n"
  3593.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  3594.    "\n"
  3595.    "))\n"
  3596.    ""
  3597. ;
  3598. static const char builtin_shadow1DArray[] =
  3599.    "((function shadow1DArray\n"
  3600.    "   (signature vec4\n"
  3601.    "     (parameters\n"
  3602.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  3603.    "       (declare (in) vec3 P) )\n"
  3604.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  3605.    "\n"
  3606.    "   (signature vec4\n"
  3607.    "     (parameters\n"
  3608.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  3609.    "       (declare (in) vec3 P) \n"
  3610.    "       (declare (in) float bias) )\n"
  3611.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  3612.    "\n"
  3613.    "))\n"
  3614.    ""
  3615. ;
  3616. static const char builtin_shadow1DArrayLod[] =
  3617.    "((function shadow1DArrayLod\n"
  3618.    "   (signature vec4\n"
  3619.    "     (parameters\n"
  3620.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  3621.    "       (declare (in) vec3 P) \n"
  3622.    "       (declare (in) float lod) )\n"
  3623.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  3624.    "\n"
  3625.    "))\n"
  3626.    ""
  3627. ;
  3628. static const char builtin_shadow1DGradARB[] =
  3629.    "((function shadow1DGradARB\n"
  3630.    "   (signature vec4\n"
  3631.    "     (parameters\n"
  3632.    "       (declare (in) sampler1DShadow sampler) \n"
  3633.    "       (declare (in) vec3 P) \n"
  3634.    "       (declare (in) float dPdx) \n"
  3635.    "       (declare (in) float dPdy) )\n"
  3636.    "     ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  3637.    "\n"
  3638.    "))\n"
  3639.    ""
  3640. ;
  3641. static const char builtin_shadow1DLod[] =
  3642.    "((function shadow1DLod\n"
  3643.    "   (signature vec4\n"
  3644.    "     (parameters\n"
  3645.    "       (declare (in) sampler1DShadow sampler) \n"
  3646.    "       (declare (in) vec3 P) \n"
  3647.    "       (declare (in) float lod) )\n"
  3648.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  3649.    "\n"
  3650.    "))\n"
  3651.    ""
  3652. ;
  3653. static const char builtin_shadow1DProj[] =
  3654.    "((function shadow1DProj\n"
  3655.    "   (signature vec4\n"
  3656.    "     (parameters\n"
  3657.    "       (declare (in) sampler1DShadow sampler) \n"
  3658.    "       (declare (in) vec4 P) )\n"
  3659.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  3660.    "\n"
  3661.    "   (signature vec4\n"
  3662.    "     (parameters\n"
  3663.    "       (declare (in) sampler1DShadow sampler) \n"
  3664.    "       (declare (in) vec4 P) \n"
  3665.    "       (declare (in) float bias) )\n"
  3666.    "     ((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"
  3667.    "\n"
  3668.    "))\n"
  3669.    ""
  3670. ;
  3671. static const char builtin_shadow1DProjGradARB[] =
  3672.    "((function shadow1DProjGradARB\n"
  3673.    "   (signature vec4\n"
  3674.    "     (parameters\n"
  3675.    "       (declare (in) sampler1DShadow sampler) \n"
  3676.    "       (declare (in) vec4 P) \n"
  3677.    "       (declare (in) float dPdx) \n"
  3678.    "       (declare (in) float dPdy) )\n"
  3679.    "     ((return (txd vec4 (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"
  3680.    "\n"
  3681.    "))\n"
  3682.    ""
  3683. ;
  3684. static const char builtin_shadow1DProjLod[] =
  3685.    "((function shadow1DProjLod\n"
  3686.    "   (signature vec4\n"
  3687.    "     (parameters\n"
  3688.    "       (declare (in) sampler1DShadow sampler) \n"
  3689.    "       (declare (in) vec4 P) \n"
  3690.    "       (declare (in) float lod) )\n"
  3691.    "     ((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"
  3692.    "\n"
  3693.    "))\n"
  3694.    ""
  3695. ;
  3696. static const char builtin_shadow2D[] =
  3697.    "((function shadow2D\n"
  3698.    "   (signature vec4\n"
  3699.    "     (parameters\n"
  3700.    "       (declare (in) sampler2DShadow sampler) \n"
  3701.    "       (declare (in) vec3 P) )\n"
  3702.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  3703.    "\n"
  3704.    "   (signature vec4\n"
  3705.    "     (parameters\n"
  3706.    "       (declare (in) sampler2DShadow sampler) \n"
  3707.    "       (declare (in) vec3 P) \n"
  3708.    "       (declare (in) float bias) )\n"
  3709.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  3710.    "\n"
  3711.    "))\n"
  3712.    ""
  3713. ;
  3714. static const char builtin_shadow2DArray[] =
  3715.    "((function shadow2DArray\n"
  3716.    "   (signature vec4\n"
  3717.    "     (parameters\n"
  3718.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  3719.    "       (declare (in) vec4 P) )\n"
  3720.    "     ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n"
  3721.    "\n"
  3722.    "))\n"
  3723.    ""
  3724. ;
  3725. static const char builtin_shadow2DGradARB[] =
  3726.    "((function shadow2DGradARB\n"
  3727.    "   (signature vec4\n"
  3728.    "     (parameters\n"
  3729.    "       (declare (in) sampler2DShadow sampler) \n"
  3730.    "       (declare (in) vec3 P) \n"
  3731.    "       (declare (in) vec2 dPdx) \n"
  3732.    "       (declare (in) vec2 dPdy) )\n"
  3733.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  3734.    "\n"
  3735.    "))\n"
  3736.    ""
  3737. ;
  3738. static const char builtin_shadow2DLod[] =
  3739.    "((function shadow2DLod\n"
  3740.    "   (signature vec4\n"
  3741.    "     (parameters\n"
  3742.    "       (declare (in) sampler2DShadow sampler) \n"
  3743.    "       (declare (in) vec3 P) \n"
  3744.    "       (declare (in) float lod) )\n"
  3745.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  3746.    "\n"
  3747.    "))\n"
  3748.    ""
  3749. ;
  3750. static const char builtin_shadow2DProj[] =
  3751.    "((function shadow2DProj\n"
  3752.    "   (signature vec4\n"
  3753.    "     (parameters\n"
  3754.    "       (declare (in) sampler2DShadow sampler) \n"
  3755.    "       (declare (in) vec4 P) )\n"
  3756.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  3757.    "\n"
  3758.    "   (signature vec4\n"
  3759.    "     (parameters\n"
  3760.    "       (declare (in) sampler2DShadow sampler) \n"
  3761.    "       (declare (in) vec4 P) \n"
  3762.    "       (declare (in) float bias) )\n"
  3763.    "     ((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"
  3764.    "\n"
  3765.    "))\n"
  3766.    ""
  3767. ;
  3768. static const char builtin_shadow2DProjGradARB[] =
  3769.    "((function shadow2DProjGradARB\n"
  3770.    "   (signature vec4\n"
  3771.    "     (parameters\n"
  3772.    "       (declare (in) sampler2DShadow sampler) \n"
  3773.    "       (declare (in) vec4 P) \n"
  3774.    "       (declare (in) vec2 dPdx) \n"
  3775.    "       (declare (in) vec2 dPdy) )\n"
  3776.    "     ((return (txd vec4 (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"
  3777.    "\n"
  3778.    "))\n"
  3779.    ""
  3780. ;
  3781. static const char builtin_shadow2DProjLod[] =
  3782.    "((function shadow2DProjLod\n"
  3783.    "   (signature vec4\n"
  3784.    "     (parameters\n"
  3785.    "       (declare (in) sampler2DShadow sampler) \n"
  3786.    "       (declare (in) vec4 P) \n"
  3787.    "       (declare (in) float lod) )\n"
  3788.    "     ((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"
  3789.    "\n"
  3790.    "))\n"
  3791.    ""
  3792. ;
  3793. static const char builtin_shadow2DRect[] =
  3794.    "((function shadow2DRect\n"
  3795.    "   (signature vec4\n"
  3796.    "     (parameters\n"
  3797.    "       (declare (in) sampler2DRectShadow sampler) \n"
  3798.    "       (declare (in) vec3 P) )\n"
  3799.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  3800.    "\n"
  3801.    "))\n"
  3802.    ""
  3803. ;
  3804. static const char builtin_shadow2DRectGradARB[] =
  3805.    "((function shadow2DRectGradARB\n"
  3806.    "   (signature vec4\n"
  3807.    "     (parameters\n"
  3808.    "       (declare (in) sampler2DRectShadow sampler) \n"
  3809.    "       (declare (in) vec3 P) \n"
  3810.    "       (declare (in) vec2 dPdx) \n"
  3811.    "       (declare (in) vec2 dPdy) )\n"
  3812.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  3813.    "\n"
  3814.    "))\n"
  3815.    ""
  3816. ;
  3817. static const char builtin_shadow2DRectProj[] =
  3818.    "((function shadow2DRectProj\n"
  3819.    "   (signature vec4\n"
  3820.    "     (parameters\n"
  3821.    "       (declare (in) sampler2DRectShadow sampler) \n"
  3822.    "       (declare (in) vec4 P) )\n"
  3823.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  3824.    "\n"
  3825.    "))\n"
  3826.    ""
  3827. ;
  3828. static const char builtin_shadow2DRectProjGradARB[] =
  3829.    "((function shadow2DRectProjGradARB\n"
  3830.    "   (signature vec4\n"
  3831.    "     (parameters\n"
  3832.    "       (declare (in) sampler2DRectShadow sampler) \n"
  3833.    "       (declare (in) vec4 P) \n"
  3834.    "       (declare (in) vec2 dPdx) \n"
  3835.    "       (declare (in) vec2 dPdy) )\n"
  3836.    "     ((return (txd vec4 (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"
  3837.    "\n"
  3838.    "))\n"
  3839.    ""
  3840. ;
  3841. static const char builtin_sign[] =
  3842.    "((function sign\n"
  3843.    "   (signature float\n"
  3844.    "     (parameters\n"
  3845.    "       (declare (in) float x))\n"
  3846.    "     ((return (expression float sign (var_ref x)))))\n"
  3847.    "\n"
  3848.    "   (signature vec2\n"
  3849.    "     (parameters\n"
  3850.    "       (declare (in) vec2 x))\n"
  3851.    "     ((return (expression vec2 sign (var_ref x)))))\n"
  3852.    "\n"
  3853.    "   (signature vec3\n"
  3854.    "     (parameters\n"
  3855.    "       (declare (in) vec3 x))\n"
  3856.    "     ((return (expression vec3 sign (var_ref x)))))\n"
  3857.    "\n"
  3858.    "   (signature vec4\n"
  3859.    "     (parameters\n"
  3860.    "       (declare (in) vec4 x))\n"
  3861.    "     ((return (expression vec4 sign (var_ref x)))))\n"
  3862.    "\n"
  3863.    "   (signature int\n"
  3864.    "     (parameters\n"
  3865.    "       (declare (in) int x))\n"
  3866.    "     ((return (expression int sign (var_ref x)))))\n"
  3867.    "\n"
  3868.    "   (signature ivec2\n"
  3869.    "     (parameters\n"
  3870.    "       (declare (in) ivec2 x))\n"
  3871.    "     ((return (expression ivec2 sign (var_ref x)))))\n"
  3872.    "\n"
  3873.    "   (signature ivec3\n"
  3874.    "     (parameters\n"
  3875.    "       (declare (in) ivec3 x))\n"
  3876.    "     ((return (expression ivec3 sign (var_ref x)))))\n"
  3877.    "\n"
  3878.    "   (signature ivec4\n"
  3879.    "     (parameters\n"
  3880.    "       (declare (in) ivec4 x))\n"
  3881.    "     ((return (expression ivec4 sign (var_ref x)))))\n"
  3882.    "))\n"
  3883.    "\n"
  3884.    ""
  3885. ;
  3886. static const char builtin_sin[] =
  3887.    "((function sin\n"
  3888.    "   (signature float\n"
  3889.    "     (parameters\n"
  3890.    "       (declare (in) float angle))\n"
  3891.    "     ((return (expression float sin (var_ref angle)))))\n"
  3892.    "\n"
  3893.    "   (signature vec2\n"
  3894.    "     (parameters\n"
  3895.    "       (declare (in) vec2 angle))\n"
  3896.    "     ((return (expression vec2 sin (var_ref angle)))))\n"
  3897.    "\n"
  3898.    "   (signature vec3\n"
  3899.    "     (parameters\n"
  3900.    "       (declare (in) vec3 angle))\n"
  3901.    "     ((return (expression vec3 sin (var_ref angle)))))\n"
  3902.    "\n"
  3903.    "   (signature vec4\n"
  3904.    "     (parameters\n"
  3905.    "       (declare (in) vec4 angle))\n"
  3906.    "     ((return (expression vec4 sin (var_ref angle)))))\n"
  3907.    "))\n"
  3908.    ""
  3909. ;
  3910. static const char builtin_sinh[] =
  3911.    "((function sinh\n"
  3912.    "   (signature float\n"
  3913.    "     (parameters\n"
  3914.    "       (declare (in) float x))\n"
  3915.    "     ((return (expression float * (constant float (0.5))\n"
  3916.    "                (expression float -\n"
  3917.    "              (expression float exp (var_ref x))\n"
  3918.    "              (expression float exp (expression float neg (var_ref x))))))))\n"
  3919.    "   (signature vec2\n"
  3920.    "     (parameters\n"
  3921.    "       (declare (in) vec2 x))\n"
  3922.    "     ((return (expression vec2 * (constant float (0.5))\n"
  3923.    "                (expression vec2 -\n"
  3924.    "              (expression vec2 exp (var_ref x))\n"
  3925.    "              (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
  3926.    "   (signature vec3\n"
  3927.    "     (parameters\n"
  3928.    "       (declare (in) vec3 x))\n"
  3929.    "     ((return (expression vec3 * (constant float (0.5))\n"
  3930.    "                (expression vec3 -\n"
  3931.    "              (expression vec3 exp (var_ref x))\n"
  3932.    "              (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
  3933.    "   (signature vec4\n"
  3934.    "     (parameters\n"
  3935.    "       (declare (in) vec4 x))\n"
  3936.    "     ((return (expression vec4 * (constant float (0.5))\n"
  3937.    "                (expression vec4 -\n"
  3938.    "              (expression vec4 exp (var_ref x))\n"
  3939.    "              (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
  3940.    "))\n"
  3941.    ""
  3942. ;
  3943. static const char builtin_smoothstep[] =
  3944.    "((function smoothstep\n"
  3945.    "   (signature float\n"
  3946.    "     (parameters\n"
  3947.    "       (declare (in) float edge0)\n"
  3948.    "       (declare (in) float edge1)\n"
  3949.    "       (declare (in) float x))\n"
  3950.    "     ((declare () float t)\n"
  3951.    "      (assign (x) (var_ref t)\n"
  3952.    "              (expression float max\n"
  3953.    "                      (expression float min\n"
  3954.    "                                  (expression float / (expression float - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
  3955.    "                                  (constant float (1.0)))\n"
  3956.    "                      (constant float (0.0))))\n"
  3957.    "      (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"
  3958.    "   (signature vec2\n"
  3959.    "     (parameters\n"
  3960.    "       (declare (in) float edge0)\n"
  3961.    "       (declare (in) float edge1)\n"
  3962.    "       (declare (in) vec2 x))\n"
  3963.    "     ((declare () vec2 t)\n"
  3964.    "      (assign (xy) (var_ref t)\n"
  3965.    "              (expression vec2 max\n"
  3966.    "                      (expression vec2 min\n"
  3967.    "                                  (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
  3968.    "                                  (constant float (1.0)))\n"
  3969.    "                      (constant float (0.0))))\n"
  3970.    "      (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"
  3971.    "\n"
  3972.    "   (signature vec3\n"
  3973.    "     (parameters\n"
  3974.    "       (declare (in) float edge0)\n"
  3975.    "       (declare (in) float edge1)\n"
  3976.    "       (declare (in) vec3 x))\n"
  3977.    "     ((declare () vec3 t)\n"
  3978.    "      (assign (xyz) (var_ref t)\n"
  3979.    "              (expression vec3 max\n"
  3980.    "                      (expression vec3 min\n"
  3981.    "                                  (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
  3982.    "                                  (constant float (1.0)))\n"
  3983.    "                      (constant float (0.0))))\n"
  3984.    "      (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"
  3985.    "\n"
  3986.    "\n"
  3987.    "   (signature vec4\n"
  3988.    "     (parameters\n"
  3989.    "       (declare (in) float edge0)\n"
  3990.    "       (declare (in) float edge1)\n"
  3991.    "       (declare (in) vec4 x))\n"
  3992.    "     ((declare () vec4 t)\n"
  3993.    "      (assign (xyzw) (var_ref t)\n"
  3994.    "              (expression vec4 max\n"
  3995.    "                      (expression vec4 min\n"
  3996.    "                                  (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n"
  3997.    "                                  (constant float (1.0)))\n"
  3998.    "                      (constant float (0.0))))\n"
  3999.    "      (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"
  4000.    "\n"
  4001.    "   (signature vec2\n"
  4002.    "     (parameters\n"
  4003.    "       (declare (in) vec2 edge0)\n"
  4004.    "       (declare (in) vec2 edge1)\n"
  4005.    "       (declare (in) vec2 x))\n"
  4006.    "     ((declare () vec2 t)\n"
  4007.    "      (assign (xy) (var_ref t)\n"
  4008.    "              (expression vec2 max\n"
  4009.    "                          (expression vec2 min\n"
  4010.    "                                      (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression vec2 - (var_ref edge1) (var_ref edge0)))\n"
  4011.    "                                      (constant float (1.0)))\n"
  4012.    "                          (constant float (0.0))))\n"
  4013.    "      (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"
  4014.    "\n"
  4015.    "   (signature vec3\n"
  4016.    "     (parameters\n"
  4017.    "       (declare (in) vec3 edge0)\n"
  4018.    "       (declare (in) vec3 edge1)\n"
  4019.    "       (declare (in) vec3 x))\n"
  4020.    "     ((declare () vec3 t)\n"
  4021.    "      (assign (xyz) (var_ref t)\n"
  4022.    "              (expression vec3 max\n"
  4023.    "                          (expression vec3 min\n"
  4024.    "                                      (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression vec3 - (var_ref edge1) (var_ref edge0)))\n"
  4025.    "                                      (constant float (1.0)))\n"
  4026.    "                          (constant float (0.0))))\n"
  4027.    "      (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"
  4028.    "\n"
  4029.    "   (signature vec4\n"
  4030.    "     (parameters\n"
  4031.    "       (declare (in) vec4 edge0)\n"
  4032.    "       (declare (in) vec4 edge1)\n"
  4033.    "       (declare (in) vec4 x))\n"
  4034.    "     ((declare () vec4 t)\n"
  4035.    "      (assign (xyzw) (var_ref t)\n"
  4036.    "              (expression vec4 max\n"
  4037.    "                          (expression vec4 min\n"
  4038.    "                                      (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression vec4 - (var_ref edge1) (var_ref edge0)))\n"
  4039.    "                                      (constant float (1.0)))\n"
  4040.    "                          (constant float (0.0))))\n"
  4041.    "      (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"
  4042.    "))\n"
  4043.    "\n"
  4044.    ""
  4045. ;
  4046. static const char builtin_sqrt[] =
  4047.    "((function sqrt\n"
  4048.    "   (signature float\n"
  4049.    "     (parameters\n"
  4050.    "       (declare (in) float arg0))\n"
  4051.    "     ((return (expression float sqrt (var_ref arg0)))))\n"
  4052.    "\n"
  4053.    "   (signature vec2\n"
  4054.    "     (parameters\n"
  4055.    "       (declare (in) vec2 arg0))\n"
  4056.    "     ((return (expression vec2 sqrt (var_ref arg0)))))\n"
  4057.    "\n"
  4058.    "   (signature vec3\n"
  4059.    "     (parameters\n"
  4060.    "       (declare (in) vec3 arg0))\n"
  4061.    "     ((return (expression vec3 sqrt (var_ref arg0)))))\n"
  4062.    "\n"
  4063.    "   (signature vec4\n"
  4064.    "     (parameters\n"
  4065.    "       (declare (in) vec4 arg0))\n"
  4066.    "     ((return (expression vec4 sqrt (var_ref arg0)))))\n"
  4067.    "))\n"
  4068.    ""
  4069. ;
  4070. static const char builtin_step[] =
  4071.    "((function step\n"
  4072.    "   (signature float\n"
  4073.    "     (parameters\n"
  4074.    "       (declare (in) float edge)\n"
  4075.    "       (declare (in) float x))\n"
  4076.    "     ((return (expression float b2f (expression bool >= (var_ref x) (var_ref edge))))))\n"
  4077.    "\n"
  4078.    "   (signature vec2\n"
  4079.    "     (parameters\n"
  4080.    "       (declare (in) float edge)\n"
  4081.    "       (declare (in) vec2 x))\n"
  4082.    "     ((declare () vec2 t)\n"
  4083.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
  4084.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
  4085.    "      (return (var_ref t))))\n"
  4086.    "\n"
  4087.    "   (signature vec3\n"
  4088.    "     (parameters\n"
  4089.    "       (declare (in) float edge)\n"
  4090.    "       (declare (in) vec3 x))\n"
  4091.    "     ((declare () vec3 t)\n"
  4092.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
  4093.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
  4094.    "      (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n"
  4095.    "      (return (var_ref t))))\n"
  4096.    "\n"
  4097.    "   (signature vec4\n"
  4098.    "     (parameters\n"
  4099.    "       (declare (in) float edge)\n"
  4100.    "       (declare (in) vec4 x))\n"
  4101.    "     ((declare () vec4 t)\n"
  4102.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n"
  4103.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n"
  4104.    "      (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n"
  4105.    "      (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(var_ref edge))))\n"
  4106.    "      (return (var_ref t))))\n"
  4107.    "\n"
  4108.    "   (signature vec2\n"
  4109.    "     (parameters\n"
  4110.    "       (declare (in) vec2 edge)\n"
  4111.    "       (declare (in) vec2 x))\n"
  4112.    "     ((declare () vec2 t)\n"
  4113.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
  4114.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
  4115.    "      (return (var_ref t))))\n"
  4116.    "\n"
  4117.    "   (signature vec3\n"
  4118.    "     (parameters\n"
  4119.    "       (declare (in) vec3 edge)\n"
  4120.    "       (declare (in) vec3 x))\n"
  4121.    "     ((declare () vec3 t)\n"
  4122.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
  4123.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
  4124.    "      (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n"
  4125.    "      (return (var_ref t))))\n"
  4126.    "\n"
  4127.    "   (signature vec4\n"
  4128.    "     (parameters\n"
  4129.    "       (declare (in) vec4 edge)\n"
  4130.    "       (declare (in) vec4 x))\n"
  4131.    "     ((declare () vec4 t)\n"
  4132.    "      (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n"
  4133.    "      (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n"
  4134.    "      (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n"
  4135.    "      (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(swiz w (var_ref edge)))))\n"
  4136.    "      (return (var_ref t))))\n"
  4137.    "))\n"
  4138.    "\n"
  4139.    ""
  4140. ;
  4141. static const char builtin_tan[] =
  4142.    "((function tan\n"
  4143.    "   (signature float\n"
  4144.    "     (parameters\n"
  4145.    "       (declare (in) float angle))\n"
  4146.    "     ((return (expression float / (expression float sin (var_ref angle)) (expression float cos (var_ref angle))))))\n"
  4147.    "\n"
  4148.    "   (signature vec2\n"
  4149.    "     (parameters\n"
  4150.    "       (declare (in) vec2 angle))\n"
  4151.    "     ((return (expression vec2 / (expression vec2 sin (var_ref angle)) (expression vec2 cos (var_ref angle))))))\n"
  4152.    "\n"
  4153.    "   (signature vec3\n"
  4154.    "     (parameters\n"
  4155.    "       (declare (in) vec3 angle))\n"
  4156.    "     ((return (expression vec3 / (expression vec3 sin (var_ref angle)) (expression vec3 cos (var_ref angle))))))\n"
  4157.    "\n"
  4158.    "   (signature vec4\n"
  4159.    "     (parameters\n"
  4160.    "       (declare (in) vec4 angle))\n"
  4161.    "     ((return (expression vec4 / (expression vec4 sin (var_ref angle)) (expression vec4 cos (var_ref angle))))))\n"
  4162.    "))\n"
  4163.    ""
  4164. ;
  4165. static const char builtin_tanh[] =
  4166.    "((function tanh\n"
  4167.    "   (signature float\n"
  4168.    "     (parameters\n"
  4169.    "       (declare (in) float x))\n"
  4170.    "     ((return (expression float /\n"
  4171.    "                (expression float -\n"
  4172.    "              (expression float exp (var_ref x))\n"
  4173.    "              (expression float exp (expression float neg (var_ref x))))\n"
  4174.    "                (expression float +\n"
  4175.    "              (expression float exp (var_ref x))\n"
  4176.    "              (expression float exp (expression float neg (var_ref x))))))))\n"
  4177.    "   (signature vec2\n"
  4178.    "     (parameters\n"
  4179.    "       (declare (in) vec2 x))\n"
  4180.    "     ((return (expression vec2 /\n"
  4181.    "                (expression vec2 -\n"
  4182.    "              (expression vec2 exp (var_ref x))\n"
  4183.    "              (expression vec2 exp (expression vec2 neg (var_ref x))))\n"
  4184.    "                (expression vec2 +\n"
  4185.    "              (expression vec2 exp (var_ref x))\n"
  4186.    "              (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n"
  4187.    "   (signature vec3\n"
  4188.    "     (parameters\n"
  4189.    "       (declare (in) vec3 x))\n"
  4190.    "     ((return (expression vec3 /\n"
  4191.    "                (expression vec3 -\n"
  4192.    "              (expression vec3 exp (var_ref x))\n"
  4193.    "              (expression vec3 exp (expression vec3 neg (var_ref x))))\n"
  4194.    "                (expression vec3 +\n"
  4195.    "              (expression vec3 exp (var_ref x))\n"
  4196.    "              (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n"
  4197.    "   (signature vec4\n"
  4198.    "     (parameters\n"
  4199.    "       (declare (in) vec4 x))\n"
  4200.    "     ((return (expression vec4 /\n"
  4201.    "                (expression vec4 -\n"
  4202.    "              (expression vec4 exp (var_ref x))\n"
  4203.    "              (expression vec4 exp (expression vec4 neg (var_ref x))))\n"
  4204.    "                (expression vec4 +\n"
  4205.    "              (expression vec4 exp (var_ref x))\n"
  4206.    "              (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n"
  4207.    "))\n"
  4208.    ""
  4209. ;
  4210. static const char builtin_texelFetch[] =
  4211.    "((function texelFetch\n"
  4212.    "   (signature vec4\n"
  4213.    "     (parameters\n"
  4214.    "       (declare (in) sampler1D sampler) \n"
  4215.    "       (declare (in) int P) \n"
  4216.    "       (declare (in) int lod) )\n"
  4217.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4218.    "\n"
  4219.    "   (signature ivec4\n"
  4220.    "     (parameters\n"
  4221.    "       (declare (in) isampler1D sampler) \n"
  4222.    "       (declare (in) int P) \n"
  4223.    "       (declare (in) int lod) )\n"
  4224.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4225.    "\n"
  4226.    "   (signature uvec4\n"
  4227.    "     (parameters\n"
  4228.    "       (declare (in) usampler1D sampler) \n"
  4229.    "       (declare (in) int P) \n"
  4230.    "       (declare (in) int lod) )\n"
  4231.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4232.    "\n"
  4233.    "   (signature vec4\n"
  4234.    "     (parameters\n"
  4235.    "       (declare (in) sampler2D sampler) \n"
  4236.    "       (declare (in) ivec2 P) \n"
  4237.    "       (declare (in) int lod) )\n"
  4238.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4239.    "\n"
  4240.    "   (signature ivec4\n"
  4241.    "     (parameters\n"
  4242.    "       (declare (in) isampler2D sampler) \n"
  4243.    "       (declare (in) ivec2 P) \n"
  4244.    "       (declare (in) int lod) )\n"
  4245.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4246.    "\n"
  4247.    "   (signature uvec4\n"
  4248.    "     (parameters\n"
  4249.    "       (declare (in) usampler2D sampler) \n"
  4250.    "       (declare (in) ivec2 P) \n"
  4251.    "       (declare (in) int lod) )\n"
  4252.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4253.    "\n"
  4254.    "   (signature vec4\n"
  4255.    "     (parameters\n"
  4256.    "       (declare (in) sampler3D sampler) \n"
  4257.    "       (declare (in) ivec3 P) \n"
  4258.    "       (declare (in) int lod) )\n"
  4259.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4260.    "\n"
  4261.    "   (signature ivec4\n"
  4262.    "     (parameters\n"
  4263.    "       (declare (in) isampler3D sampler) \n"
  4264.    "       (declare (in) ivec3 P) \n"
  4265.    "       (declare (in) int lod) )\n"
  4266.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4267.    "\n"
  4268.    "   (signature uvec4\n"
  4269.    "     (parameters\n"
  4270.    "       (declare (in) usampler3D sampler) \n"
  4271.    "       (declare (in) ivec3 P) \n"
  4272.    "       (declare (in) int lod) )\n"
  4273.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4274.    "\n"
  4275.    "   (signature vec4\n"
  4276.    "     (parameters\n"
  4277.    "       (declare (in) sampler2DRect sampler) \n"
  4278.    "       (declare (in) ivec2 P) )\n"
  4279.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4280.    "\n"
  4281.    "   (signature ivec4\n"
  4282.    "     (parameters\n"
  4283.    "       (declare (in) isampler2DRect sampler) \n"
  4284.    "       (declare (in) ivec2 P) )\n"
  4285.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4286.    "\n"
  4287.    "   (signature uvec4\n"
  4288.    "     (parameters\n"
  4289.    "       (declare (in) usampler2DRect sampler) \n"
  4290.    "       (declare (in) ivec2 P) )\n"
  4291.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4292.    "\n"
  4293.    "   (signature vec4\n"
  4294.    "     (parameters\n"
  4295.    "       (declare (in) sampler1DArray sampler) \n"
  4296.    "       (declare (in) ivec2 P) \n"
  4297.    "       (declare (in) int lod) )\n"
  4298.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4299.    "\n"
  4300.    "   (signature ivec4\n"
  4301.    "     (parameters\n"
  4302.    "       (declare (in) isampler1DArray sampler) \n"
  4303.    "       (declare (in) ivec2 P) \n"
  4304.    "       (declare (in) int lod) )\n"
  4305.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4306.    "\n"
  4307.    "   (signature uvec4\n"
  4308.    "     (parameters\n"
  4309.    "       (declare (in) usampler1DArray sampler) \n"
  4310.    "       (declare (in) ivec2 P) \n"
  4311.    "       (declare (in) int lod) )\n"
  4312.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4313.    "\n"
  4314.    "   (signature vec4\n"
  4315.    "     (parameters\n"
  4316.    "       (declare (in) sampler2DArray sampler) \n"
  4317.    "       (declare (in) ivec3 P) \n"
  4318.    "       (declare (in) int lod) )\n"
  4319.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4320.    "\n"
  4321.    "   (signature ivec4\n"
  4322.    "     (parameters\n"
  4323.    "       (declare (in) isampler2DArray sampler) \n"
  4324.    "       (declare (in) ivec3 P) \n"
  4325.    "       (declare (in) int lod) )\n"
  4326.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4327.    "\n"
  4328.    "   (signature uvec4\n"
  4329.    "     (parameters\n"
  4330.    "       (declare (in) usampler2DArray sampler) \n"
  4331.    "       (declare (in) ivec3 P) \n"
  4332.    "       (declare (in) int lod) )\n"
  4333.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n"
  4334.    "\n"
  4335.    "   (signature vec4\n"
  4336.    "     (parameters\n"
  4337.    "       (declare (in) samplerBuffer sampler) \n"
  4338.    "       (declare (in) int P) )\n"
  4339.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4340.    "\n"
  4341.    "   (signature ivec4\n"
  4342.    "     (parameters\n"
  4343.    "       (declare (in) isamplerBuffer sampler) \n"
  4344.    "       (declare (in) int P) )\n"
  4345.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4346.    "\n"
  4347.    "   (signature uvec4\n"
  4348.    "     (parameters\n"
  4349.    "       (declare (in) usamplerBuffer sampler) \n"
  4350.    "       (declare (in) int P) )\n"
  4351.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (constant int (0)) ))))\n"
  4352.    "\n"
  4353.    "   (signature vec4\n"
  4354.    "     (parameters\n"
  4355.    "       (declare (in) sampler2DMS sampler) \n"
  4356.    "       (declare (in) ivec2 P) \n"
  4357.    "       (declare (in) int sample) )\n"
  4358.    "     ((return (txf_ms vec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4359.    "\n"
  4360.    "   (signature ivec4\n"
  4361.    "     (parameters\n"
  4362.    "       (declare (in) isampler2DMS sampler) \n"
  4363.    "       (declare (in) ivec2 P) \n"
  4364.    "       (declare (in) int sample) )\n"
  4365.    "     ((return (txf_ms ivec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4366.    "\n"
  4367.    "   (signature uvec4\n"
  4368.    "     (parameters\n"
  4369.    "       (declare (in) usampler2DMS sampler) \n"
  4370.    "       (declare (in) ivec2 P) \n"
  4371.    "       (declare (in) int sample) )\n"
  4372.    "     ((return (txf_ms uvec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4373.    "\n"
  4374.    "   (signature vec4\n"
  4375.    "     (parameters\n"
  4376.    "       (declare (in) sampler2DMSArray sampler) \n"
  4377.    "       (declare (in) ivec3 P) \n"
  4378.    "       (declare (in) int sample) )\n"
  4379.    "     ((return (txf_ms vec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4380.    "\n"
  4381.    "   (signature ivec4\n"
  4382.    "     (parameters\n"
  4383.    "       (declare (in) isampler2DMSArray sampler) \n"
  4384.    "       (declare (in) ivec3 P) \n"
  4385.    "       (declare (in) int sample) )\n"
  4386.    "     ((return (txf_ms ivec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4387.    "\n"
  4388.    "   (signature uvec4\n"
  4389.    "     (parameters\n"
  4390.    "       (declare (in) usampler2DMSArray sampler) \n"
  4391.    "       (declare (in) ivec3 P) \n"
  4392.    "       (declare (in) int sample) )\n"
  4393.    "     ((return (txf_ms uvec4 (var_ref sampler) (var_ref P) (var_ref sample) ))))\n"
  4394.    "\n"
  4395.    "))\n"
  4396.    ""
  4397. ;
  4398. static const char builtin_texelFetchOffset[] =
  4399.    "((function texelFetchOffset\n"
  4400.    "   (signature vec4\n"
  4401.    "     (parameters\n"
  4402.    "       (declare (in) sampler1D sampler) \n"
  4403.    "       (declare (in) int P) \n"
  4404.    "       (declare (in) int lod) \n"
  4405.    "       (declare (const_in) int offset) )\n"
  4406.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4407.    "\n"
  4408.    "   (signature ivec4\n"
  4409.    "     (parameters\n"
  4410.    "       (declare (in) isampler1D sampler) \n"
  4411.    "       (declare (in) int P) \n"
  4412.    "       (declare (in) int lod) \n"
  4413.    "       (declare (const_in) int offset) )\n"
  4414.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4415.    "\n"
  4416.    "   (signature uvec4\n"
  4417.    "     (parameters\n"
  4418.    "       (declare (in) usampler1D sampler) \n"
  4419.    "       (declare (in) int P) \n"
  4420.    "       (declare (in) int lod) \n"
  4421.    "       (declare (const_in) int offset) )\n"
  4422.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4423.    "\n"
  4424.    "   (signature vec4\n"
  4425.    "     (parameters\n"
  4426.    "       (declare (in) sampler2D sampler) \n"
  4427.    "       (declare (in) ivec2 P) \n"
  4428.    "       (declare (in) int lod) \n"
  4429.    "       (declare (const_in) ivec2 offset) )\n"
  4430.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4431.    "\n"
  4432.    "   (signature ivec4\n"
  4433.    "     (parameters\n"
  4434.    "       (declare (in) isampler2D sampler) \n"
  4435.    "       (declare (in) ivec2 P) \n"
  4436.    "       (declare (in) int lod) \n"
  4437.    "       (declare (const_in) ivec2 offset) )\n"
  4438.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4439.    "\n"
  4440.    "   (signature uvec4\n"
  4441.    "     (parameters\n"
  4442.    "       (declare (in) usampler2D sampler) \n"
  4443.    "       (declare (in) ivec2 P) \n"
  4444.    "       (declare (in) int lod) \n"
  4445.    "       (declare (const_in) ivec2 offset) )\n"
  4446.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4447.    "\n"
  4448.    "   (signature vec4\n"
  4449.    "     (parameters\n"
  4450.    "       (declare (in) sampler3D sampler) \n"
  4451.    "       (declare (in) ivec3 P) \n"
  4452.    "       (declare (in) int lod) \n"
  4453.    "       (declare (const_in) ivec3 offset) )\n"
  4454.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4455.    "\n"
  4456.    "   (signature ivec4\n"
  4457.    "     (parameters\n"
  4458.    "       (declare (in) isampler3D sampler) \n"
  4459.    "       (declare (in) ivec3 P) \n"
  4460.    "       (declare (in) int lod) \n"
  4461.    "       (declare (const_in) ivec3 offset) )\n"
  4462.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4463.    "\n"
  4464.    "   (signature uvec4\n"
  4465.    "     (parameters\n"
  4466.    "       (declare (in) usampler3D sampler) \n"
  4467.    "       (declare (in) ivec3 P) \n"
  4468.    "       (declare (in) int lod) \n"
  4469.    "       (declare (const_in) ivec3 offset) )\n"
  4470.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4471.    "\n"
  4472.    "   (signature vec4\n"
  4473.    "     (parameters\n"
  4474.    "       (declare (in) sampler2DRect sampler) \n"
  4475.    "       (declare (in) ivec2 P) \n"
  4476.    "       (declare (const_in) ivec2 offset) )\n"
  4477.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0)) ))))\n"
  4478.    "\n"
  4479.    "   (signature ivec4\n"
  4480.    "     (parameters\n"
  4481.    "       (declare (in) isampler2DRect sampler) \n"
  4482.    "       (declare (in) ivec2 P) \n"
  4483.    "       (declare (const_in) ivec2 offset) )\n"
  4484.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0)) ))))\n"
  4485.    "\n"
  4486.    "   (signature uvec4\n"
  4487.    "     (parameters\n"
  4488.    "       (declare (in) usampler2DRect sampler) \n"
  4489.    "       (declare (in) ivec2 P) \n"
  4490.    "       (declare (const_in) ivec2 offset) )\n"
  4491.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0)) ))))\n"
  4492.    "\n"
  4493.    "   (signature vec4\n"
  4494.    "     (parameters\n"
  4495.    "       (declare (in) sampler1DArray sampler) \n"
  4496.    "       (declare (in) ivec2 P) \n"
  4497.    "       (declare (in) int lod) \n"
  4498.    "       (declare (const_in) int offset) )\n"
  4499.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4500.    "\n"
  4501.    "   (signature ivec4\n"
  4502.    "     (parameters\n"
  4503.    "       (declare (in) isampler1DArray sampler) \n"
  4504.    "       (declare (in) ivec2 P) \n"
  4505.    "       (declare (in) int lod) \n"
  4506.    "       (declare (const_in) int offset) )\n"
  4507.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4508.    "\n"
  4509.    "   (signature uvec4\n"
  4510.    "     (parameters\n"
  4511.    "       (declare (in) usampler1DArray sampler) \n"
  4512.    "       (declare (in) ivec2 P) \n"
  4513.    "       (declare (in) int lod) \n"
  4514.    "       (declare (const_in) int offset) )\n"
  4515.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4516.    "\n"
  4517.    "   (signature vec4\n"
  4518.    "     (parameters\n"
  4519.    "       (declare (in) sampler2DArray sampler) \n"
  4520.    "       (declare (in) ivec3 P) \n"
  4521.    "       (declare (in) int lod) \n"
  4522.    "       (declare (const_in) ivec2 offset) )\n"
  4523.    "     ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4524.    "\n"
  4525.    "   (signature ivec4\n"
  4526.    "     (parameters\n"
  4527.    "       (declare (in) isampler2DArray sampler) \n"
  4528.    "       (declare (in) ivec3 P) \n"
  4529.    "       (declare (in) int lod) \n"
  4530.    "       (declare (const_in) ivec2 offset) )\n"
  4531.    "     ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4532.    "\n"
  4533.    "   (signature uvec4\n"
  4534.    "     (parameters\n"
  4535.    "       (declare (in) usampler2DArray sampler) \n"
  4536.    "       (declare (in) ivec3 P) \n"
  4537.    "       (declare (in) int lod) \n"
  4538.    "       (declare (const_in) ivec2 offset) )\n"
  4539.    "     ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n"
  4540.    "\n"
  4541.    "))\n"
  4542.    ""
  4543. ;
  4544. static const char builtin_texture[] =
  4545.    "((function texture\n"
  4546.    "   (signature vec4\n"
  4547.    "     (parameters\n"
  4548.    "       (declare (in) sampler1D sampler) \n"
  4549.    "       (declare (in) float P) )\n"
  4550.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4551.    "\n"
  4552.    "   (signature ivec4\n"
  4553.    "     (parameters\n"
  4554.    "       (declare (in) isampler1D sampler) \n"
  4555.    "       (declare (in) float P) )\n"
  4556.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4557.    "\n"
  4558.    "   (signature uvec4\n"
  4559.    "     (parameters\n"
  4560.    "       (declare (in) usampler1D sampler) \n"
  4561.    "       (declare (in) float P) )\n"
  4562.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4563.    "\n"
  4564.    "   (signature vec4\n"
  4565.    "     (parameters\n"
  4566.    "       (declare (in) sampler2D sampler) \n"
  4567.    "       (declare (in) vec2 P) )\n"
  4568.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4569.    "\n"
  4570.    "   (signature ivec4\n"
  4571.    "     (parameters\n"
  4572.    "       (declare (in) isampler2D sampler) \n"
  4573.    "       (declare (in) vec2 P) )\n"
  4574.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4575.    "\n"
  4576.    "   (signature uvec4\n"
  4577.    "     (parameters\n"
  4578.    "       (declare (in) usampler2D sampler) \n"
  4579.    "       (declare (in) vec2 P) )\n"
  4580.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4581.    "\n"
  4582.    "   (signature vec4\n"
  4583.    "     (parameters\n"
  4584.    "       (declare (in) sampler3D sampler) \n"
  4585.    "       (declare (in) vec3 P) )\n"
  4586.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4587.    "\n"
  4588.    "   (signature ivec4\n"
  4589.    "     (parameters\n"
  4590.    "       (declare (in) isampler3D sampler) \n"
  4591.    "       (declare (in) vec3 P) )\n"
  4592.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4593.    "\n"
  4594.    "   (signature uvec4\n"
  4595.    "     (parameters\n"
  4596.    "       (declare (in) usampler3D sampler) \n"
  4597.    "       (declare (in) vec3 P) )\n"
  4598.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4599.    "\n"
  4600.    "   (signature vec4\n"
  4601.    "     (parameters\n"
  4602.    "       (declare (in) samplerCube sampler) \n"
  4603.    "       (declare (in) vec3 P) )\n"
  4604.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4605.    "\n"
  4606.    "   (signature ivec4\n"
  4607.    "     (parameters\n"
  4608.    "       (declare (in) isamplerCube sampler) \n"
  4609.    "       (declare (in) vec3 P) )\n"
  4610.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4611.    "\n"
  4612.    "   (signature uvec4\n"
  4613.    "     (parameters\n"
  4614.    "       (declare (in) usamplerCube sampler) \n"
  4615.    "       (declare (in) vec3 P) )\n"
  4616.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4617.    "\n"
  4618.    "   (signature vec4\n"
  4619.    "     (parameters\n"
  4620.    "       (declare (in) sampler1DArray sampler) \n"
  4621.    "       (declare (in) vec2 P) )\n"
  4622.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4623.    "\n"
  4624.    "   (signature ivec4\n"
  4625.    "     (parameters\n"
  4626.    "       (declare (in) isampler1DArray sampler) \n"
  4627.    "       (declare (in) vec2 P) )\n"
  4628.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4629.    "\n"
  4630.    "   (signature uvec4\n"
  4631.    "     (parameters\n"
  4632.    "       (declare (in) usampler1DArray sampler) \n"
  4633.    "       (declare (in) vec2 P) )\n"
  4634.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4635.    "\n"
  4636.    "   (signature vec4\n"
  4637.    "     (parameters\n"
  4638.    "       (declare (in) sampler2DArray sampler) \n"
  4639.    "       (declare (in) vec3 P) )\n"
  4640.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4641.    "\n"
  4642.    "   (signature ivec4\n"
  4643.    "     (parameters\n"
  4644.    "       (declare (in) isampler2DArray sampler) \n"
  4645.    "       (declare (in) vec3 P) )\n"
  4646.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4647.    "\n"
  4648.    "   (signature uvec4\n"
  4649.    "     (parameters\n"
  4650.    "       (declare (in) usampler2DArray sampler) \n"
  4651.    "       (declare (in) vec3 P) )\n"
  4652.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4653.    "\n"
  4654.    "   (signature float\n"
  4655.    "     (parameters\n"
  4656.    "       (declare (in) sampler1DShadow sampler) \n"
  4657.    "       (declare (in) vec3 P) )\n"
  4658.    "     ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  4659.    "\n"
  4660.    "   (signature float\n"
  4661.    "     (parameters\n"
  4662.    "       (declare (in) sampler2DShadow sampler) \n"
  4663.    "       (declare (in) vec3 P) )\n"
  4664.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  4665.    "\n"
  4666.    "   (signature float\n"
  4667.    "     (parameters\n"
  4668.    "       (declare (in) samplerCubeShadow sampler) \n"
  4669.    "       (declare (in) vec4 P) )\n"
  4670.    "     ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n"
  4671.    "\n"
  4672.    "   (signature float\n"
  4673.    "     (parameters\n"
  4674.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  4675.    "       (declare (in) vec3 P) )\n"
  4676.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  4677.    "\n"
  4678.    "   (signature float\n"
  4679.    "     (parameters\n"
  4680.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  4681.    "       (declare (in) vec4 P) )\n"
  4682.    "     ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n"
  4683.    "\n"
  4684.    "   (signature vec4\n"
  4685.    "     (parameters\n"
  4686.    "       (declare (in) sampler2DRect sampler) \n"
  4687.    "       (declare (in) vec2 P) )\n"
  4688.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4689.    "\n"
  4690.    "   (signature ivec4\n"
  4691.    "     (parameters\n"
  4692.    "       (declare (in) isampler2DRect sampler) \n"
  4693.    "       (declare (in) vec2 P) )\n"
  4694.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4695.    "\n"
  4696.    "   (signature uvec4\n"
  4697.    "     (parameters\n"
  4698.    "       (declare (in) usampler2DRect sampler) \n"
  4699.    "       (declare (in) vec2 P) )\n"
  4700.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4701.    "\n"
  4702.    "   (signature float\n"
  4703.    "     (parameters\n"
  4704.    "       (declare (in) sampler2DRectShadow sampler) \n"
  4705.    "       (declare (in) vec3 P) )\n"
  4706.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n"
  4707.    "\n"
  4708.    "   (signature vec4\n"
  4709.    "     (parameters\n"
  4710.    "       (declare (in) samplerCubeArray sampler) \n"
  4711.    "       (declare (in) vec4 P) )\n"
  4712.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4713.    "\n"
  4714.    "   (signature ivec4\n"
  4715.    "     (parameters\n"
  4716.    "       (declare (in) isamplerCubeArray sampler) \n"
  4717.    "       (declare (in) vec4 P) )\n"
  4718.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4719.    "\n"
  4720.    "   (signature uvec4\n"
  4721.    "     (parameters\n"
  4722.    "       (declare (in) usamplerCubeArray sampler) \n"
  4723.    "       (declare (in) vec4 P) )\n"
  4724.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4725.    "\n"
  4726.    "   (signature float\n"
  4727.    "     (parameters\n"
  4728.    "       (declare (in) samplerCubeArrayShadow sampler) \n"
  4729.    "       (declare (in) vec4 P) \n"
  4730.    "       (declare (in) float compare) )\n"
  4731.    "     ((return (tex float (var_ref sampler) (var_ref P) 0 1 (var_ref compare) ))))\n"
  4732.    "\n"
  4733.    "   (signature vec4\n"
  4734.    "     (parameters\n"
  4735.    "       (declare (in) sampler1D sampler) \n"
  4736.    "       (declare (in) float P) \n"
  4737.    "       (declare (in) float bias) )\n"
  4738.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4739.    "\n"
  4740.    "   (signature ivec4\n"
  4741.    "     (parameters\n"
  4742.    "       (declare (in) isampler1D sampler) \n"
  4743.    "       (declare (in) float P) \n"
  4744.    "       (declare (in) float bias) )\n"
  4745.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4746.    "\n"
  4747.    "   (signature uvec4\n"
  4748.    "     (parameters\n"
  4749.    "       (declare (in) usampler1D sampler) \n"
  4750.    "       (declare (in) float P) \n"
  4751.    "       (declare (in) float bias) )\n"
  4752.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4753.    "\n"
  4754.    "   (signature vec4\n"
  4755.    "     (parameters\n"
  4756.    "       (declare (in) sampler2D sampler) \n"
  4757.    "       (declare (in) vec2 P) \n"
  4758.    "       (declare (in) float bias) )\n"
  4759.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4760.    "\n"
  4761.    "   (signature ivec4\n"
  4762.    "     (parameters\n"
  4763.    "       (declare (in) isampler2D sampler) \n"
  4764.    "       (declare (in) vec2 P) \n"
  4765.    "       (declare (in) float bias) )\n"
  4766.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4767.    "\n"
  4768.    "   (signature uvec4\n"
  4769.    "     (parameters\n"
  4770.    "       (declare (in) usampler2D sampler) \n"
  4771.    "       (declare (in) vec2 P) \n"
  4772.    "       (declare (in) float bias) )\n"
  4773.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4774.    "\n"
  4775.    "   (signature vec4\n"
  4776.    "     (parameters\n"
  4777.    "       (declare (in) sampler3D sampler) \n"
  4778.    "       (declare (in) vec3 P) \n"
  4779.    "       (declare (in) float bias) )\n"
  4780.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4781.    "\n"
  4782.    "   (signature ivec4\n"
  4783.    "     (parameters\n"
  4784.    "       (declare (in) isampler3D sampler) \n"
  4785.    "       (declare (in) vec3 P) \n"
  4786.    "       (declare (in) float bias) )\n"
  4787.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4788.    "\n"
  4789.    "   (signature uvec4\n"
  4790.    "     (parameters\n"
  4791.    "       (declare (in) usampler3D sampler) \n"
  4792.    "       (declare (in) vec3 P) \n"
  4793.    "       (declare (in) float bias) )\n"
  4794.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4795.    "\n"
  4796.    "   (signature vec4\n"
  4797.    "     (parameters\n"
  4798.    "       (declare (in) samplerCube sampler) \n"
  4799.    "       (declare (in) vec3 P) \n"
  4800.    "       (declare (in) float bias) )\n"
  4801.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4802.    "\n"
  4803.    "   (signature ivec4\n"
  4804.    "     (parameters\n"
  4805.    "       (declare (in) isamplerCube sampler) \n"
  4806.    "       (declare (in) vec3 P) \n"
  4807.    "       (declare (in) float bias) )\n"
  4808.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4809.    "\n"
  4810.    "   (signature uvec4\n"
  4811.    "     (parameters\n"
  4812.    "       (declare (in) usamplerCube sampler) \n"
  4813.    "       (declare (in) vec3 P) \n"
  4814.    "       (declare (in) float bias) )\n"
  4815.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4816.    "\n"
  4817.    "   (signature vec4\n"
  4818.    "     (parameters\n"
  4819.    "       (declare (in) sampler1DArray sampler) \n"
  4820.    "       (declare (in) vec2 P) \n"
  4821.    "       (declare (in) float bias) )\n"
  4822.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4823.    "\n"
  4824.    "   (signature ivec4\n"
  4825.    "     (parameters\n"
  4826.    "       (declare (in) isampler1DArray sampler) \n"
  4827.    "       (declare (in) vec2 P) \n"
  4828.    "       (declare (in) float bias) )\n"
  4829.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4830.    "\n"
  4831.    "   (signature uvec4\n"
  4832.    "     (parameters\n"
  4833.    "       (declare (in) usampler1DArray sampler) \n"
  4834.    "       (declare (in) vec2 P) \n"
  4835.    "       (declare (in) float bias) )\n"
  4836.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4837.    "\n"
  4838.    "   (signature vec4\n"
  4839.    "     (parameters\n"
  4840.    "       (declare (in) sampler2DArray sampler) \n"
  4841.    "       (declare (in) vec3 P) \n"
  4842.    "       (declare (in) float bias) )\n"
  4843.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4844.    "\n"
  4845.    "   (signature ivec4\n"
  4846.    "     (parameters\n"
  4847.    "       (declare (in) isampler2DArray sampler) \n"
  4848.    "       (declare (in) vec3 P) \n"
  4849.    "       (declare (in) float bias) )\n"
  4850.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4851.    "\n"
  4852.    "   (signature uvec4\n"
  4853.    "     (parameters\n"
  4854.    "       (declare (in) usampler2DArray sampler) \n"
  4855.    "       (declare (in) vec3 P) \n"
  4856.    "       (declare (in) float bias) )\n"
  4857.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4858.    "\n"
  4859.    "   (signature vec4\n"
  4860.    "     (parameters\n"
  4861.    "       (declare (in) samplerCubeArray sampler) \n"
  4862.    "       (declare (in) vec4 P) \n"
  4863.    "       (declare (in) float bias) )\n"
  4864.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4865.    "\n"
  4866.    "   (signature ivec4\n"
  4867.    "     (parameters\n"
  4868.    "       (declare (in) isamplerCubeArray sampler) \n"
  4869.    "       (declare (in) vec4 P) \n"
  4870.    "       (declare (in) float bias) )\n"
  4871.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4872.    "\n"
  4873.    "   (signature uvec4\n"
  4874.    "     (parameters\n"
  4875.    "       (declare (in) usamplerCubeArray sampler) \n"
  4876.    "       (declare (in) vec4 P) \n"
  4877.    "       (declare (in) float bias) )\n"
  4878.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4879.    "\n"
  4880.    "   (signature float\n"
  4881.    "     (parameters\n"
  4882.    "       (declare (in) sampler1DShadow sampler) \n"
  4883.    "       (declare (in) vec3 P) \n"
  4884.    "       (declare (in) float bias) )\n"
  4885.    "     ((return (txb float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  4886.    "\n"
  4887.    "   (signature float\n"
  4888.    "     (parameters\n"
  4889.    "       (declare (in) sampler2DShadow sampler) \n"
  4890.    "       (declare (in) vec3 P) \n"
  4891.    "       (declare (in) float bias) )\n"
  4892.    "     ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  4893.    "\n"
  4894.    "   (signature float\n"
  4895.    "     (parameters\n"
  4896.    "       (declare (in) samplerCubeShadow sampler) \n"
  4897.    "       (declare (in) vec4 P) \n"
  4898.    "       (declare (in) float bias) )\n"
  4899.    "     ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) (var_ref bias) ))))\n"
  4900.    "\n"
  4901.    "   (signature float\n"
  4902.    "     (parameters\n"
  4903.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  4904.    "       (declare (in) vec3 P) \n"
  4905.    "       (declare (in) float bias) )\n"
  4906.    "     ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  4907.    "\n"
  4908.    "   (signature float\n"
  4909.    "     (parameters\n"
  4910.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  4911.    "       (declare (in) vec4 P) \n"
  4912.    "       (declare (in) float bias) )\n"
  4913.    "     ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) (var_ref bias) ))))\n"
  4914.    "\n"
  4915.    "))\n"
  4916.    ""
  4917. ;
  4918. static const char builtin_texture1D[] =
  4919.    "((function texture1D\n"
  4920.    "   (signature vec4\n"
  4921.    "     (parameters\n"
  4922.    "       (declare (in) sampler1D sampler) \n"
  4923.    "       (declare (in) float P) )\n"
  4924.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4925.    "\n"
  4926.    "   (signature vec4\n"
  4927.    "     (parameters\n"
  4928.    "       (declare (in) sampler1D sampler) \n"
  4929.    "       (declare (in) float P) \n"
  4930.    "       (declare (in) float bias) )\n"
  4931.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4932.    "\n"
  4933.    "))\n"
  4934.    ""
  4935. ;
  4936. static const char builtin_texture1DArray[] =
  4937.    "((function texture1DArray\n"
  4938.    "   (signature vec4\n"
  4939.    "     (parameters\n"
  4940.    "       (declare (in) sampler1DArray sampler) \n"
  4941.    "       (declare (in) vec2 P) )\n"
  4942.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  4943.    "\n"
  4944.    "   (signature vec4\n"
  4945.    "     (parameters\n"
  4946.    "       (declare (in) sampler1DArray sampler) \n"
  4947.    "       (declare (in) vec2 P) \n"
  4948.    "       (declare (in) float bias) )\n"
  4949.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  4950.    "\n"
  4951.    "))\n"
  4952.    ""
  4953. ;
  4954. static const char builtin_texture1DArrayLod[] =
  4955.    "((function texture1DArrayLod\n"
  4956.    "   (signature vec4\n"
  4957.    "     (parameters\n"
  4958.    "       (declare (in) sampler1DArray sampler) \n"
  4959.    "       (declare (in) vec2 P) \n"
  4960.    "       (declare (in) float lod) )\n"
  4961.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  4962.    "\n"
  4963.    "))\n"
  4964.    ""
  4965. ;
  4966. static const char builtin_texture1DGradARB[] =
  4967.    "((function texture1DGradARB\n"
  4968.    "   (signature vec4\n"
  4969.    "     (parameters\n"
  4970.    "       (declare (in) sampler1D sampler) \n"
  4971.    "       (declare (in) float P) \n"
  4972.    "       (declare (in) float dPdx) \n"
  4973.    "       (declare (in) float dPdy) )\n"
  4974.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  4975.    "\n"
  4976.    "   (signature ivec4\n"
  4977.    "     (parameters\n"
  4978.    "       (declare (in) isampler1D sampler) \n"
  4979.    "       (declare (in) float P) \n"
  4980.    "       (declare (in) float dPdx) \n"
  4981.    "       (declare (in) float dPdy) )\n"
  4982.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  4983.    "\n"
  4984.    "   (signature uvec4\n"
  4985.    "     (parameters\n"
  4986.    "       (declare (in) usampler1D sampler) \n"
  4987.    "       (declare (in) float P) \n"
  4988.    "       (declare (in) float dPdx) \n"
  4989.    "       (declare (in) float dPdy) )\n"
  4990.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  4991.    "\n"
  4992.    "))\n"
  4993.    ""
  4994. ;
  4995. static const char builtin_texture1DLod[] =
  4996.    "((function texture1DLod\n"
  4997.    "   (signature vec4\n"
  4998.    "     (parameters\n"
  4999.    "       (declare (in) sampler1D sampler) \n"
  5000.    "       (declare (in) float P) \n"
  5001.    "       (declare (in) float lod) )\n"
  5002.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  5003.    "\n"
  5004.    "))\n"
  5005.    ""
  5006. ;
  5007. static const char builtin_texture1DProj[] =
  5008.    "((function texture1DProj\n"
  5009.    "   (signature vec4\n"
  5010.    "     (parameters\n"
  5011.    "       (declare (in) sampler1D sampler) \n"
  5012.    "       (declare (in) vec2 P) )\n"
  5013.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
  5014.    "\n"
  5015.    "   (signature vec4\n"
  5016.    "     (parameters\n"
  5017.    "       (declare (in) sampler1D sampler) \n"
  5018.    "       (declare (in) vec4 P) )\n"
  5019.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  5020.    "\n"
  5021.    "   (signature vec4\n"
  5022.    "     (parameters\n"
  5023.    "       (declare (in) sampler1D sampler) \n"
  5024.    "       (declare (in) vec2 P) \n"
  5025.    "       (declare (in) float bias) )\n"
  5026.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  5027.    "\n"
  5028.    "   (signature vec4\n"
  5029.    "     (parameters\n"
  5030.    "       (declare (in) sampler1D sampler) \n"
  5031.    "       (declare (in) vec4 P) \n"
  5032.    "       (declare (in) float bias) )\n"
  5033.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  5034.    "\n"
  5035.    "))\n"
  5036.    ""
  5037. ;
  5038. static const char builtin_texture1DProjGradARB[] =
  5039.    "((function texture1DProjGradARB\n"
  5040.    "   (signature vec4\n"
  5041.    "     (parameters\n"
  5042.    "       (declare (in) sampler1D sampler) \n"
  5043.    "       (declare (in) vec2 P) \n"
  5044.    "       (declare (in) float dPdx) \n"
  5045.    "       (declare (in) float dPdy) )\n"
  5046.    "     ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5047.    "\n"
  5048.    "   (signature ivec4\n"
  5049.    "     (parameters\n"
  5050.    "       (declare (in) isampler1D sampler) \n"
  5051.    "       (declare (in) vec2 P) \n"
  5052.    "       (declare (in) float dPdx) \n"
  5053.    "       (declare (in) float dPdy) )\n"
  5054.    "     ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5055.    "\n"
  5056.    "   (signature uvec4\n"
  5057.    "     (parameters\n"
  5058.    "       (declare (in) usampler1D sampler) \n"
  5059.    "       (declare (in) vec2 P) \n"
  5060.    "       (declare (in) float dPdx) \n"
  5061.    "       (declare (in) float dPdy) )\n"
  5062.    "     ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5063.    "\n"
  5064.    "   (signature vec4\n"
  5065.    "     (parameters\n"
  5066.    "       (declare (in) sampler1D sampler) \n"
  5067.    "       (declare (in) vec4 P) \n"
  5068.    "       (declare (in) float dPdx) \n"
  5069.    "       (declare (in) float dPdy) )\n"
  5070.    "     ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5071.    "\n"
  5072.    "   (signature ivec4\n"
  5073.    "     (parameters\n"
  5074.    "       (declare (in) isampler1D sampler) \n"
  5075.    "       (declare (in) vec4 P) \n"
  5076.    "       (declare (in) float dPdx) \n"
  5077.    "       (declare (in) float dPdy) )\n"
  5078.    "     ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5079.    "\n"
  5080.    "   (signature uvec4\n"
  5081.    "     (parameters\n"
  5082.    "       (declare (in) usampler1D sampler) \n"
  5083.    "       (declare (in) vec4 P) \n"
  5084.    "       (declare (in) float dPdx) \n"
  5085.    "       (declare (in) float dPdy) )\n"
  5086.    "     ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5087.    "\n"
  5088.    "))\n"
  5089.    ""
  5090. ;
  5091. static const char builtin_texture1DProjLod[] =
  5092.    "((function texture1DProjLod\n"
  5093.    "   (signature vec4\n"
  5094.    "     (parameters\n"
  5095.    "       (declare (in) sampler1D sampler) \n"
  5096.    "       (declare (in) vec2 P) \n"
  5097.    "       (declare (in) float lod) )\n"
  5098.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  5099.    "\n"
  5100.    "   (signature vec4\n"
  5101.    "     (parameters\n"
  5102.    "       (declare (in) sampler1D sampler) \n"
  5103.    "       (declare (in) vec4 P) \n"
  5104.    "       (declare (in) float lod) )\n"
  5105.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  5106.    "\n"
  5107.    "))\n"
  5108.    ""
  5109. ;
  5110. static const char builtin_texture2D[] =
  5111.    "((function texture2D\n"
  5112.    "   (signature vec4\n"
  5113.    "     (parameters\n"
  5114.    "       (declare (in) sampler2D sampler) \n"
  5115.    "       (declare (in) vec2 P) )\n"
  5116.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5117.    "\n"
  5118.    "   (signature vec4\n"
  5119.    "     (parameters\n"
  5120.    "       (declare (in) sampler2D sampler) \n"
  5121.    "       (declare (in) vec2 P) \n"
  5122.    "       (declare (in) float bias) )\n"
  5123.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  5124.    "\n"
  5125.    "   (signature vec4\n"
  5126.    "     (parameters\n"
  5127.    "       (declare (in) samplerExternalOES sampler) \n"
  5128.    "       (declare (in) vec2 P) )\n"
  5129.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5130.    "\n"
  5131.    "))\n"
  5132.    ""
  5133. ;
  5134. static const char builtin_texture2DArray[] =
  5135.    "((function texture2DArray\n"
  5136.    "   (signature vec4\n"
  5137.    "     (parameters\n"
  5138.    "       (declare (in) sampler2DArray sampler) \n"
  5139.    "       (declare (in) vec3 P) )\n"
  5140.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5141.    "\n"
  5142.    "   (signature vec4\n"
  5143.    "     (parameters\n"
  5144.    "       (declare (in) sampler2DArray sampler) \n"
  5145.    "       (declare (in) vec3 P) \n"
  5146.    "       (declare (in) float bias) )\n"
  5147.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  5148.    "\n"
  5149.    "))\n"
  5150.    ""
  5151. ;
  5152. static const char builtin_texture2DArrayLod[] =
  5153.    "((function texture2DArrayLod\n"
  5154.    "   (signature vec4\n"
  5155.    "     (parameters\n"
  5156.    "       (declare (in) sampler2DArray sampler) \n"
  5157.    "       (declare (in) vec3 P) \n"
  5158.    "       (declare (in) float lod) )\n"
  5159.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  5160.    "\n"
  5161.    "))\n"
  5162.    ""
  5163. ;
  5164. static const char builtin_texture2DGradARB[] =
  5165.    "((function texture2DGradARB\n"
  5166.    "   (signature vec4\n"
  5167.    "     (parameters\n"
  5168.    "       (declare (in) sampler2D sampler) \n"
  5169.    "       (declare (in) vec2 P) \n"
  5170.    "       (declare (in) vec2 dPdx) \n"
  5171.    "       (declare (in) vec2 dPdy) )\n"
  5172.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5173.    "\n"
  5174.    "   (signature ivec4\n"
  5175.    "     (parameters\n"
  5176.    "       (declare (in) isampler2D sampler) \n"
  5177.    "       (declare (in) vec2 P) \n"
  5178.    "       (declare (in) vec2 dPdx) \n"
  5179.    "       (declare (in) vec2 dPdy) )\n"
  5180.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5181.    "\n"
  5182.    "   (signature uvec4\n"
  5183.    "     (parameters\n"
  5184.    "       (declare (in) usampler2D sampler) \n"
  5185.    "       (declare (in) vec2 P) \n"
  5186.    "       (declare (in) vec2 dPdx) \n"
  5187.    "       (declare (in) vec2 dPdy) )\n"
  5188.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5189.    "\n"
  5190.    "))\n"
  5191.    ""
  5192. ;
  5193. static const char builtin_texture2DLod[] =
  5194.    "((function texture2DLod\n"
  5195.    "   (signature vec4\n"
  5196.    "     (parameters\n"
  5197.    "       (declare (in) sampler2D sampler) \n"
  5198.    "       (declare (in) vec2 P) \n"
  5199.    "       (declare (in) float lod) )\n"
  5200.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  5201.    "\n"
  5202.    "))\n"
  5203.    ""
  5204. ;
  5205. static const char builtin_texture2DProj[] =
  5206.    "((function texture2DProj\n"
  5207.    "   (signature vec4\n"
  5208.    "     (parameters\n"
  5209.    "       (declare (in) sampler2D sampler) \n"
  5210.    "       (declare (in) vec3 P) )\n"
  5211.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  5212.    "\n"
  5213.    "   (signature vec4\n"
  5214.    "     (parameters\n"
  5215.    "       (declare (in) sampler2D sampler) \n"
  5216.    "       (declare (in) vec4 P) )\n"
  5217.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  5218.    "\n"
  5219.    "   (signature vec4\n"
  5220.    "     (parameters\n"
  5221.    "       (declare (in) sampler2D sampler) \n"
  5222.    "       (declare (in) vec3 P) \n"
  5223.    "       (declare (in) float bias) )\n"
  5224.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  5225.    "\n"
  5226.    "   (signature vec4\n"
  5227.    "     (parameters\n"
  5228.    "       (declare (in) sampler2D sampler) \n"
  5229.    "       (declare (in) vec4 P) \n"
  5230.    "       (declare (in) float bias) )\n"
  5231.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  5232.    "\n"
  5233.    "   (signature vec4\n"
  5234.    "     (parameters\n"
  5235.    "       (declare (in) samplerExternalOES sampler) \n"
  5236.    "       (declare (in) vec3 P) )\n"
  5237.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  5238.    "\n"
  5239.    "   (signature vec4\n"
  5240.    "     (parameters\n"
  5241.    "       (declare (in) samplerExternalOES sampler) \n"
  5242.    "       (declare (in) vec4 P) )\n"
  5243.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  5244.    "\n"
  5245.    "))\n"
  5246.    ""
  5247. ;
  5248. static const char builtin_texture2DProjGradARB[] =
  5249.    "((function texture2DProjGradARB\n"
  5250.    "   (signature vec4\n"
  5251.    "     (parameters\n"
  5252.    "       (declare (in) sampler2D sampler) \n"
  5253.    "       (declare (in) vec3 P) \n"
  5254.    "       (declare (in) vec2 dPdx) \n"
  5255.    "       (declare (in) vec2 dPdy) )\n"
  5256.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5257.    "\n"
  5258.    "   (signature ivec4\n"
  5259.    "     (parameters\n"
  5260.    "       (declare (in) isampler2D sampler) \n"
  5261.    "       (declare (in) vec3 P) \n"
  5262.    "       (declare (in) vec2 dPdx) \n"
  5263.    "       (declare (in) vec2 dPdy) )\n"
  5264.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5265.    "\n"
  5266.    "   (signature uvec4\n"
  5267.    "     (parameters\n"
  5268.    "       (declare (in) usampler2D sampler) \n"
  5269.    "       (declare (in) vec3 P) \n"
  5270.    "       (declare (in) vec2 dPdx) \n"
  5271.    "       (declare (in) vec2 dPdy) )\n"
  5272.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5273.    "\n"
  5274.    "   (signature vec4\n"
  5275.    "     (parameters\n"
  5276.    "       (declare (in) sampler2D sampler) \n"
  5277.    "       (declare (in) vec4 P) \n"
  5278.    "       (declare (in) vec2 dPdx) \n"
  5279.    "       (declare (in) vec2 dPdy) )\n"
  5280.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5281.    "\n"
  5282.    "   (signature ivec4\n"
  5283.    "     (parameters\n"
  5284.    "       (declare (in) isampler2D sampler) \n"
  5285.    "       (declare (in) vec4 P) \n"
  5286.    "       (declare (in) vec2 dPdx) \n"
  5287.    "       (declare (in) vec2 dPdy) )\n"
  5288.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5289.    "\n"
  5290.    "   (signature uvec4\n"
  5291.    "     (parameters\n"
  5292.    "       (declare (in) usampler2D sampler) \n"
  5293.    "       (declare (in) vec4 P) \n"
  5294.    "       (declare (in) vec2 dPdx) \n"
  5295.    "       (declare (in) vec2 dPdy) )\n"
  5296.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5297.    "\n"
  5298.    "))\n"
  5299.    ""
  5300. ;
  5301. static const char builtin_texture2DProjLod[] =
  5302.    "((function texture2DProjLod\n"
  5303.    "   (signature vec4\n"
  5304.    "     (parameters\n"
  5305.    "       (declare (in) sampler2D sampler) \n"
  5306.    "       (declare (in) vec3 P) \n"
  5307.    "       (declare (in) float lod) )\n"
  5308.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  5309.    "\n"
  5310.    "   (signature vec4\n"
  5311.    "     (parameters\n"
  5312.    "       (declare (in) sampler2D sampler) \n"
  5313.    "       (declare (in) vec4 P) \n"
  5314.    "       (declare (in) float lod) )\n"
  5315.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  5316.    "\n"
  5317.    "))\n"
  5318.    ""
  5319. ;
  5320. static const char builtin_texture2DRect[] =
  5321.    "((function texture2DRect\n"
  5322.    "   (signature vec4\n"
  5323.    "     (parameters\n"
  5324.    "       (declare (in) sampler2DRect sampler) \n"
  5325.    "       (declare (in) vec2 P) )\n"
  5326.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5327.    "\n"
  5328.    "))\n"
  5329.    ""
  5330. ;
  5331. static const char builtin_texture2DRectGradARB[] =
  5332.    "((function texture2DRectGradARB\n"
  5333.    "   (signature vec4\n"
  5334.    "     (parameters\n"
  5335.    "       (declare (in) sampler2DRect sampler) \n"
  5336.    "       (declare (in) vec2 P) \n"
  5337.    "       (declare (in) vec2 dPdx) \n"
  5338.    "       (declare (in) vec2 dPdy) )\n"
  5339.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5340.    "\n"
  5341.    "))\n"
  5342.    ""
  5343. ;
  5344. static const char builtin_texture2DRectProj[] =
  5345.    "((function texture2DRectProj\n"
  5346.    "   (signature vec4\n"
  5347.    "     (parameters\n"
  5348.    "       (declare (in) sampler2DRect sampler) \n"
  5349.    "       (declare (in) vec3 P) )\n"
  5350.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  5351.    "\n"
  5352.    "   (signature vec4\n"
  5353.    "     (parameters\n"
  5354.    "       (declare (in) sampler2DRect sampler) \n"
  5355.    "       (declare (in) vec4 P) )\n"
  5356.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  5357.    "\n"
  5358.    "))\n"
  5359.    ""
  5360. ;
  5361. static const char builtin_texture2DRectProjGradARB[] =
  5362.    "((function texture2DRectProjGradARB\n"
  5363.    "   (signature vec4\n"
  5364.    "     (parameters\n"
  5365.    "       (declare (in) sampler2DRect sampler) \n"
  5366.    "       (declare (in) vec3 P) \n"
  5367.    "       (declare (in) vec2 dPdx) \n"
  5368.    "       (declare (in) vec2 dPdy) )\n"
  5369.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5370.    "\n"
  5371.    "   (signature vec4\n"
  5372.    "     (parameters\n"
  5373.    "       (declare (in) sampler2DRect sampler) \n"
  5374.    "       (declare (in) vec4 P) \n"
  5375.    "       (declare (in) vec2 dPdx) \n"
  5376.    "       (declare (in) vec2 dPdy) )\n"
  5377.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5378.    "\n"
  5379.    "))\n"
  5380.    ""
  5381. ;
  5382. static const char builtin_texture3D[] =
  5383.    "((function texture3D\n"
  5384.    "   (signature vec4\n"
  5385.    "     (parameters\n"
  5386.    "       (declare (in) sampler3D sampler) \n"
  5387.    "       (declare (in) vec3 P) )\n"
  5388.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5389.    "\n"
  5390.    "   (signature vec4\n"
  5391.    "     (parameters\n"
  5392.    "       (declare (in) sampler3D sampler) \n"
  5393.    "       (declare (in) vec3 P) \n"
  5394.    "       (declare (in) float bias) )\n"
  5395.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  5396.    "\n"
  5397.    "))\n"
  5398.    ""
  5399. ;
  5400. static const char builtin_texture3DGradARB[] =
  5401.    "((function texture3DGradARB\n"
  5402.    "   (signature vec4\n"
  5403.    "     (parameters\n"
  5404.    "       (declare (in) sampler3D sampler) \n"
  5405.    "       (declare (in) vec3 P) \n"
  5406.    "       (declare (in) vec3 dPdx) \n"
  5407.    "       (declare (in) vec3 dPdy) )\n"
  5408.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5409.    "\n"
  5410.    "   (signature ivec4\n"
  5411.    "     (parameters\n"
  5412.    "       (declare (in) isampler3D sampler) \n"
  5413.    "       (declare (in) vec3 P) \n"
  5414.    "       (declare (in) vec3 dPdx) \n"
  5415.    "       (declare (in) vec3 dPdy) )\n"
  5416.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5417.    "\n"
  5418.    "   (signature uvec4\n"
  5419.    "     (parameters\n"
  5420.    "       (declare (in) usampler3D sampler) \n"
  5421.    "       (declare (in) vec3 P) \n"
  5422.    "       (declare (in) vec3 dPdx) \n"
  5423.    "       (declare (in) vec3 dPdy) )\n"
  5424.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5425.    "\n"
  5426.    "))\n"
  5427.    ""
  5428. ;
  5429. static const char builtin_texture3DLod[] =
  5430.    "((function texture3DLod\n"
  5431.    "   (signature vec4\n"
  5432.    "     (parameters\n"
  5433.    "       (declare (in) sampler3D sampler) \n"
  5434.    "       (declare (in) vec3 P) \n"
  5435.    "       (declare (in) float lod) )\n"
  5436.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  5437.    "\n"
  5438.    "))\n"
  5439.    ""
  5440. ;
  5441. static const char builtin_texture3DProj[] =
  5442.    "((function texture3DProj\n"
  5443.    "   (signature vec4\n"
  5444.    "     (parameters\n"
  5445.    "       (declare (in) sampler3D sampler) \n"
  5446.    "       (declare (in) vec4 P) )\n"
  5447.    "     ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  5448.    "\n"
  5449.    "   (signature vec4\n"
  5450.    "     (parameters\n"
  5451.    "       (declare (in) sampler3D sampler) \n"
  5452.    "       (declare (in) vec4 P) \n"
  5453.    "       (declare (in) float bias) )\n"
  5454.    "     ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  5455.    "\n"
  5456.    "))\n"
  5457.    ""
  5458. ;
  5459. static const char builtin_texture3DProjGradARB[] =
  5460.    "((function texture3DProjGradARB\n"
  5461.    "   (signature vec4\n"
  5462.    "     (parameters\n"
  5463.    "       (declare (in) sampler3D sampler) \n"
  5464.    "       (declare (in) vec4 P) \n"
  5465.    "       (declare (in) vec3 dPdx) \n"
  5466.    "       (declare (in) vec3 dPdy) )\n"
  5467.    "     ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5468.    "\n"
  5469.    "   (signature ivec4\n"
  5470.    "     (parameters\n"
  5471.    "       (declare (in) isampler3D sampler) \n"
  5472.    "       (declare (in) vec4 P) \n"
  5473.    "       (declare (in) vec3 dPdx) \n"
  5474.    "       (declare (in) vec3 dPdy) )\n"
  5475.    "     ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5476.    "\n"
  5477.    "   (signature uvec4\n"
  5478.    "     (parameters\n"
  5479.    "       (declare (in) usampler3D sampler) \n"
  5480.    "       (declare (in) vec4 P) \n"
  5481.    "       (declare (in) vec3 dPdx) \n"
  5482.    "       (declare (in) vec3 dPdy) )\n"
  5483.    "     ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5484.    "\n"
  5485.    "))\n"
  5486.    ""
  5487. ;
  5488. static const char builtin_texture3DProjLod[] =
  5489.    "((function texture3DProjLod\n"
  5490.    "   (signature vec4\n"
  5491.    "     (parameters\n"
  5492.    "       (declare (in) sampler3D sampler) \n"
  5493.    "       (declare (in) vec4 P) \n"
  5494.    "       (declare (in) float lod) )\n"
  5495.    "     ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  5496.    "\n"
  5497.    "))\n"
  5498.    ""
  5499. ;
  5500. static const char builtin_textureCube[] =
  5501.    "((function textureCube\n"
  5502.    "   (signature vec4\n"
  5503.    "     (parameters\n"
  5504.    "       (declare (in) samplerCube sampler) \n"
  5505.    "       (declare (in) vec3 P) )\n"
  5506.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n"
  5507.    "\n"
  5508.    "   (signature vec4\n"
  5509.    "     (parameters\n"
  5510.    "       (declare (in) samplerCube sampler) \n"
  5511.    "       (declare (in) vec3 P) \n"
  5512.    "       (declare (in) float bias) )\n"
  5513.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n"
  5514.    "\n"
  5515.    "))\n"
  5516.    ""
  5517. ;
  5518. static const char builtin_textureCubeGradARB[] =
  5519.    "((function textureCubeGradARB\n"
  5520.    "   (signature vec4\n"
  5521.    "     (parameters\n"
  5522.    "       (declare (in) samplerCube sampler) \n"
  5523.    "       (declare (in) vec3 P) \n"
  5524.    "       (declare (in) vec3 dPdx) \n"
  5525.    "       (declare (in) vec3 dPdy) )\n"
  5526.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5527.    "\n"
  5528.    "   (signature ivec4\n"
  5529.    "     (parameters\n"
  5530.    "       (declare (in) isamplerCube sampler) \n"
  5531.    "       (declare (in) vec3 P) \n"
  5532.    "       (declare (in) vec3 dPdx) \n"
  5533.    "       (declare (in) vec3 dPdy) )\n"
  5534.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5535.    "\n"
  5536.    "   (signature uvec4\n"
  5537.    "     (parameters\n"
  5538.    "       (declare (in) usamplerCube sampler) \n"
  5539.    "       (declare (in) vec3 P) \n"
  5540.    "       (declare (in) vec3 dPdx) \n"
  5541.    "       (declare (in) vec3 dPdy) )\n"
  5542.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5543.    "\n"
  5544.    "))\n"
  5545.    ""
  5546. ;
  5547. static const char builtin_textureCubeLod[] =
  5548.    "((function textureCubeLod\n"
  5549.    "   (signature vec4\n"
  5550.    "     (parameters\n"
  5551.    "       (declare (in) samplerCube sampler) \n"
  5552.    "       (declare (in) vec3 P) \n"
  5553.    "       (declare (in) float lod) )\n"
  5554.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  5555.    "\n"
  5556.    "))\n"
  5557.    ""
  5558. ;
  5559. static const char builtin_textureGrad[] =
  5560.    "((function textureGrad\n"
  5561.    "   (signature vec4\n"
  5562.    "     (parameters\n"
  5563.    "       (declare (in) sampler1D sampler) \n"
  5564.    "       (declare (in) float P) \n"
  5565.    "       (declare (in) float dPdx) \n"
  5566.    "       (declare (in) float dPdy) )\n"
  5567.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5568.    "\n"
  5569.    "   (signature ivec4\n"
  5570.    "     (parameters\n"
  5571.    "       (declare (in) isampler1D sampler) \n"
  5572.    "       (declare (in) float P) \n"
  5573.    "       (declare (in) float dPdx) \n"
  5574.    "       (declare (in) float dPdy) )\n"
  5575.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5576.    "\n"
  5577.    "   (signature uvec4\n"
  5578.    "     (parameters\n"
  5579.    "       (declare (in) usampler1D sampler) \n"
  5580.    "       (declare (in) float P) \n"
  5581.    "       (declare (in) float dPdx) \n"
  5582.    "       (declare (in) float dPdy) )\n"
  5583.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5584.    "\n"
  5585.    "   (signature vec4\n"
  5586.    "     (parameters\n"
  5587.    "       (declare (in) sampler2D sampler) \n"
  5588.    "       (declare (in) vec2 P) \n"
  5589.    "       (declare (in) vec2 dPdx) \n"
  5590.    "       (declare (in) vec2 dPdy) )\n"
  5591.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5592.    "\n"
  5593.    "   (signature ivec4\n"
  5594.    "     (parameters\n"
  5595.    "       (declare (in) isampler2D sampler) \n"
  5596.    "       (declare (in) vec2 P) \n"
  5597.    "       (declare (in) vec2 dPdx) \n"
  5598.    "       (declare (in) vec2 dPdy) )\n"
  5599.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5600.    "\n"
  5601.    "   (signature uvec4\n"
  5602.    "     (parameters\n"
  5603.    "       (declare (in) usampler2D sampler) \n"
  5604.    "       (declare (in) vec2 P) \n"
  5605.    "       (declare (in) vec2 dPdx) \n"
  5606.    "       (declare (in) vec2 dPdy) )\n"
  5607.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5608.    "\n"
  5609.    "   (signature vec4\n"
  5610.    "     (parameters\n"
  5611.    "       (declare (in) sampler3D sampler) \n"
  5612.    "       (declare (in) vec3 P) \n"
  5613.    "       (declare (in) vec3 dPdx) \n"
  5614.    "       (declare (in) vec3 dPdy) )\n"
  5615.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5616.    "\n"
  5617.    "   (signature ivec4\n"
  5618.    "     (parameters\n"
  5619.    "       (declare (in) isampler3D sampler) \n"
  5620.    "       (declare (in) vec3 P) \n"
  5621.    "       (declare (in) vec3 dPdx) \n"
  5622.    "       (declare (in) vec3 dPdy) )\n"
  5623.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5624.    "\n"
  5625.    "   (signature uvec4\n"
  5626.    "     (parameters\n"
  5627.    "       (declare (in) usampler3D sampler) \n"
  5628.    "       (declare (in) vec3 P) \n"
  5629.    "       (declare (in) vec3 dPdx) \n"
  5630.    "       (declare (in) vec3 dPdy) )\n"
  5631.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5632.    "\n"
  5633.    "   (signature vec4\n"
  5634.    "     (parameters\n"
  5635.    "       (declare (in) samplerCube sampler) \n"
  5636.    "       (declare (in) vec3 P) \n"
  5637.    "       (declare (in) vec3 dPdx) \n"
  5638.    "       (declare (in) vec3 dPdy) )\n"
  5639.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5640.    "\n"
  5641.    "   (signature ivec4\n"
  5642.    "     (parameters\n"
  5643.    "       (declare (in) isamplerCube sampler) \n"
  5644.    "       (declare (in) vec3 P) \n"
  5645.    "       (declare (in) vec3 dPdx) \n"
  5646.    "       (declare (in) vec3 dPdy) )\n"
  5647.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5648.    "\n"
  5649.    "   (signature uvec4\n"
  5650.    "     (parameters\n"
  5651.    "       (declare (in) usamplerCube sampler) \n"
  5652.    "       (declare (in) vec3 P) \n"
  5653.    "       (declare (in) vec3 dPdx) \n"
  5654.    "       (declare (in) vec3 dPdy) )\n"
  5655.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5656.    "\n"
  5657.    "   (signature vec4\n"
  5658.    "     (parameters\n"
  5659.    "       (declare (in) sampler1DArray sampler) \n"
  5660.    "       (declare (in) vec2 P) \n"
  5661.    "       (declare (in) float dPdx) \n"
  5662.    "       (declare (in) float dPdy) )\n"
  5663.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5664.    "\n"
  5665.    "   (signature ivec4\n"
  5666.    "     (parameters\n"
  5667.    "       (declare (in) isampler1DArray sampler) \n"
  5668.    "       (declare (in) vec2 P) \n"
  5669.    "       (declare (in) float dPdx) \n"
  5670.    "       (declare (in) float dPdy) )\n"
  5671.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5672.    "\n"
  5673.    "   (signature uvec4\n"
  5674.    "     (parameters\n"
  5675.    "       (declare (in) usampler1DArray sampler) \n"
  5676.    "       (declare (in) vec2 P) \n"
  5677.    "       (declare (in) float dPdx) \n"
  5678.    "       (declare (in) float dPdy) )\n"
  5679.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5680.    "\n"
  5681.    "   (signature vec4\n"
  5682.    "     (parameters\n"
  5683.    "       (declare (in) sampler2DArray sampler) \n"
  5684.    "       (declare (in) vec3 P) \n"
  5685.    "       (declare (in) vec2 dPdx) \n"
  5686.    "       (declare (in) vec2 dPdy) )\n"
  5687.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5688.    "\n"
  5689.    "   (signature ivec4\n"
  5690.    "     (parameters\n"
  5691.    "       (declare (in) isampler2DArray sampler) \n"
  5692.    "       (declare (in) vec3 P) \n"
  5693.    "       (declare (in) vec2 dPdx) \n"
  5694.    "       (declare (in) vec2 dPdy) )\n"
  5695.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5696.    "\n"
  5697.    "   (signature uvec4\n"
  5698.    "     (parameters\n"
  5699.    "       (declare (in) usampler2DArray sampler) \n"
  5700.    "       (declare (in) vec3 P) \n"
  5701.    "       (declare (in) vec2 dPdx) \n"
  5702.    "       (declare (in) vec2 dPdy) )\n"
  5703.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5704.    "\n"
  5705.    "   (signature vec4\n"
  5706.    "     (parameters\n"
  5707.    "       (declare (in) sampler2DRect sampler) \n"
  5708.    "       (declare (in) vec2 P) \n"
  5709.    "       (declare (in) vec2 dPdx) \n"
  5710.    "       (declare (in) vec2 dPdy) )\n"
  5711.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5712.    "\n"
  5713.    "   (signature ivec4\n"
  5714.    "     (parameters\n"
  5715.    "       (declare (in) isampler2DRect sampler) \n"
  5716.    "       (declare (in) vec2 P) \n"
  5717.    "       (declare (in) vec2 dPdx) \n"
  5718.    "       (declare (in) vec2 dPdy) )\n"
  5719.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5720.    "\n"
  5721.    "   (signature uvec4\n"
  5722.    "     (parameters\n"
  5723.    "       (declare (in) usampler2DRect sampler) \n"
  5724.    "       (declare (in) vec2 P) \n"
  5725.    "       (declare (in) vec2 dPdx) \n"
  5726.    "       (declare (in) vec2 dPdy) )\n"
  5727.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5728.    "\n"
  5729.    "   (signature float\n"
  5730.    "     (parameters\n"
  5731.    "       (declare (in) sampler2DRectShadow sampler) \n"
  5732.    "       (declare (in) vec3 P) \n"
  5733.    "       (declare (in) vec2 dPdx) \n"
  5734.    "       (declare (in) vec2 dPdy) )\n"
  5735.    "     ((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"
  5736.    "\n"
  5737.    "   (signature float\n"
  5738.    "     (parameters\n"
  5739.    "       (declare (in) sampler1DShadow sampler) \n"
  5740.    "       (declare (in) vec3 P) \n"
  5741.    "       (declare (in) float dPdx) \n"
  5742.    "       (declare (in) float dPdy) )\n"
  5743.    "     ((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"
  5744.    "\n"
  5745.    "   (signature float\n"
  5746.    "     (parameters\n"
  5747.    "       (declare (in) sampler2DShadow sampler) \n"
  5748.    "       (declare (in) vec3 P) \n"
  5749.    "       (declare (in) vec2 dPdx) \n"
  5750.    "       (declare (in) vec2 dPdy) )\n"
  5751.    "     ((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"
  5752.    "\n"
  5753.    "   (signature float\n"
  5754.    "     (parameters\n"
  5755.    "       (declare (in) samplerCubeShadow sampler) \n"
  5756.    "       (declare (in) vec4 P) \n"
  5757.    "       (declare (in) vec3 dPdx) \n"
  5758.    "       (declare (in) vec3 dPdy) )\n"
  5759.    "     ((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"
  5760.    "\n"
  5761.    "   (signature float\n"
  5762.    "     (parameters\n"
  5763.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  5764.    "       (declare (in) vec3 P) \n"
  5765.    "       (declare (in) float dPdx) \n"
  5766.    "       (declare (in) float dPdy) )\n"
  5767.    "     ((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"
  5768.    "\n"
  5769.    "   (signature float\n"
  5770.    "     (parameters\n"
  5771.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  5772.    "       (declare (in) vec4 P) \n"
  5773.    "       (declare (in) vec2 dPdx) \n"
  5774.    "       (declare (in) vec2 dPdy) )\n"
  5775.    "     ((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"
  5776.    "\n"
  5777.    "   (signature vec4\n"
  5778.    "     (parameters\n"
  5779.    "       (declare (in) samplerCubeArray sampler) \n"
  5780.    "       (declare (in) vec4 P) \n"
  5781.    "       (declare (in) vec3 dPdx) \n"
  5782.    "       (declare (in) vec3 dPdy) )\n"
  5783.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5784.    "\n"
  5785.    "   (signature ivec4\n"
  5786.    "     (parameters\n"
  5787.    "       (declare (in) isamplerCubeArray sampler) \n"
  5788.    "       (declare (in) vec4 P) \n"
  5789.    "       (declare (in) vec3 dPdx) \n"
  5790.    "       (declare (in) vec3 dPdy) )\n"
  5791.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5792.    "\n"
  5793.    "   (signature uvec4\n"
  5794.    "     (parameters\n"
  5795.    "       (declare (in) usamplerCubeArray sampler) \n"
  5796.    "       (declare (in) vec4 P) \n"
  5797.    "       (declare (in) vec3 dPdx) \n"
  5798.    "       (declare (in) vec3 dPdy) )\n"
  5799.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5800.    "\n"
  5801.    "))\n"
  5802.    ""
  5803. ;
  5804. static const char builtin_textureGradOffset[] =
  5805.    "((function textureGradOffset\n"
  5806.    "   (signature vec4\n"
  5807.    "     (parameters\n"
  5808.    "       (declare (in) sampler1D sampler) \n"
  5809.    "       (declare (in) float P) \n"
  5810.    "       (declare (in) float dPdx) \n"
  5811.    "       (declare (in) float dPdy) \n"
  5812.    "       (declare (const_in) int offset) )\n"
  5813.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5814.    "\n"
  5815.    "   (signature ivec4\n"
  5816.    "     (parameters\n"
  5817.    "       (declare (in) isampler1D sampler) \n"
  5818.    "       (declare (in) float P) \n"
  5819.    "       (declare (in) float dPdx) \n"
  5820.    "       (declare (in) float dPdy) \n"
  5821.    "       (declare (const_in) int offset) )\n"
  5822.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5823.    "\n"
  5824.    "   (signature uvec4\n"
  5825.    "     (parameters\n"
  5826.    "       (declare (in) usampler1D sampler) \n"
  5827.    "       (declare (in) float P) \n"
  5828.    "       (declare (in) float dPdx) \n"
  5829.    "       (declare (in) float dPdy) \n"
  5830.    "       (declare (const_in) int offset) )\n"
  5831.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5832.    "\n"
  5833.    "   (signature vec4\n"
  5834.    "     (parameters\n"
  5835.    "       (declare (in) sampler2D sampler) \n"
  5836.    "       (declare (in) vec2 P) \n"
  5837.    "       (declare (in) vec2 dPdx) \n"
  5838.    "       (declare (in) vec2 dPdy) \n"
  5839.    "       (declare (const_in) ivec2 offset) )\n"
  5840.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5841.    "\n"
  5842.    "   (signature ivec4\n"
  5843.    "     (parameters\n"
  5844.    "       (declare (in) isampler2D sampler) \n"
  5845.    "       (declare (in) vec2 P) \n"
  5846.    "       (declare (in) vec2 dPdx) \n"
  5847.    "       (declare (in) vec2 dPdy) \n"
  5848.    "       (declare (const_in) ivec2 offset) )\n"
  5849.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5850.    "\n"
  5851.    "   (signature uvec4\n"
  5852.    "     (parameters\n"
  5853.    "       (declare (in) usampler2D sampler) \n"
  5854.    "       (declare (in) vec2 P) \n"
  5855.    "       (declare (in) vec2 dPdx) \n"
  5856.    "       (declare (in) vec2 dPdy) \n"
  5857.    "       (declare (const_in) ivec2 offset) )\n"
  5858.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5859.    "\n"
  5860.    "   (signature vec4\n"
  5861.    "     (parameters\n"
  5862.    "       (declare (in) sampler3D sampler) \n"
  5863.    "       (declare (in) vec3 P) \n"
  5864.    "       (declare (in) vec3 dPdx) \n"
  5865.    "       (declare (in) vec3 dPdy) \n"
  5866.    "       (declare (const_in) ivec3 offset) )\n"
  5867.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5868.    "\n"
  5869.    "   (signature ivec4\n"
  5870.    "     (parameters\n"
  5871.    "       (declare (in) isampler3D sampler) \n"
  5872.    "       (declare (in) vec3 P) \n"
  5873.    "       (declare (in) vec3 dPdx) \n"
  5874.    "       (declare (in) vec3 dPdy) \n"
  5875.    "       (declare (const_in) ivec3 offset) )\n"
  5876.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5877.    "\n"
  5878.    "   (signature uvec4\n"
  5879.    "     (parameters\n"
  5880.    "       (declare (in) usampler3D sampler) \n"
  5881.    "       (declare (in) vec3 P) \n"
  5882.    "       (declare (in) vec3 dPdx) \n"
  5883.    "       (declare (in) vec3 dPdy) \n"
  5884.    "       (declare (const_in) ivec3 offset) )\n"
  5885.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5886.    "\n"
  5887.    "   (signature vec4\n"
  5888.    "     (parameters\n"
  5889.    "       (declare (in) sampler2DRect sampler) \n"
  5890.    "       (declare (in) vec2 P) \n"
  5891.    "       (declare (in) vec2 dPdx) \n"
  5892.    "       (declare (in) vec2 dPdy) \n"
  5893.    "       (declare (const_in) ivec2 offset) )\n"
  5894.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5895.    "\n"
  5896.    "   (signature ivec4\n"
  5897.    "     (parameters\n"
  5898.    "       (declare (in) isampler2DRect sampler) \n"
  5899.    "       (declare (in) vec2 P) \n"
  5900.    "       (declare (in) vec2 dPdx) \n"
  5901.    "       (declare (in) vec2 dPdy) \n"
  5902.    "       (declare (const_in) ivec2 offset) )\n"
  5903.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5904.    "\n"
  5905.    "   (signature uvec4\n"
  5906.    "     (parameters\n"
  5907.    "       (declare (in) usampler2DRect sampler) \n"
  5908.    "       (declare (in) vec2 P) \n"
  5909.    "       (declare (in) vec2 dPdx) \n"
  5910.    "       (declare (in) vec2 dPdy) \n"
  5911.    "       (declare (const_in) ivec2 offset) )\n"
  5912.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5913.    "\n"
  5914.    "   (signature float\n"
  5915.    "     (parameters\n"
  5916.    "       (declare (in) sampler2DRectShadow sampler) \n"
  5917.    "       (declare (in) vec3 P) \n"
  5918.    "       (declare (in) vec2 dPdx) \n"
  5919.    "       (declare (in) vec2 dPdy) \n"
  5920.    "       (declare (const_in) ivec2 offset) )\n"
  5921.    "     ((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"
  5922.    "\n"
  5923.    "   (signature vec4\n"
  5924.    "     (parameters\n"
  5925.    "       (declare (in) sampler1DArray sampler) \n"
  5926.    "       (declare (in) vec2 P) \n"
  5927.    "       (declare (in) float dPdx) \n"
  5928.    "       (declare (in) float dPdy) \n"
  5929.    "       (declare (const_in) int offset) )\n"
  5930.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5931.    "\n"
  5932.    "   (signature ivec4\n"
  5933.    "     (parameters\n"
  5934.    "       (declare (in) isampler1DArray sampler) \n"
  5935.    "       (declare (in) vec2 P) \n"
  5936.    "       (declare (in) float dPdx) \n"
  5937.    "       (declare (in) float dPdy) \n"
  5938.    "       (declare (const_in) int offset) )\n"
  5939.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5940.    "\n"
  5941.    "   (signature uvec4\n"
  5942.    "     (parameters\n"
  5943.    "       (declare (in) usampler1DArray sampler) \n"
  5944.    "       (declare (in) vec2 P) \n"
  5945.    "       (declare (in) float dPdx) \n"
  5946.    "       (declare (in) float dPdy) \n"
  5947.    "       (declare (const_in) int offset) )\n"
  5948.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5949.    "\n"
  5950.    "   (signature vec4\n"
  5951.    "     (parameters\n"
  5952.    "       (declare (in) sampler2DArray sampler) \n"
  5953.    "       (declare (in) vec3 P) \n"
  5954.    "       (declare (in) vec2 dPdx) \n"
  5955.    "       (declare (in) vec2 dPdy) \n"
  5956.    "       (declare (const_in) ivec2 offset) )\n"
  5957.    "     ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5958.    "\n"
  5959.    "   (signature ivec4\n"
  5960.    "     (parameters\n"
  5961.    "       (declare (in) isampler2DArray sampler) \n"
  5962.    "       (declare (in) vec3 P) \n"
  5963.    "       (declare (in) vec2 dPdx) \n"
  5964.    "       (declare (in) vec2 dPdy) \n"
  5965.    "       (declare (const_in) ivec2 offset) )\n"
  5966.    "     ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5967.    "\n"
  5968.    "   (signature uvec4\n"
  5969.    "     (parameters\n"
  5970.    "       (declare (in) usampler2DArray sampler) \n"
  5971.    "       (declare (in) vec3 P) \n"
  5972.    "       (declare (in) vec2 dPdx) \n"
  5973.    "       (declare (in) vec2 dPdy) \n"
  5974.    "       (declare (const_in) ivec2 offset) )\n"
  5975.    "     ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  5976.    "\n"
  5977.    "   (signature float\n"
  5978.    "     (parameters\n"
  5979.    "       (declare (in) sampler1DShadow sampler) \n"
  5980.    "       (declare (in) vec3 P) \n"
  5981.    "       (declare (in) float dPdx) \n"
  5982.    "       (declare (in) float dPdy) \n"
  5983.    "       (declare (const_in) int offset) )\n"
  5984.    "     ((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"
  5985.    "\n"
  5986.    "   (signature float\n"
  5987.    "     (parameters\n"
  5988.    "       (declare (in) sampler2DShadow sampler) \n"
  5989.    "       (declare (in) vec3 P) \n"
  5990.    "       (declare (in) vec2 dPdx) \n"
  5991.    "       (declare (in) vec2 dPdy) \n"
  5992.    "       (declare (const_in) ivec2 offset) )\n"
  5993.    "     ((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"
  5994.    "\n"
  5995.    "   (signature float\n"
  5996.    "     (parameters\n"
  5997.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  5998.    "       (declare (in) vec3 P) \n"
  5999.    "       (declare (in) float dPdx) \n"
  6000.    "       (declare (in) float dPdy) \n"
  6001.    "       (declare (const_in) int offset) )\n"
  6002.    "     ((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"
  6003.    "\n"
  6004.    "   (signature float\n"
  6005.    "     (parameters\n"
  6006.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  6007.    "       (declare (in) vec4 P) \n"
  6008.    "       (declare (in) vec2 dPdx) \n"
  6009.    "       (declare (in) vec2 dPdy) \n"
  6010.    "       (declare (const_in) ivec2 offset) )\n"
  6011.    "     ((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"
  6012.    "\n"
  6013.    "))\n"
  6014.    ""
  6015. ;
  6016. static const char builtin_textureLod[] =
  6017.    "((function textureLod\n"
  6018.    "   (signature vec4\n"
  6019.    "     (parameters\n"
  6020.    "       (declare (in) sampler1D sampler) \n"
  6021.    "       (declare (in) float P) \n"
  6022.    "       (declare (in) float lod) )\n"
  6023.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6024.    "\n"
  6025.    "   (signature ivec4\n"
  6026.    "     (parameters\n"
  6027.    "       (declare (in) isampler1D sampler) \n"
  6028.    "       (declare (in) float P) \n"
  6029.    "       (declare (in) float lod) )\n"
  6030.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6031.    "\n"
  6032.    "   (signature uvec4\n"
  6033.    "     (parameters\n"
  6034.    "       (declare (in) usampler1D sampler) \n"
  6035.    "       (declare (in) float P) \n"
  6036.    "       (declare (in) float lod) )\n"
  6037.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6038.    "\n"
  6039.    "   (signature vec4\n"
  6040.    "     (parameters\n"
  6041.    "       (declare (in) sampler2D sampler) \n"
  6042.    "       (declare (in) vec2 P) \n"
  6043.    "       (declare (in) float lod) )\n"
  6044.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6045.    "\n"
  6046.    "   (signature ivec4\n"
  6047.    "     (parameters\n"
  6048.    "       (declare (in) isampler2D sampler) \n"
  6049.    "       (declare (in) vec2 P) \n"
  6050.    "       (declare (in) float lod) )\n"
  6051.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6052.    "\n"
  6053.    "   (signature uvec4\n"
  6054.    "     (parameters\n"
  6055.    "       (declare (in) usampler2D sampler) \n"
  6056.    "       (declare (in) vec2 P) \n"
  6057.    "       (declare (in) float lod) )\n"
  6058.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6059.    "\n"
  6060.    "   (signature vec4\n"
  6061.    "     (parameters\n"
  6062.    "       (declare (in) sampler3D sampler) \n"
  6063.    "       (declare (in) vec3 P) \n"
  6064.    "       (declare (in) float lod) )\n"
  6065.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6066.    "\n"
  6067.    "   (signature ivec4\n"
  6068.    "     (parameters\n"
  6069.    "       (declare (in) isampler3D sampler) \n"
  6070.    "       (declare (in) vec3 P) \n"
  6071.    "       (declare (in) float lod) )\n"
  6072.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6073.    "\n"
  6074.    "   (signature uvec4\n"
  6075.    "     (parameters\n"
  6076.    "       (declare (in) usampler3D sampler) \n"
  6077.    "       (declare (in) vec3 P) \n"
  6078.    "       (declare (in) float lod) )\n"
  6079.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6080.    "\n"
  6081.    "   (signature vec4\n"
  6082.    "     (parameters\n"
  6083.    "       (declare (in) samplerCube sampler) \n"
  6084.    "       (declare (in) vec3 P) \n"
  6085.    "       (declare (in) float lod) )\n"
  6086.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6087.    "\n"
  6088.    "   (signature ivec4\n"
  6089.    "     (parameters\n"
  6090.    "       (declare (in) isamplerCube sampler) \n"
  6091.    "       (declare (in) vec3 P) \n"
  6092.    "       (declare (in) float lod) )\n"
  6093.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6094.    "\n"
  6095.    "   (signature uvec4\n"
  6096.    "     (parameters\n"
  6097.    "       (declare (in) usamplerCube sampler) \n"
  6098.    "       (declare (in) vec3 P) \n"
  6099.    "       (declare (in) float lod) )\n"
  6100.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6101.    "\n"
  6102.    "   (signature vec4\n"
  6103.    "     (parameters\n"
  6104.    "       (declare (in) sampler1DArray sampler) \n"
  6105.    "       (declare (in) vec2 P) \n"
  6106.    "       (declare (in) float lod) )\n"
  6107.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6108.    "\n"
  6109.    "   (signature ivec4\n"
  6110.    "     (parameters\n"
  6111.    "       (declare (in) isampler1DArray sampler) \n"
  6112.    "       (declare (in) vec2 P) \n"
  6113.    "       (declare (in) float lod) )\n"
  6114.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6115.    "\n"
  6116.    "   (signature uvec4\n"
  6117.    "     (parameters\n"
  6118.    "       (declare (in) usampler1DArray sampler) \n"
  6119.    "       (declare (in) vec2 P) \n"
  6120.    "       (declare (in) float lod) )\n"
  6121.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6122.    "\n"
  6123.    "   (signature vec4\n"
  6124.    "     (parameters\n"
  6125.    "       (declare (in) sampler2DArray sampler) \n"
  6126.    "       (declare (in) vec3 P) \n"
  6127.    "       (declare (in) float lod) )\n"
  6128.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6129.    "\n"
  6130.    "   (signature ivec4\n"
  6131.    "     (parameters\n"
  6132.    "       (declare (in) isampler2DArray sampler) \n"
  6133.    "       (declare (in) vec3 P) \n"
  6134.    "       (declare (in) float lod) )\n"
  6135.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6136.    "\n"
  6137.    "   (signature uvec4\n"
  6138.    "     (parameters\n"
  6139.    "       (declare (in) usampler2DArray sampler) \n"
  6140.    "       (declare (in) vec3 P) \n"
  6141.    "       (declare (in) float lod) )\n"
  6142.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6143.    "\n"
  6144.    "   (signature float\n"
  6145.    "     (parameters\n"
  6146.    "       (declare (in) sampler1DShadow sampler) \n"
  6147.    "       (declare (in) vec3 P) \n"
  6148.    "       (declare (in) float lod) )\n"
  6149.    "     ((return (txl float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6150.    "\n"
  6151.    "   (signature float\n"
  6152.    "     (parameters\n"
  6153.    "       (declare (in) sampler2DShadow sampler) \n"
  6154.    "       (declare (in) vec3 P) \n"
  6155.    "       (declare (in) float lod) )\n"
  6156.    "     ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6157.    "\n"
  6158.    "   (signature float\n"
  6159.    "     (parameters\n"
  6160.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  6161.    "       (declare (in) vec3 P) \n"
  6162.    "       (declare (in) float lod) )\n"
  6163.    "     ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6164.    "\n"
  6165.    "   (signature vec4\n"
  6166.    "     (parameters\n"
  6167.    "       (declare (in) samplerCubeArray sampler) \n"
  6168.    "       (declare (in) vec4 P) \n"
  6169.    "       (declare (in) float lod) )\n"
  6170.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6171.    "\n"
  6172.    "   (signature ivec4\n"
  6173.    "     (parameters\n"
  6174.    "       (declare (in) isamplerCubeArray sampler) \n"
  6175.    "       (declare (in) vec4 P) \n"
  6176.    "       (declare (in) float lod) )\n"
  6177.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6178.    "\n"
  6179.    "   (signature uvec4\n"
  6180.    "     (parameters\n"
  6181.    "       (declare (in) usamplerCubeArray sampler) \n"
  6182.    "       (declare (in) vec4 P) \n"
  6183.    "       (declare (in) float lod) )\n"
  6184.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n"
  6185.    "\n"
  6186.    "))\n"
  6187.    ""
  6188. ;
  6189. static const char builtin_textureLodOffset[] =
  6190.    "((function textureLodOffset\n"
  6191.    "   (signature vec4\n"
  6192.    "     (parameters\n"
  6193.    "       (declare (in) sampler1D sampler) \n"
  6194.    "       (declare (in) float P) \n"
  6195.    "       (declare (in) float lod) \n"
  6196.    "       (declare (const_in) int offset) )\n"
  6197.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6198.    "\n"
  6199.    "   (signature ivec4\n"
  6200.    "     (parameters\n"
  6201.    "       (declare (in) isampler1D sampler) \n"
  6202.    "       (declare (in) float P) \n"
  6203.    "       (declare (in) float lod) \n"
  6204.    "       (declare (const_in) int offset) )\n"
  6205.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6206.    "\n"
  6207.    "   (signature uvec4\n"
  6208.    "     (parameters\n"
  6209.    "       (declare (in) usampler1D sampler) \n"
  6210.    "       (declare (in) float P) \n"
  6211.    "       (declare (in) float lod) \n"
  6212.    "       (declare (const_in) int offset) )\n"
  6213.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6214.    "\n"
  6215.    "   (signature vec4\n"
  6216.    "     (parameters\n"
  6217.    "       (declare (in) sampler2D sampler) \n"
  6218.    "       (declare (in) vec2 P) \n"
  6219.    "       (declare (in) float lod) \n"
  6220.    "       (declare (const_in) ivec2 offset) )\n"
  6221.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6222.    "\n"
  6223.    "   (signature ivec4\n"
  6224.    "     (parameters\n"
  6225.    "       (declare (in) isampler2D sampler) \n"
  6226.    "       (declare (in) vec2 P) \n"
  6227.    "       (declare (in) float lod) \n"
  6228.    "       (declare (const_in) ivec2 offset) )\n"
  6229.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6230.    "\n"
  6231.    "   (signature uvec4\n"
  6232.    "     (parameters\n"
  6233.    "       (declare (in) usampler2D sampler) \n"
  6234.    "       (declare (in) vec2 P) \n"
  6235.    "       (declare (in) float lod) \n"
  6236.    "       (declare (const_in) ivec2 offset) )\n"
  6237.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6238.    "\n"
  6239.    "   (signature vec4\n"
  6240.    "     (parameters\n"
  6241.    "       (declare (in) sampler3D sampler) \n"
  6242.    "       (declare (in) vec3 P) \n"
  6243.    "       (declare (in) float lod) \n"
  6244.    "       (declare (const_in) ivec3 offset) )\n"
  6245.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6246.    "\n"
  6247.    "   (signature ivec4\n"
  6248.    "     (parameters\n"
  6249.    "       (declare (in) isampler3D sampler) \n"
  6250.    "       (declare (in) vec3 P) \n"
  6251.    "       (declare (in) float lod) \n"
  6252.    "       (declare (const_in) ivec3 offset) )\n"
  6253.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6254.    "\n"
  6255.    "   (signature uvec4\n"
  6256.    "     (parameters\n"
  6257.    "       (declare (in) usampler3D sampler) \n"
  6258.    "       (declare (in) vec3 P) \n"
  6259.    "       (declare (in) float lod) \n"
  6260.    "       (declare (const_in) ivec3 offset) )\n"
  6261.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6262.    "\n"
  6263.    "   (signature vec4\n"
  6264.    "     (parameters\n"
  6265.    "       (declare (in) sampler1DArray sampler) \n"
  6266.    "       (declare (in) vec2 P) \n"
  6267.    "       (declare (in) float lod) \n"
  6268.    "       (declare (const_in) int offset) )\n"
  6269.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6270.    "\n"
  6271.    "   (signature ivec4\n"
  6272.    "     (parameters\n"
  6273.    "       (declare (in) isampler1DArray sampler) \n"
  6274.    "       (declare (in) vec2 P) \n"
  6275.    "       (declare (in) float lod) \n"
  6276.    "       (declare (const_in) int offset) )\n"
  6277.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6278.    "\n"
  6279.    "   (signature uvec4\n"
  6280.    "     (parameters\n"
  6281.    "       (declare (in) usampler1DArray sampler) \n"
  6282.    "       (declare (in) vec2 P) \n"
  6283.    "       (declare (in) float lod) \n"
  6284.    "       (declare (const_in) int offset) )\n"
  6285.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6286.    "\n"
  6287.    "   (signature vec4\n"
  6288.    "     (parameters\n"
  6289.    "       (declare (in) sampler2DArray sampler) \n"
  6290.    "       (declare (in) vec3 P) \n"
  6291.    "       (declare (in) float lod) \n"
  6292.    "       (declare (const_in) ivec2 offset) )\n"
  6293.    "     ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6294.    "\n"
  6295.    "   (signature ivec4\n"
  6296.    "     (parameters\n"
  6297.    "       (declare (in) isampler2DArray sampler) \n"
  6298.    "       (declare (in) vec3 P) \n"
  6299.    "       (declare (in) float lod) \n"
  6300.    "       (declare (const_in) ivec2 offset) )\n"
  6301.    "     ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6302.    "\n"
  6303.    "   (signature uvec4\n"
  6304.    "     (parameters\n"
  6305.    "       (declare (in) usampler2DArray sampler) \n"
  6306.    "       (declare (in) vec3 P) \n"
  6307.    "       (declare (in) float lod) \n"
  6308.    "       (declare (const_in) ivec2 offset) )\n"
  6309.    "     ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n"
  6310.    "\n"
  6311.    "   (signature float\n"
  6312.    "     (parameters\n"
  6313.    "       (declare (in) sampler1DShadow sampler) \n"
  6314.    "       (declare (in) vec3 P) \n"
  6315.    "       (declare (in) float lod) \n"
  6316.    "       (declare (const_in) int offset) )\n"
  6317.    "     ((return (txl float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6318.    "\n"
  6319.    "   (signature float\n"
  6320.    "     (parameters\n"
  6321.    "       (declare (in) sampler2DShadow sampler) \n"
  6322.    "       (declare (in) vec3 P) \n"
  6323.    "       (declare (in) float lod) \n"
  6324.    "       (declare (const_in) ivec2 offset) )\n"
  6325.    "     ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6326.    "\n"
  6327.    "   (signature float\n"
  6328.    "     (parameters\n"
  6329.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  6330.    "       (declare (in) vec3 P) \n"
  6331.    "       (declare (in) float lod) \n"
  6332.    "       (declare (const_in) int offset) )\n"
  6333.    "     ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n"
  6334.    "\n"
  6335.    "))\n"
  6336.    ""
  6337. ;
  6338. static const char builtin_textureOffset[] =
  6339.    "((function textureOffset\n"
  6340.    "   (signature vec4\n"
  6341.    "     (parameters\n"
  6342.    "       (declare (in) sampler1D sampler) \n"
  6343.    "       (declare (in) float P) \n"
  6344.    "       (declare (const_in) int offset) )\n"
  6345.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6346.    "\n"
  6347.    "   (signature ivec4\n"
  6348.    "     (parameters\n"
  6349.    "       (declare (in) isampler1D sampler) \n"
  6350.    "       (declare (in) float P) \n"
  6351.    "       (declare (const_in) int offset) )\n"
  6352.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6353.    "\n"
  6354.    "   (signature uvec4\n"
  6355.    "     (parameters\n"
  6356.    "       (declare (in) usampler1D sampler) \n"
  6357.    "       (declare (in) float P) \n"
  6358.    "       (declare (const_in) int offset) )\n"
  6359.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6360.    "\n"
  6361.    "   (signature vec4\n"
  6362.    "     (parameters\n"
  6363.    "       (declare (in) sampler2D sampler) \n"
  6364.    "       (declare (in) vec2 P) \n"
  6365.    "       (declare (const_in) ivec2 offset) )\n"
  6366.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6367.    "\n"
  6368.    "   (signature ivec4\n"
  6369.    "     (parameters\n"
  6370.    "       (declare (in) isampler2D sampler) \n"
  6371.    "       (declare (in) vec2 P) \n"
  6372.    "       (declare (const_in) ivec2 offset) )\n"
  6373.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6374.    "\n"
  6375.    "   (signature uvec4\n"
  6376.    "     (parameters\n"
  6377.    "       (declare (in) usampler2D sampler) \n"
  6378.    "       (declare (in) vec2 P) \n"
  6379.    "       (declare (const_in) ivec2 offset) )\n"
  6380.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6381.    "\n"
  6382.    "   (signature vec4\n"
  6383.    "     (parameters\n"
  6384.    "       (declare (in) sampler3D sampler) \n"
  6385.    "       (declare (in) vec3 P) \n"
  6386.    "       (declare (const_in) ivec3 offset) )\n"
  6387.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6388.    "\n"
  6389.    "   (signature ivec4\n"
  6390.    "     (parameters\n"
  6391.    "       (declare (in) isampler3D sampler) \n"
  6392.    "       (declare (in) vec3 P) \n"
  6393.    "       (declare (const_in) ivec3 offset) )\n"
  6394.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6395.    "\n"
  6396.    "   (signature uvec4\n"
  6397.    "     (parameters\n"
  6398.    "       (declare (in) usampler3D sampler) \n"
  6399.    "       (declare (in) vec3 P) \n"
  6400.    "       (declare (const_in) ivec3 offset) )\n"
  6401.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6402.    "\n"
  6403.    "   (signature vec4\n"
  6404.    "     (parameters\n"
  6405.    "       (declare (in) sampler2DRect sampler) \n"
  6406.    "       (declare (in) vec2 P) \n"
  6407.    "       (declare (const_in) ivec2 offset) )\n"
  6408.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6409.    "\n"
  6410.    "   (signature ivec4\n"
  6411.    "     (parameters\n"
  6412.    "       (declare (in) isampler2DRect sampler) \n"
  6413.    "       (declare (in) vec2 P) \n"
  6414.    "       (declare (const_in) ivec2 offset) )\n"
  6415.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6416.    "\n"
  6417.    "   (signature uvec4\n"
  6418.    "     (parameters\n"
  6419.    "       (declare (in) usampler2DRect sampler) \n"
  6420.    "       (declare (in) vec2 P) \n"
  6421.    "       (declare (const_in) ivec2 offset) )\n"
  6422.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6423.    "\n"
  6424.    "   (signature float\n"
  6425.    "     (parameters\n"
  6426.    "       (declare (in) sampler2DRectShadow sampler) \n"
  6427.    "       (declare (in) vec3 P) \n"
  6428.    "       (declare (const_in) ivec2 offset) )\n"
  6429.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
  6430.    "\n"
  6431.    "   (signature vec4\n"
  6432.    "     (parameters\n"
  6433.    "       (declare (in) sampler1DArray sampler) \n"
  6434.    "       (declare (in) vec2 P) \n"
  6435.    "       (declare (const_in) int offset) )\n"
  6436.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6437.    "\n"
  6438.    "   (signature ivec4\n"
  6439.    "     (parameters\n"
  6440.    "       (declare (in) isampler1DArray sampler) \n"
  6441.    "       (declare (in) vec2 P) \n"
  6442.    "       (declare (const_in) int offset) )\n"
  6443.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6444.    "\n"
  6445.    "   (signature uvec4\n"
  6446.    "     (parameters\n"
  6447.    "       (declare (in) usampler1DArray sampler) \n"
  6448.    "       (declare (in) vec2 P) \n"
  6449.    "       (declare (const_in) int offset) )\n"
  6450.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6451.    "\n"
  6452.    "   (signature vec4\n"
  6453.    "     (parameters\n"
  6454.    "       (declare (in) sampler2DArray sampler) \n"
  6455.    "       (declare (in) vec3 P) \n"
  6456.    "       (declare (const_in) ivec2 offset) )\n"
  6457.    "     ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6458.    "\n"
  6459.    "   (signature ivec4\n"
  6460.    "     (parameters\n"
  6461.    "       (declare (in) isampler2DArray sampler) \n"
  6462.    "       (declare (in) vec3 P) \n"
  6463.    "       (declare (const_in) ivec2 offset) )\n"
  6464.    "     ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6465.    "\n"
  6466.    "   (signature uvec4\n"
  6467.    "     (parameters\n"
  6468.    "       (declare (in) usampler2DArray sampler) \n"
  6469.    "       (declare (in) vec3 P) \n"
  6470.    "       (declare (const_in) ivec2 offset) )\n"
  6471.    "     ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n"
  6472.    "\n"
  6473.    "   (signature float\n"
  6474.    "     (parameters\n"
  6475.    "       (declare (in) sampler1DShadow sampler) \n"
  6476.    "       (declare (in) vec3 P) \n"
  6477.    "       (declare (const_in) int offset) )\n"
  6478.    "     ((return (tex float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
  6479.    "\n"
  6480.    "   (signature float\n"
  6481.    "     (parameters\n"
  6482.    "       (declare (in) sampler2DShadow sampler) \n"
  6483.    "       (declare (in) vec3 P) \n"
  6484.    "       (declare (const_in) ivec2 offset) )\n"
  6485.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
  6486.    "\n"
  6487.    "   (signature float\n"
  6488.    "     (parameters\n"
  6489.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  6490.    "       (declare (in) vec3 P) \n"
  6491.    "       (declare (const_in) int offset) )\n"
  6492.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n"
  6493.    "\n"
  6494.    "   (signature vec4\n"
  6495.    "     (parameters\n"
  6496.    "       (declare (in) sampler1D sampler) \n"
  6497.    "       (declare (in) float P) \n"
  6498.    "       (declare (const_in) int offset) \n"
  6499.    "       (declare (in) float bias) )\n"
  6500.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6501.    "\n"
  6502.    "   (signature ivec4\n"
  6503.    "     (parameters\n"
  6504.    "       (declare (in) isampler1D sampler) \n"
  6505.    "       (declare (in) float P) \n"
  6506.    "       (declare (const_in) int offset) \n"
  6507.    "       (declare (in) float bias) )\n"
  6508.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6509.    "\n"
  6510.    "   (signature uvec4\n"
  6511.    "     (parameters\n"
  6512.    "       (declare (in) usampler1D sampler) \n"
  6513.    "       (declare (in) float P) \n"
  6514.    "       (declare (const_in) int offset) \n"
  6515.    "       (declare (in) float bias) )\n"
  6516.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6517.    "\n"
  6518.    "   (signature vec4\n"
  6519.    "     (parameters\n"
  6520.    "       (declare (in) sampler2D sampler) \n"
  6521.    "       (declare (in) vec2 P) \n"
  6522.    "       (declare (const_in) ivec2 offset) \n"
  6523.    "       (declare (in) float bias) )\n"
  6524.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6525.    "\n"
  6526.    "   (signature ivec4\n"
  6527.    "     (parameters\n"
  6528.    "       (declare (in) isampler2D sampler) \n"
  6529.    "       (declare (in) vec2 P) \n"
  6530.    "       (declare (const_in) ivec2 offset) \n"
  6531.    "       (declare (in) float bias) )\n"
  6532.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6533.    "\n"
  6534.    "   (signature uvec4\n"
  6535.    "     (parameters\n"
  6536.    "       (declare (in) usampler2D sampler) \n"
  6537.    "       (declare (in) vec2 P) \n"
  6538.    "       (declare (const_in) ivec2 offset) \n"
  6539.    "       (declare (in) float bias) )\n"
  6540.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6541.    "\n"
  6542.    "   (signature vec4\n"
  6543.    "     (parameters\n"
  6544.    "       (declare (in) sampler3D sampler) \n"
  6545.    "       (declare (in) vec3 P) \n"
  6546.    "       (declare (const_in) ivec3 offset) \n"
  6547.    "       (declare (in) float bias) )\n"
  6548.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6549.    "\n"
  6550.    "   (signature ivec4\n"
  6551.    "     (parameters\n"
  6552.    "       (declare (in) isampler3D sampler) \n"
  6553.    "       (declare (in) vec3 P) \n"
  6554.    "       (declare (const_in) ivec3 offset) \n"
  6555.    "       (declare (in) float bias) )\n"
  6556.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6557.    "\n"
  6558.    "   (signature uvec4\n"
  6559.    "     (parameters\n"
  6560.    "       (declare (in) usampler3D sampler) \n"
  6561.    "       (declare (in) vec3 P) \n"
  6562.    "       (declare (const_in) ivec3 offset) \n"
  6563.    "       (declare (in) float bias) )\n"
  6564.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6565.    "\n"
  6566.    "   (signature vec4\n"
  6567.    "     (parameters\n"
  6568.    "       (declare (in) sampler1DArray sampler) \n"
  6569.    "       (declare (in) vec2 P) \n"
  6570.    "       (declare (const_in) int offset) \n"
  6571.    "       (declare (in) float bias) )\n"
  6572.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6573.    "\n"
  6574.    "   (signature ivec4\n"
  6575.    "     (parameters\n"
  6576.    "       (declare (in) isampler1DArray sampler) \n"
  6577.    "       (declare (in) vec2 P) \n"
  6578.    "       (declare (const_in) int offset) \n"
  6579.    "       (declare (in) float bias) )\n"
  6580.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6581.    "\n"
  6582.    "   (signature uvec4\n"
  6583.    "     (parameters\n"
  6584.    "       (declare (in) usampler1DArray sampler) \n"
  6585.    "       (declare (in) vec2 P) \n"
  6586.    "       (declare (const_in) int offset) \n"
  6587.    "       (declare (in) float bias) )\n"
  6588.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6589.    "\n"
  6590.    "   (signature vec4\n"
  6591.    "     (parameters\n"
  6592.    "       (declare (in) sampler2DArray sampler) \n"
  6593.    "       (declare (in) vec3 P) \n"
  6594.    "       (declare (const_in) ivec2 offset) \n"
  6595.    "       (declare (in) float bias) )\n"
  6596.    "     ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6597.    "\n"
  6598.    "   (signature ivec4\n"
  6599.    "     (parameters\n"
  6600.    "       (declare (in) isampler2DArray sampler) \n"
  6601.    "       (declare (in) vec3 P) \n"
  6602.    "       (declare (const_in) ivec2 offset) \n"
  6603.    "       (declare (in) float bias) )\n"
  6604.    "     ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6605.    "\n"
  6606.    "   (signature uvec4\n"
  6607.    "     (parameters\n"
  6608.    "       (declare (in) usampler2DArray sampler) \n"
  6609.    "       (declare (in) vec3 P) \n"
  6610.    "       (declare (const_in) ivec2 offset) \n"
  6611.    "       (declare (in) float bias) )\n"
  6612.    "     ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n"
  6613.    "\n"
  6614.    "   (signature float\n"
  6615.    "     (parameters\n"
  6616.    "       (declare (in) sampler1DShadow sampler) \n"
  6617.    "       (declare (in) vec3 P) \n"
  6618.    "       (declare (const_in) int offset) \n"
  6619.    "       (declare (in) float bias) )\n"
  6620.    "     ((return (txb float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  6621.    "\n"
  6622.    "   (signature float\n"
  6623.    "     (parameters\n"
  6624.    "       (declare (in) sampler2DShadow sampler) \n"
  6625.    "       (declare (in) vec3 P) \n"
  6626.    "       (declare (const_in) ivec2 offset) \n"
  6627.    "       (declare (in) float bias) )\n"
  6628.    "     ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  6629.    "\n"
  6630.    "   (signature float\n"
  6631.    "     (parameters\n"
  6632.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  6633.    "       (declare (in) vec3 P) \n"
  6634.    "       (declare (const_in) int offset) \n"
  6635.    "       (declare (in) float bias) )\n"
  6636.    "     ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n"
  6637.    "\n"
  6638.    "))\n"
  6639.    ""
  6640. ;
  6641. static const char builtin_textureProj[] =
  6642.    "((function textureProj\n"
  6643.    "   (signature vec4\n"
  6644.    "     (parameters\n"
  6645.    "       (declare (in) sampler1D sampler) \n"
  6646.    "       (declare (in) vec2 P) )\n"
  6647.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
  6648.    "\n"
  6649.    "   (signature ivec4\n"
  6650.    "     (parameters\n"
  6651.    "       (declare (in) isampler1D sampler) \n"
  6652.    "       (declare (in) vec2 P) )\n"
  6653.    "     ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
  6654.    "\n"
  6655.    "   (signature uvec4\n"
  6656.    "     (parameters\n"
  6657.    "       (declare (in) usampler1D sampler) \n"
  6658.    "       (declare (in) vec2 P) )\n"
  6659.    "     ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n"
  6660.    "\n"
  6661.    "   (signature vec4\n"
  6662.    "     (parameters\n"
  6663.    "       (declare (in) sampler1D sampler) \n"
  6664.    "       (declare (in) vec4 P) )\n"
  6665.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6666.    "\n"
  6667.    "   (signature ivec4\n"
  6668.    "     (parameters\n"
  6669.    "       (declare (in) isampler1D sampler) \n"
  6670.    "       (declare (in) vec4 P) )\n"
  6671.    "     ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6672.    "\n"
  6673.    "   (signature uvec4\n"
  6674.    "     (parameters\n"
  6675.    "       (declare (in) usampler1D sampler) \n"
  6676.    "       (declare (in) vec4 P) )\n"
  6677.    "     ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6678.    "\n"
  6679.    "   (signature vec4\n"
  6680.    "     (parameters\n"
  6681.    "       (declare (in) sampler2D sampler) \n"
  6682.    "       (declare (in) vec3 P) )\n"
  6683.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6684.    "\n"
  6685.    "   (signature ivec4\n"
  6686.    "     (parameters\n"
  6687.    "       (declare (in) isampler2D sampler) \n"
  6688.    "       (declare (in) vec3 P) )\n"
  6689.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6690.    "\n"
  6691.    "   (signature uvec4\n"
  6692.    "     (parameters\n"
  6693.    "       (declare (in) usampler2D sampler) \n"
  6694.    "       (declare (in) vec3 P) )\n"
  6695.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6696.    "\n"
  6697.    "   (signature vec4\n"
  6698.    "     (parameters\n"
  6699.    "       (declare (in) sampler2D sampler) \n"
  6700.    "       (declare (in) vec4 P) )\n"
  6701.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6702.    "\n"
  6703.    "   (signature ivec4\n"
  6704.    "     (parameters\n"
  6705.    "       (declare (in) isampler2D sampler) \n"
  6706.    "       (declare (in) vec4 P) )\n"
  6707.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6708.    "\n"
  6709.    "   (signature uvec4\n"
  6710.    "     (parameters\n"
  6711.    "       (declare (in) usampler2D sampler) \n"
  6712.    "       (declare (in) vec4 P) )\n"
  6713.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6714.    "\n"
  6715.    "   (signature vec4\n"
  6716.    "     (parameters\n"
  6717.    "       (declare (in) sampler3D sampler) \n"
  6718.    "       (declare (in) vec4 P) )\n"
  6719.    "     ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6720.    "\n"
  6721.    "   (signature ivec4\n"
  6722.    "     (parameters\n"
  6723.    "       (declare (in) isampler3D sampler) \n"
  6724.    "       (declare (in) vec4 P) )\n"
  6725.    "     ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6726.    "\n"
  6727.    "   (signature uvec4\n"
  6728.    "     (parameters\n"
  6729.    "       (declare (in) usampler3D sampler) \n"
  6730.    "       (declare (in) vec4 P) )\n"
  6731.    "     ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6732.    "\n"
  6733.    "   (signature float\n"
  6734.    "     (parameters\n"
  6735.    "       (declare (in) sampler1DShadow sampler) \n"
  6736.    "       (declare (in) vec4 P) )\n"
  6737.    "     ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  6738.    "\n"
  6739.    "   (signature float\n"
  6740.    "     (parameters\n"
  6741.    "       (declare (in) sampler2DShadow sampler) \n"
  6742.    "       (declare (in) vec4 P) )\n"
  6743.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  6744.    "\n"
  6745.    "   (signature vec4\n"
  6746.    "     (parameters\n"
  6747.    "       (declare (in) sampler2DRect sampler) \n"
  6748.    "       (declare (in) vec3 P) )\n"
  6749.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6750.    "\n"
  6751.    "   (signature ivec4\n"
  6752.    "     (parameters\n"
  6753.    "       (declare (in) isampler2DRect sampler) \n"
  6754.    "       (declare (in) vec3 P) )\n"
  6755.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6756.    "\n"
  6757.    "   (signature uvec4\n"
  6758.    "     (parameters\n"
  6759.    "       (declare (in) usampler2DRect sampler) \n"
  6760.    "       (declare (in) vec3 P) )\n"
  6761.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n"
  6762.    "\n"
  6763.    "   (signature vec4\n"
  6764.    "     (parameters\n"
  6765.    "       (declare (in) sampler2DRect sampler) \n"
  6766.    "       (declare (in) vec4 P) )\n"
  6767.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6768.    "\n"
  6769.    "   (signature ivec4\n"
  6770.    "     (parameters\n"
  6771.    "       (declare (in) isampler2DRect sampler) \n"
  6772.    "       (declare (in) vec4 P) )\n"
  6773.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6774.    "\n"
  6775.    "   (signature uvec4\n"
  6776.    "     (parameters\n"
  6777.    "       (declare (in) usampler2DRect sampler) \n"
  6778.    "       (declare (in) vec4 P) )\n"
  6779.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n"
  6780.    "\n"
  6781.    "   (signature float\n"
  6782.    "     (parameters\n"
  6783.    "       (declare (in) sampler2DRectShadow sampler) \n"
  6784.    "       (declare (in) vec4 P) )\n"
  6785.    "     ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n"
  6786.    "\n"
  6787.    "   (signature vec4\n"
  6788.    "     (parameters\n"
  6789.    "       (declare (in) sampler1D sampler) \n"
  6790.    "       (declare (in) vec2 P) \n"
  6791.    "       (declare (in) float bias) )\n"
  6792.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  6793.    "\n"
  6794.    "   (signature ivec4\n"
  6795.    "     (parameters\n"
  6796.    "       (declare (in) isampler1D sampler) \n"
  6797.    "       (declare (in) vec2 P) \n"
  6798.    "       (declare (in) float bias) )\n"
  6799.    "     ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  6800.    "\n"
  6801.    "   (signature uvec4\n"
  6802.    "     (parameters\n"
  6803.    "       (declare (in) usampler1D sampler) \n"
  6804.    "       (declare (in) vec2 P) \n"
  6805.    "       (declare (in) float bias) )\n"
  6806.    "     ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  6807.    "\n"
  6808.    "   (signature vec4\n"
  6809.    "     (parameters\n"
  6810.    "       (declare (in) sampler1D sampler) \n"
  6811.    "       (declare (in) vec4 P) \n"
  6812.    "       (declare (in) float bias) )\n"
  6813.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6814.    "\n"
  6815.    "   (signature ivec4\n"
  6816.    "     (parameters\n"
  6817.    "       (declare (in) isampler1D sampler) \n"
  6818.    "       (declare (in) vec4 P) \n"
  6819.    "       (declare (in) float bias) )\n"
  6820.    "     ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6821.    "\n"
  6822.    "   (signature uvec4\n"
  6823.    "     (parameters\n"
  6824.    "       (declare (in) usampler1D sampler) \n"
  6825.    "       (declare (in) vec4 P) \n"
  6826.    "       (declare (in) float bias) )\n"
  6827.    "     ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6828.    "\n"
  6829.    "   (signature vec4\n"
  6830.    "     (parameters\n"
  6831.    "       (declare (in) sampler2D sampler) \n"
  6832.    "       (declare (in) vec3 P) \n"
  6833.    "       (declare (in) float bias) )\n"
  6834.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  6835.    "\n"
  6836.    "   (signature ivec4\n"
  6837.    "     (parameters\n"
  6838.    "       (declare (in) isampler2D sampler) \n"
  6839.    "       (declare (in) vec3 P) \n"
  6840.    "       (declare (in) float bias) )\n"
  6841.    "     ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  6842.    "\n"
  6843.    "   (signature uvec4\n"
  6844.    "     (parameters\n"
  6845.    "       (declare (in) usampler2D sampler) \n"
  6846.    "       (declare (in) vec3 P) \n"
  6847.    "       (declare (in) float bias) )\n"
  6848.    "     ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  6849.    "\n"
  6850.    "   (signature vec4\n"
  6851.    "     (parameters\n"
  6852.    "       (declare (in) sampler2D sampler) \n"
  6853.    "       (declare (in) vec4 P) \n"
  6854.    "       (declare (in) float bias) )\n"
  6855.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6856.    "\n"
  6857.    "   (signature ivec4\n"
  6858.    "     (parameters\n"
  6859.    "       (declare (in) isampler2D sampler) \n"
  6860.    "       (declare (in) vec4 P) \n"
  6861.    "       (declare (in) float bias) )\n"
  6862.    "     ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6863.    "\n"
  6864.    "   (signature uvec4\n"
  6865.    "     (parameters\n"
  6866.    "       (declare (in) usampler2D sampler) \n"
  6867.    "       (declare (in) vec4 P) \n"
  6868.    "       (declare (in) float bias) )\n"
  6869.    "     ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6870.    "\n"
  6871.    "   (signature vec4\n"
  6872.    "     (parameters\n"
  6873.    "       (declare (in) sampler3D sampler) \n"
  6874.    "       (declare (in) vec4 P) \n"
  6875.    "       (declare (in) float bias) )\n"
  6876.    "     ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6877.    "\n"
  6878.    "   (signature ivec4\n"
  6879.    "     (parameters\n"
  6880.    "       (declare (in) isampler3D sampler) \n"
  6881.    "       (declare (in) vec4 P) \n"
  6882.    "       (declare (in) float bias) )\n"
  6883.    "     ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6884.    "\n"
  6885.    "   (signature uvec4\n"
  6886.    "     (parameters\n"
  6887.    "       (declare (in) usampler3D sampler) \n"
  6888.    "       (declare (in) vec4 P) \n"
  6889.    "       (declare (in) float bias) )\n"
  6890.    "     ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  6891.    "\n"
  6892.    "   (signature float\n"
  6893.    "     (parameters\n"
  6894.    "       (declare (in) sampler1DShadow sampler) \n"
  6895.    "       (declare (in) vec4 P) \n"
  6896.    "       (declare (in) float bias) )\n"
  6897.    "     ((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"
  6898.    "\n"
  6899.    "   (signature float\n"
  6900.    "     (parameters\n"
  6901.    "       (declare (in) sampler2DShadow sampler) \n"
  6902.    "       (declare (in) vec4 P) \n"
  6903.    "       (declare (in) float bias) )\n"
  6904.    "     ((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"
  6905.    "\n"
  6906.    "))\n"
  6907.    ""
  6908. ;
  6909. static const char builtin_textureProjGrad[] =
  6910.    "((function textureProjGrad\n"
  6911.    "   (signature vec4\n"
  6912.    "     (parameters\n"
  6913.    "       (declare (in) sampler1D sampler) \n"
  6914.    "       (declare (in) vec2 P) \n"
  6915.    "       (declare (in) float dPdx) \n"
  6916.    "       (declare (in) float dPdy) )\n"
  6917.    "     ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6918.    "\n"
  6919.    "   (signature ivec4\n"
  6920.    "     (parameters\n"
  6921.    "       (declare (in) isampler1D sampler) \n"
  6922.    "       (declare (in) vec2 P) \n"
  6923.    "       (declare (in) float dPdx) \n"
  6924.    "       (declare (in) float dPdy) )\n"
  6925.    "     ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6926.    "\n"
  6927.    "   (signature uvec4\n"
  6928.    "     (parameters\n"
  6929.    "       (declare (in) usampler1D sampler) \n"
  6930.    "       (declare (in) vec2 P) \n"
  6931.    "       (declare (in) float dPdx) \n"
  6932.    "       (declare (in) float dPdy) )\n"
  6933.    "     ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6934.    "\n"
  6935.    "   (signature vec4\n"
  6936.    "     (parameters\n"
  6937.    "       (declare (in) sampler1D sampler) \n"
  6938.    "       (declare (in) vec4 P) \n"
  6939.    "       (declare (in) float dPdx) \n"
  6940.    "       (declare (in) float dPdy) )\n"
  6941.    "     ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6942.    "\n"
  6943.    "   (signature ivec4\n"
  6944.    "     (parameters\n"
  6945.    "       (declare (in) isampler1D sampler) \n"
  6946.    "       (declare (in) vec4 P) \n"
  6947.    "       (declare (in) float dPdx) \n"
  6948.    "       (declare (in) float dPdy) )\n"
  6949.    "     ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6950.    "\n"
  6951.    "   (signature uvec4\n"
  6952.    "     (parameters\n"
  6953.    "       (declare (in) usampler1D sampler) \n"
  6954.    "       (declare (in) vec4 P) \n"
  6955.    "       (declare (in) float dPdx) \n"
  6956.    "       (declare (in) float dPdy) )\n"
  6957.    "     ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6958.    "\n"
  6959.    "   (signature vec4\n"
  6960.    "     (parameters\n"
  6961.    "       (declare (in) sampler2D sampler) \n"
  6962.    "       (declare (in) vec3 P) \n"
  6963.    "       (declare (in) vec2 dPdx) \n"
  6964.    "       (declare (in) vec2 dPdy) )\n"
  6965.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6966.    "\n"
  6967.    "   (signature ivec4\n"
  6968.    "     (parameters\n"
  6969.    "       (declare (in) isampler2D sampler) \n"
  6970.    "       (declare (in) vec3 P) \n"
  6971.    "       (declare (in) vec2 dPdx) \n"
  6972.    "       (declare (in) vec2 dPdy) )\n"
  6973.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6974.    "\n"
  6975.    "   (signature uvec4\n"
  6976.    "     (parameters\n"
  6977.    "       (declare (in) usampler2D sampler) \n"
  6978.    "       (declare (in) vec3 P) \n"
  6979.    "       (declare (in) vec2 dPdx) \n"
  6980.    "       (declare (in) vec2 dPdy) )\n"
  6981.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6982.    "\n"
  6983.    "   (signature vec4\n"
  6984.    "     (parameters\n"
  6985.    "       (declare (in) sampler2D sampler) \n"
  6986.    "       (declare (in) vec4 P) \n"
  6987.    "       (declare (in) vec2 dPdx) \n"
  6988.    "       (declare (in) vec2 dPdy) )\n"
  6989.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6990.    "\n"
  6991.    "   (signature ivec4\n"
  6992.    "     (parameters\n"
  6993.    "       (declare (in) isampler2D sampler) \n"
  6994.    "       (declare (in) vec4 P) \n"
  6995.    "       (declare (in) vec2 dPdx) \n"
  6996.    "       (declare (in) vec2 dPdy) )\n"
  6997.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  6998.    "\n"
  6999.    "   (signature uvec4\n"
  7000.    "     (parameters\n"
  7001.    "       (declare (in) usampler2D sampler) \n"
  7002.    "       (declare (in) vec4 P) \n"
  7003.    "       (declare (in) vec2 dPdx) \n"
  7004.    "       (declare (in) vec2 dPdy) )\n"
  7005.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7006.    "\n"
  7007.    "   (signature vec4\n"
  7008.    "     (parameters\n"
  7009.    "       (declare (in) sampler3D sampler) \n"
  7010.    "       (declare (in) vec4 P) \n"
  7011.    "       (declare (in) vec3 dPdx) \n"
  7012.    "       (declare (in) vec3 dPdy) )\n"
  7013.    "     ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7014.    "\n"
  7015.    "   (signature ivec4\n"
  7016.    "     (parameters\n"
  7017.    "       (declare (in) isampler3D sampler) \n"
  7018.    "       (declare (in) vec4 P) \n"
  7019.    "       (declare (in) vec3 dPdx) \n"
  7020.    "       (declare (in) vec3 dPdy) )\n"
  7021.    "     ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7022.    "\n"
  7023.    "   (signature uvec4\n"
  7024.    "     (parameters\n"
  7025.    "       (declare (in) usampler3D sampler) \n"
  7026.    "       (declare (in) vec4 P) \n"
  7027.    "       (declare (in) vec3 dPdx) \n"
  7028.    "       (declare (in) vec3 dPdy) )\n"
  7029.    "     ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7030.    "\n"
  7031.    "   (signature vec4\n"
  7032.    "     (parameters\n"
  7033.    "       (declare (in) sampler2DRect sampler) \n"
  7034.    "       (declare (in) vec3 P) \n"
  7035.    "       (declare (in) vec2 dPdx) \n"
  7036.    "       (declare (in) vec2 dPdy) )\n"
  7037.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7038.    "\n"
  7039.    "   (signature ivec4\n"
  7040.    "     (parameters\n"
  7041.    "       (declare (in) isampler2DRect sampler) \n"
  7042.    "       (declare (in) vec3 P) \n"
  7043.    "       (declare (in) vec2 dPdx) \n"
  7044.    "       (declare (in) vec2 dPdy) )\n"
  7045.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7046.    "\n"
  7047.    "   (signature uvec4\n"
  7048.    "     (parameters\n"
  7049.    "       (declare (in) usampler2DRect sampler) \n"
  7050.    "       (declare (in) vec3 P) \n"
  7051.    "       (declare (in) vec2 dPdx) \n"
  7052.    "       (declare (in) vec2 dPdy) )\n"
  7053.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7054.    "\n"
  7055.    "   (signature vec4\n"
  7056.    "     (parameters\n"
  7057.    "       (declare (in) sampler2DRect sampler) \n"
  7058.    "       (declare (in) vec4 P) \n"
  7059.    "       (declare (in) vec2 dPdx) \n"
  7060.    "       (declare (in) vec2 dPdy) )\n"
  7061.    "     ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7062.    "\n"
  7063.    "   (signature ivec4\n"
  7064.    "     (parameters\n"
  7065.    "       (declare (in) isampler2DRect sampler) \n"
  7066.    "       (declare (in) vec4 P) \n"
  7067.    "       (declare (in) vec2 dPdx) \n"
  7068.    "       (declare (in) vec2 dPdy) )\n"
  7069.    "     ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7070.    "\n"
  7071.    "   (signature uvec4\n"
  7072.    "     (parameters\n"
  7073.    "       (declare (in) usampler2DRect sampler) \n"
  7074.    "       (declare (in) vec4 P) \n"
  7075.    "       (declare (in) vec2 dPdx) \n"
  7076.    "       (declare (in) vec2 dPdy) )\n"
  7077.    "     ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n"
  7078.    "\n"
  7079.    "   (signature float\n"
  7080.    "     (parameters\n"
  7081.    "       (declare (in) sampler2DRectShadow sampler) \n"
  7082.    "       (declare (in) vec4 P) \n"
  7083.    "       (declare (in) vec2 dPdx) \n"
  7084.    "       (declare (in) vec2 dPdy) )\n"
  7085.    "     ((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"
  7086.    "\n"
  7087.    "   (signature float\n"
  7088.    "     (parameters\n"
  7089.    "       (declare (in) sampler1DShadow sampler) \n"
  7090.    "       (declare (in) vec4 P) \n"
  7091.    "       (declare (in) float dPdx) \n"
  7092.    "       (declare (in) float dPdy) )\n"
  7093.    "     ((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"
  7094.    "\n"
  7095.    "   (signature float\n"
  7096.    "     (parameters\n"
  7097.    "       (declare (in) sampler2DShadow sampler) \n"
  7098.    "       (declare (in) vec4 P) \n"
  7099.    "       (declare (in) vec2 dPdx) \n"
  7100.    "       (declare (in) vec2 dPdy) )\n"
  7101.    "     ((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"
  7102.    "\n"
  7103.    "))\n"
  7104.    ""
  7105. ;
  7106. static const char builtin_textureProjGradOffset[] =
  7107.    "((function textureProjGradOffset\n"
  7108.    "   (signature vec4\n"
  7109.    "     (parameters\n"
  7110.    "       (declare (in) sampler1D sampler) \n"
  7111.    "       (declare (in) vec2 P) \n"
  7112.    "       (declare (in) float dPdx) \n"
  7113.    "       (declare (in) float dPdy) \n"
  7114.    "       (declare (const_in) int offset) )\n"
  7115.    "     ((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"
  7116.    "\n"
  7117.    "   (signature ivec4\n"
  7118.    "     (parameters\n"
  7119.    "       (declare (in) isampler1D sampler) \n"
  7120.    "       (declare (in) vec2 P) \n"
  7121.    "       (declare (in) float dPdx) \n"
  7122.    "       (declare (in) float dPdy) \n"
  7123.    "       (declare (const_in) int offset) )\n"
  7124.    "     ((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"
  7125.    "\n"
  7126.    "   (signature uvec4\n"
  7127.    "     (parameters\n"
  7128.    "       (declare (in) usampler1D sampler) \n"
  7129.    "       (declare (in) vec2 P) \n"
  7130.    "       (declare (in) float dPdx) \n"
  7131.    "       (declare (in) float dPdy) \n"
  7132.    "       (declare (const_in) int offset) )\n"
  7133.    "     ((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"
  7134.    "\n"
  7135.    "   (signature vec4\n"
  7136.    "     (parameters\n"
  7137.    "       (declare (in) sampler1D sampler) \n"
  7138.    "       (declare (in) vec4 P) \n"
  7139.    "       (declare (in) float dPdx) \n"
  7140.    "       (declare (in) float dPdy) \n"
  7141.    "       (declare (const_in) int offset) )\n"
  7142.    "     ((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"
  7143.    "\n"
  7144.    "   (signature ivec4\n"
  7145.    "     (parameters\n"
  7146.    "       (declare (in) isampler1D sampler) \n"
  7147.    "       (declare (in) vec4 P) \n"
  7148.    "       (declare (in) float dPdx) \n"
  7149.    "       (declare (in) float dPdy) \n"
  7150.    "       (declare (const_in) int offset) )\n"
  7151.    "     ((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"
  7152.    "\n"
  7153.    "   (signature uvec4\n"
  7154.    "     (parameters\n"
  7155.    "       (declare (in) usampler1D sampler) \n"
  7156.    "       (declare (in) vec4 P) \n"
  7157.    "       (declare (in) float dPdx) \n"
  7158.    "       (declare (in) float dPdy) \n"
  7159.    "       (declare (const_in) int offset) )\n"
  7160.    "     ((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"
  7161.    "\n"
  7162.    "   (signature vec4\n"
  7163.    "     (parameters\n"
  7164.    "       (declare (in) sampler2D sampler) \n"
  7165.    "       (declare (in) vec3 P) \n"
  7166.    "       (declare (in) vec2 dPdx) \n"
  7167.    "       (declare (in) vec2 dPdy) \n"
  7168.    "       (declare (const_in) ivec2 offset) )\n"
  7169.    "     ((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"
  7170.    "\n"
  7171.    "   (signature ivec4\n"
  7172.    "     (parameters\n"
  7173.    "       (declare (in) isampler2D sampler) \n"
  7174.    "       (declare (in) vec3 P) \n"
  7175.    "       (declare (in) vec2 dPdx) \n"
  7176.    "       (declare (in) vec2 dPdy) \n"
  7177.    "       (declare (const_in) ivec2 offset) )\n"
  7178.    "     ((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"
  7179.    "\n"
  7180.    "   (signature uvec4\n"
  7181.    "     (parameters\n"
  7182.    "       (declare (in) usampler2D sampler) \n"
  7183.    "       (declare (in) vec3 P) \n"
  7184.    "       (declare (in) vec2 dPdx) \n"
  7185.    "       (declare (in) vec2 dPdy) \n"
  7186.    "       (declare (const_in) ivec2 offset) )\n"
  7187.    "     ((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"
  7188.    "\n"
  7189.    "   (signature vec4\n"
  7190.    "     (parameters\n"
  7191.    "       (declare (in) sampler2D sampler) \n"
  7192.    "       (declare (in) vec4 P) \n"
  7193.    "       (declare (in) vec2 dPdx) \n"
  7194.    "       (declare (in) vec2 dPdy) \n"
  7195.    "       (declare (const_in) ivec2 offset) )\n"
  7196.    "     ((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"
  7197.    "\n"
  7198.    "   (signature ivec4\n"
  7199.    "     (parameters\n"
  7200.    "       (declare (in) isampler2D sampler) \n"
  7201.    "       (declare (in) vec4 P) \n"
  7202.    "       (declare (in) vec2 dPdx) \n"
  7203.    "       (declare (in) vec2 dPdy) \n"
  7204.    "       (declare (const_in) ivec2 offset) )\n"
  7205.    "     ((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"
  7206.    "\n"
  7207.    "   (signature uvec4\n"
  7208.    "     (parameters\n"
  7209.    "       (declare (in) usampler2D sampler) \n"
  7210.    "       (declare (in) vec4 P) \n"
  7211.    "       (declare (in) vec2 dPdx) \n"
  7212.    "       (declare (in) vec2 dPdy) \n"
  7213.    "       (declare (const_in) ivec2 offset) )\n"
  7214.    "     ((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"
  7215.    "\n"
  7216.    "   (signature vec4\n"
  7217.    "     (parameters\n"
  7218.    "       (declare (in) sampler3D sampler) \n"
  7219.    "       (declare (in) vec4 P) \n"
  7220.    "       (declare (in) vec3 dPdx) \n"
  7221.    "       (declare (in) vec3 dPdy) \n"
  7222.    "       (declare (const_in) ivec3 offset) )\n"
  7223.    "     ((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"
  7224.    "\n"
  7225.    "   (signature ivec4\n"
  7226.    "     (parameters\n"
  7227.    "       (declare (in) isampler3D sampler) \n"
  7228.    "       (declare (in) vec4 P) \n"
  7229.    "       (declare (in) vec3 dPdx) \n"
  7230.    "       (declare (in) vec3 dPdy) \n"
  7231.    "       (declare (const_in) ivec3 offset) )\n"
  7232.    "     ((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"
  7233.    "\n"
  7234.    "   (signature uvec4\n"
  7235.    "     (parameters\n"
  7236.    "       (declare (in) usampler3D sampler) \n"
  7237.    "       (declare (in) vec4 P) \n"
  7238.    "       (declare (in) vec3 dPdx) \n"
  7239.    "       (declare (in) vec3 dPdy) \n"
  7240.    "       (declare (const_in) ivec3 offset) )\n"
  7241.    "     ((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"
  7242.    "\n"
  7243.    "   (signature vec4\n"
  7244.    "     (parameters\n"
  7245.    "       (declare (in) sampler2DRect sampler) \n"
  7246.    "       (declare (in) vec3 P) \n"
  7247.    "       (declare (in) vec2 dPdx) \n"
  7248.    "       (declare (in) vec2 dPdy) \n"
  7249.    "       (declare (const_in) ivec2 offset) )\n"
  7250.    "     ((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"
  7251.    "\n"
  7252.    "   (signature ivec4\n"
  7253.    "     (parameters\n"
  7254.    "       (declare (in) isampler2DRect sampler) \n"
  7255.    "       (declare (in) vec3 P) \n"
  7256.    "       (declare (in) vec2 dPdx) \n"
  7257.    "       (declare (in) vec2 dPdy) \n"
  7258.    "       (declare (const_in) ivec2 offset) )\n"
  7259.    "     ((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"
  7260.    "\n"
  7261.    "   (signature uvec4\n"
  7262.    "     (parameters\n"
  7263.    "       (declare (in) usampler2DRect sampler) \n"
  7264.    "       (declare (in) vec3 P) \n"
  7265.    "       (declare (in) vec2 dPdx) \n"
  7266.    "       (declare (in) vec2 dPdy) \n"
  7267.    "       (declare (const_in) ivec2 offset) )\n"
  7268.    "     ((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"
  7269.    "\n"
  7270.    "   (signature vec4\n"
  7271.    "     (parameters\n"
  7272.    "       (declare (in) sampler2DRect sampler) \n"
  7273.    "       (declare (in) vec4 P) \n"
  7274.    "       (declare (in) vec2 dPdx) \n"
  7275.    "       (declare (in) vec2 dPdy) \n"
  7276.    "       (declare (const_in) ivec2 offset) )\n"
  7277.    "     ((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"
  7278.    "\n"
  7279.    "   (signature ivec4\n"
  7280.    "     (parameters\n"
  7281.    "       (declare (in) isampler2DRect sampler) \n"
  7282.    "       (declare (in) vec4 P) \n"
  7283.    "       (declare (in) vec2 dPdx) \n"
  7284.    "       (declare (in) vec2 dPdy) \n"
  7285.    "       (declare (const_in) ivec2 offset) )\n"
  7286.    "     ((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"
  7287.    "\n"
  7288.    "   (signature uvec4\n"
  7289.    "     (parameters\n"
  7290.    "       (declare (in) usampler2DRect sampler) \n"
  7291.    "       (declare (in) vec4 P) \n"
  7292.    "       (declare (in) vec2 dPdx) \n"
  7293.    "       (declare (in) vec2 dPdy) \n"
  7294.    "       (declare (const_in) ivec2 offset) )\n"
  7295.    "     ((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"
  7296.    "\n"
  7297.    "   (signature float\n"
  7298.    "     (parameters\n"
  7299.    "       (declare (in) sampler2DRectShadow sampler) \n"
  7300.    "       (declare (in) vec4 P) \n"
  7301.    "       (declare (in) vec2 dPdx) \n"
  7302.    "       (declare (in) vec2 dPdy) \n"
  7303.    "       (declare (const_in) ivec2 offset) )\n"
  7304.    "     ((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"
  7305.    "\n"
  7306.    "   (signature float\n"
  7307.    "     (parameters\n"
  7308.    "       (declare (in) sampler1DShadow sampler) \n"
  7309.    "       (declare (in) vec4 P) \n"
  7310.    "       (declare (in) float dPdx) \n"
  7311.    "       (declare (in) float dPdy) \n"
  7312.    "       (declare (const_in) int offset) )\n"
  7313.    "     ((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"
  7314.    "\n"
  7315.    "   (signature float\n"
  7316.    "     (parameters\n"
  7317.    "       (declare (in) sampler2DShadow sampler) \n"
  7318.    "       (declare (in) vec4 P) \n"
  7319.    "       (declare (in) vec2 dPdx) \n"
  7320.    "       (declare (in) vec2 dPdy) \n"
  7321.    "       (declare (const_in) ivec2 offset) )\n"
  7322.    "     ((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"
  7323.    "\n"
  7324.    "))\n"
  7325.    ""
  7326. ;
  7327. static const char builtin_textureProjLod[] =
  7328.    "((function textureProjLod\n"
  7329.    "   (signature vec4\n"
  7330.    "     (parameters\n"
  7331.    "       (declare (in) sampler1D sampler) \n"
  7332.    "       (declare (in) vec2 P) \n"
  7333.    "       (declare (in) float lod) )\n"
  7334.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7335.    "\n"
  7336.    "   (signature ivec4\n"
  7337.    "     (parameters\n"
  7338.    "       (declare (in) isampler1D sampler) \n"
  7339.    "       (declare (in) vec2 P) \n"
  7340.    "       (declare (in) float lod) )\n"
  7341.    "     ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7342.    "\n"
  7343.    "   (signature uvec4\n"
  7344.    "     (parameters\n"
  7345.    "       (declare (in) usampler1D sampler) \n"
  7346.    "       (declare (in) vec2 P) \n"
  7347.    "       (declare (in) float lod) )\n"
  7348.    "     ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7349.    "\n"
  7350.    "   (signature vec4\n"
  7351.    "     (parameters\n"
  7352.    "       (declare (in) sampler1D sampler) \n"
  7353.    "       (declare (in) vec4 P) \n"
  7354.    "       (declare (in) float lod) )\n"
  7355.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7356.    "\n"
  7357.    "   (signature ivec4\n"
  7358.    "     (parameters\n"
  7359.    "       (declare (in) isampler1D sampler) \n"
  7360.    "       (declare (in) vec4 P) \n"
  7361.    "       (declare (in) float lod) )\n"
  7362.    "     ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7363.    "\n"
  7364.    "   (signature uvec4\n"
  7365.    "     (parameters\n"
  7366.    "       (declare (in) usampler1D sampler) \n"
  7367.    "       (declare (in) vec4 P) \n"
  7368.    "       (declare (in) float lod) )\n"
  7369.    "     ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7370.    "\n"
  7371.    "   (signature vec4\n"
  7372.    "     (parameters\n"
  7373.    "       (declare (in) sampler2D sampler) \n"
  7374.    "       (declare (in) vec3 P) \n"
  7375.    "       (declare (in) float lod) )\n"
  7376.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7377.    "\n"
  7378.    "   (signature ivec4\n"
  7379.    "     (parameters\n"
  7380.    "       (declare (in) isampler2D sampler) \n"
  7381.    "       (declare (in) vec3 P) \n"
  7382.    "       (declare (in) float lod) )\n"
  7383.    "     ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7384.    "\n"
  7385.    "   (signature uvec4\n"
  7386.    "     (parameters\n"
  7387.    "       (declare (in) usampler2D sampler) \n"
  7388.    "       (declare (in) vec3 P) \n"
  7389.    "       (declare (in) float lod) )\n"
  7390.    "     ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7391.    "\n"
  7392.    "   (signature vec4\n"
  7393.    "     (parameters\n"
  7394.    "       (declare (in) sampler2D sampler) \n"
  7395.    "       (declare (in) vec4 P) \n"
  7396.    "       (declare (in) float lod) )\n"
  7397.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7398.    "\n"
  7399.    "   (signature ivec4\n"
  7400.    "     (parameters\n"
  7401.    "       (declare (in) isampler2D sampler) \n"
  7402.    "       (declare (in) vec4 P) \n"
  7403.    "       (declare (in) float lod) )\n"
  7404.    "     ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7405.    "\n"
  7406.    "   (signature uvec4\n"
  7407.    "     (parameters\n"
  7408.    "       (declare (in) usampler2D sampler) \n"
  7409.    "       (declare (in) vec4 P) \n"
  7410.    "       (declare (in) float lod) )\n"
  7411.    "     ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7412.    "\n"
  7413.    "   (signature vec4\n"
  7414.    "     (parameters\n"
  7415.    "       (declare (in) sampler3D sampler) \n"
  7416.    "       (declare (in) vec4 P) \n"
  7417.    "       (declare (in) float lod) )\n"
  7418.    "     ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7419.    "\n"
  7420.    "   (signature ivec4\n"
  7421.    "     (parameters\n"
  7422.    "       (declare (in) isampler3D sampler) \n"
  7423.    "       (declare (in) vec4 P) \n"
  7424.    "       (declare (in) float lod) )\n"
  7425.    "     ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7426.    "\n"
  7427.    "   (signature uvec4\n"
  7428.    "     (parameters\n"
  7429.    "       (declare (in) usampler3D sampler) \n"
  7430.    "       (declare (in) vec4 P) \n"
  7431.    "       (declare (in) float lod) )\n"
  7432.    "     ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7433.    "\n"
  7434.    "   (signature float\n"
  7435.    "     (parameters\n"
  7436.    "       (declare (in) sampler1DShadow sampler) \n"
  7437.    "       (declare (in) vec4 P) \n"
  7438.    "       (declare (in) float lod) )\n"
  7439.    "     ((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"
  7440.    "\n"
  7441.    "   (signature float\n"
  7442.    "     (parameters\n"
  7443.    "       (declare (in) sampler2DShadow sampler) \n"
  7444.    "       (declare (in) vec4 P) \n"
  7445.    "       (declare (in) float lod) )\n"
  7446.    "     ((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"
  7447.    "\n"
  7448.    "))\n"
  7449.    ""
  7450. ;
  7451. static const char builtin_textureProjLodOffset[] =
  7452.    "((function textureProjLodOffset\n"
  7453.    "   (signature vec4\n"
  7454.    "     (parameters\n"
  7455.    "       (declare (in) sampler1D sampler) \n"
  7456.    "       (declare (in) vec2 P) \n"
  7457.    "       (declare (in) float lod) \n"
  7458.    "       (declare (const_in) int offset) )\n"
  7459.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7460.    "\n"
  7461.    "   (signature ivec4\n"
  7462.    "     (parameters\n"
  7463.    "       (declare (in) isampler1D sampler) \n"
  7464.    "       (declare (in) vec2 P) \n"
  7465.    "       (declare (in) float lod) \n"
  7466.    "       (declare (const_in) int offset) )\n"
  7467.    "     ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7468.    "\n"
  7469.    "   (signature uvec4\n"
  7470.    "     (parameters\n"
  7471.    "       (declare (in) usampler1D sampler) \n"
  7472.    "       (declare (in) vec2 P) \n"
  7473.    "       (declare (in) float lod) \n"
  7474.    "       (declare (const_in) int offset) )\n"
  7475.    "     ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n"
  7476.    "\n"
  7477.    "   (signature vec4\n"
  7478.    "     (parameters\n"
  7479.    "       (declare (in) sampler1D sampler) \n"
  7480.    "       (declare (in) vec4 P) \n"
  7481.    "       (declare (in) float lod) \n"
  7482.    "       (declare (const_in) int offset) )\n"
  7483.    "     ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7484.    "\n"
  7485.    "   (signature ivec4\n"
  7486.    "     (parameters\n"
  7487.    "       (declare (in) isampler1D sampler) \n"
  7488.    "       (declare (in) vec4 P) \n"
  7489.    "       (declare (in) float lod) \n"
  7490.    "       (declare (const_in) int offset) )\n"
  7491.    "     ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7492.    "\n"
  7493.    "   (signature uvec4\n"
  7494.    "     (parameters\n"
  7495.    "       (declare (in) usampler1D sampler) \n"
  7496.    "       (declare (in) vec4 P) \n"
  7497.    "       (declare (in) float lod) \n"
  7498.    "       (declare (const_in) int offset) )\n"
  7499.    "     ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7500.    "\n"
  7501.    "   (signature vec4\n"
  7502.    "     (parameters\n"
  7503.    "       (declare (in) sampler2D sampler) \n"
  7504.    "       (declare (in) vec3 P) \n"
  7505.    "       (declare (in) float lod) \n"
  7506.    "       (declare (const_in) ivec2 offset) )\n"
  7507.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7508.    "\n"
  7509.    "   (signature ivec4\n"
  7510.    "     (parameters\n"
  7511.    "       (declare (in) isampler2D sampler) \n"
  7512.    "       (declare (in) vec3 P) \n"
  7513.    "       (declare (in) float lod) \n"
  7514.    "       (declare (const_in) ivec2 offset) )\n"
  7515.    "     ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7516.    "\n"
  7517.    "   (signature uvec4\n"
  7518.    "     (parameters\n"
  7519.    "       (declare (in) usampler2D sampler) \n"
  7520.    "       (declare (in) vec3 P) \n"
  7521.    "       (declare (in) float lod) \n"
  7522.    "       (declare (const_in) ivec2 offset) )\n"
  7523.    "     ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n"
  7524.    "\n"
  7525.    "   (signature vec4\n"
  7526.    "     (parameters\n"
  7527.    "       (declare (in) sampler2D sampler) \n"
  7528.    "       (declare (in) vec4 P) \n"
  7529.    "       (declare (in) float lod) \n"
  7530.    "       (declare (const_in) ivec2 offset) )\n"
  7531.    "     ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7532.    "\n"
  7533.    "   (signature ivec4\n"
  7534.    "     (parameters\n"
  7535.    "       (declare (in) isampler2D sampler) \n"
  7536.    "       (declare (in) vec4 P) \n"
  7537.    "       (declare (in) float lod) \n"
  7538.    "       (declare (const_in) ivec2 offset) )\n"
  7539.    "     ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7540.    "\n"
  7541.    "   (signature uvec4\n"
  7542.    "     (parameters\n"
  7543.    "       (declare (in) usampler2D sampler) \n"
  7544.    "       (declare (in) vec4 P) \n"
  7545.    "       (declare (in) float lod) \n"
  7546.    "       (declare (const_in) ivec2 offset) )\n"
  7547.    "     ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7548.    "\n"
  7549.    "   (signature vec4\n"
  7550.    "     (parameters\n"
  7551.    "       (declare (in) sampler3D sampler) \n"
  7552.    "       (declare (in) vec4 P) \n"
  7553.    "       (declare (in) float lod) \n"
  7554.    "       (declare (const_in) ivec3 offset) )\n"
  7555.    "     ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7556.    "\n"
  7557.    "   (signature ivec4\n"
  7558.    "     (parameters\n"
  7559.    "       (declare (in) isampler3D sampler) \n"
  7560.    "       (declare (in) vec4 P) \n"
  7561.    "       (declare (in) float lod) \n"
  7562.    "       (declare (const_in) ivec3 offset) )\n"
  7563.    "     ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7564.    "\n"
  7565.    "   (signature uvec4\n"
  7566.    "     (parameters\n"
  7567.    "       (declare (in) usampler3D sampler) \n"
  7568.    "       (declare (in) vec4 P) \n"
  7569.    "       (declare (in) float lod) \n"
  7570.    "       (declare (const_in) ivec3 offset) )\n"
  7571.    "     ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n"
  7572.    "\n"
  7573.    "   (signature float\n"
  7574.    "     (parameters\n"
  7575.    "       (declare (in) sampler1DShadow sampler) \n"
  7576.    "       (declare (in) vec4 P) \n"
  7577.    "       (declare (in) float lod) \n"
  7578.    "       (declare (const_in) int offset) )\n"
  7579.    "     ((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"
  7580.    "\n"
  7581.    "   (signature float\n"
  7582.    "     (parameters\n"
  7583.    "       (declare (in) sampler2DShadow sampler) \n"
  7584.    "       (declare (in) vec4 P) \n"
  7585.    "       (declare (in) float lod) \n"
  7586.    "       (declare (const_in) ivec2 offset) )\n"
  7587.    "     ((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"
  7588.    "\n"
  7589.    "))\n"
  7590.    ""
  7591. ;
  7592. static const char builtin_textureProjOffset[] =
  7593.    "((function textureProjOffset\n"
  7594.    "   (signature vec4\n"
  7595.    "     (parameters\n"
  7596.    "       (declare (in) sampler1D sampler) \n"
  7597.    "       (declare (in) vec2 P) \n"
  7598.    "       (declare (const_in) int offset) )\n"
  7599.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
  7600.    "\n"
  7601.    "   (signature ivec4\n"
  7602.    "     (parameters\n"
  7603.    "       (declare (in) isampler1D sampler) \n"
  7604.    "       (declare (in) vec2 P) \n"
  7605.    "       (declare (const_in) int offset) )\n"
  7606.    "     ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
  7607.    "\n"
  7608.    "   (signature uvec4\n"
  7609.    "     (parameters\n"
  7610.    "       (declare (in) usampler1D sampler) \n"
  7611.    "       (declare (in) vec2 P) \n"
  7612.    "       (declare (const_in) int offset) )\n"
  7613.    "     ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n"
  7614.    "\n"
  7615.    "   (signature vec4\n"
  7616.    "     (parameters\n"
  7617.    "       (declare (in) sampler1D sampler) \n"
  7618.    "       (declare (in) vec4 P) \n"
  7619.    "       (declare (const_in) int offset) )\n"
  7620.    "     ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7621.    "\n"
  7622.    "   (signature ivec4\n"
  7623.    "     (parameters\n"
  7624.    "       (declare (in) isampler1D sampler) \n"
  7625.    "       (declare (in) vec4 P) \n"
  7626.    "       (declare (const_in) int offset) )\n"
  7627.    "     ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7628.    "\n"
  7629.    "   (signature uvec4\n"
  7630.    "     (parameters\n"
  7631.    "       (declare (in) usampler1D sampler) \n"
  7632.    "       (declare (in) vec4 P) \n"
  7633.    "       (declare (const_in) int offset) )\n"
  7634.    "     ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7635.    "\n"
  7636.    "   (signature vec4\n"
  7637.    "     (parameters\n"
  7638.    "       (declare (in) sampler2D sampler) \n"
  7639.    "       (declare (in) vec3 P) \n"
  7640.    "       (declare (const_in) ivec2 offset) )\n"
  7641.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7642.    "\n"
  7643.    "   (signature ivec4\n"
  7644.    "     (parameters\n"
  7645.    "       (declare (in) isampler2D sampler) \n"
  7646.    "       (declare (in) vec3 P) \n"
  7647.    "       (declare (const_in) ivec2 offset) )\n"
  7648.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7649.    "\n"
  7650.    "   (signature uvec4\n"
  7651.    "     (parameters\n"
  7652.    "       (declare (in) usampler2D sampler) \n"
  7653.    "       (declare (in) vec3 P) \n"
  7654.    "       (declare (const_in) ivec2 offset) )\n"
  7655.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7656.    "\n"
  7657.    "   (signature vec4\n"
  7658.    "     (parameters\n"
  7659.    "       (declare (in) sampler2D sampler) \n"
  7660.    "       (declare (in) vec4 P) \n"
  7661.    "       (declare (const_in) ivec2 offset) )\n"
  7662.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7663.    "\n"
  7664.    "   (signature ivec4\n"
  7665.    "     (parameters\n"
  7666.    "       (declare (in) isampler2D sampler) \n"
  7667.    "       (declare (in) vec4 P) \n"
  7668.    "       (declare (const_in) ivec2 offset) )\n"
  7669.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7670.    "\n"
  7671.    "   (signature uvec4\n"
  7672.    "     (parameters\n"
  7673.    "       (declare (in) usampler2D sampler) \n"
  7674.    "       (declare (in) vec4 P) \n"
  7675.    "       (declare (const_in) ivec2 offset) )\n"
  7676.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7677.    "\n"
  7678.    "   (signature vec4\n"
  7679.    "     (parameters\n"
  7680.    "       (declare (in) sampler3D sampler) \n"
  7681.    "       (declare (in) vec4 P) \n"
  7682.    "       (declare (const_in) ivec3 offset) )\n"
  7683.    "     ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7684.    "\n"
  7685.    "   (signature ivec4\n"
  7686.    "     (parameters\n"
  7687.    "       (declare (in) isampler3D sampler) \n"
  7688.    "       (declare (in) vec4 P) \n"
  7689.    "       (declare (const_in) ivec3 offset) )\n"
  7690.    "     ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7691.    "\n"
  7692.    "   (signature uvec4\n"
  7693.    "     (parameters\n"
  7694.    "       (declare (in) usampler3D sampler) \n"
  7695.    "       (declare (in) vec4 P) \n"
  7696.    "       (declare (const_in) ivec3 offset) )\n"
  7697.    "     ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7698.    "\n"
  7699.    "   (signature vec4\n"
  7700.    "     (parameters\n"
  7701.    "       (declare (in) sampler2DRect sampler) \n"
  7702.    "       (declare (in) vec3 P) \n"
  7703.    "       (declare (const_in) ivec2 offset) )\n"
  7704.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7705.    "\n"
  7706.    "   (signature ivec4\n"
  7707.    "     (parameters\n"
  7708.    "       (declare (in) isampler2DRect sampler) \n"
  7709.    "       (declare (in) vec3 P) \n"
  7710.    "       (declare (const_in) ivec2 offset) )\n"
  7711.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7712.    "\n"
  7713.    "   (signature uvec4\n"
  7714.    "     (parameters\n"
  7715.    "       (declare (in) usampler2DRect sampler) \n"
  7716.    "       (declare (in) vec3 P) \n"
  7717.    "       (declare (const_in) ivec2 offset) )\n"
  7718.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n"
  7719.    "\n"
  7720.    "   (signature vec4\n"
  7721.    "     (parameters\n"
  7722.    "       (declare (in) sampler2DRect sampler) \n"
  7723.    "       (declare (in) vec4 P) \n"
  7724.    "       (declare (const_in) ivec2 offset) )\n"
  7725.    "     ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7726.    "\n"
  7727.    "   (signature ivec4\n"
  7728.    "     (parameters\n"
  7729.    "       (declare (in) isampler2DRect sampler) \n"
  7730.    "       (declare (in) vec4 P) \n"
  7731.    "       (declare (const_in) ivec2 offset) )\n"
  7732.    "     ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7733.    "\n"
  7734.    "   (signature uvec4\n"
  7735.    "     (parameters\n"
  7736.    "       (declare (in) usampler2DRect sampler) \n"
  7737.    "       (declare (in) vec4 P) \n"
  7738.    "       (declare (const_in) ivec2 offset) )\n"
  7739.    "     ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n"
  7740.    "\n"
  7741.    "   (signature float\n"
  7742.    "     (parameters\n"
  7743.    "       (declare (in) sampler2DRectShadow sampler) \n"
  7744.    "       (declare (in) vec4 P) \n"
  7745.    "       (declare (const_in) ivec2 offset) )\n"
  7746.    "     ((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"
  7747.    "\n"
  7748.    "   (signature float\n"
  7749.    "     (parameters\n"
  7750.    "       (declare (in) sampler1DShadow sampler) \n"
  7751.    "       (declare (in) vec4 P) \n"
  7752.    "       (declare (const_in) int offset) )\n"
  7753.    "     ((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"
  7754.    "\n"
  7755.    "   (signature float\n"
  7756.    "     (parameters\n"
  7757.    "       (declare (in) sampler2DShadow sampler) \n"
  7758.    "       (declare (in) vec4 P) \n"
  7759.    "       (declare (const_in) ivec2 offset) )\n"
  7760.    "     ((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"
  7761.    "\n"
  7762.    "   (signature vec4\n"
  7763.    "     (parameters\n"
  7764.    "       (declare (in) sampler1D sampler) \n"
  7765.    "       (declare (in) vec2 P) \n"
  7766.    "       (declare (const_in) int offset) \n"
  7767.    "       (declare (in) float bias) )\n"
  7768.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  7769.    "\n"
  7770.    "   (signature ivec4\n"
  7771.    "     (parameters\n"
  7772.    "       (declare (in) isampler1D sampler) \n"
  7773.    "       (declare (in) vec2 P) \n"
  7774.    "       (declare (const_in) int offset) \n"
  7775.    "       (declare (in) float bias) )\n"
  7776.    "     ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  7777.    "\n"
  7778.    "   (signature uvec4\n"
  7779.    "     (parameters\n"
  7780.    "       (declare (in) usampler1D sampler) \n"
  7781.    "       (declare (in) vec2 P) \n"
  7782.    "       (declare (const_in) int offset) \n"
  7783.    "       (declare (in) float bias) )\n"
  7784.    "     ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n"
  7785.    "\n"
  7786.    "   (signature vec4\n"
  7787.    "     (parameters\n"
  7788.    "       (declare (in) sampler1D sampler) \n"
  7789.    "       (declare (in) vec4 P) \n"
  7790.    "       (declare (const_in) int offset) \n"
  7791.    "       (declare (in) float bias) )\n"
  7792.    "     ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7793.    "\n"
  7794.    "   (signature ivec4\n"
  7795.    "     (parameters\n"
  7796.    "       (declare (in) isampler1D sampler) \n"
  7797.    "       (declare (in) vec4 P) \n"
  7798.    "       (declare (const_in) int offset) \n"
  7799.    "       (declare (in) float bias) )\n"
  7800.    "     ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7801.    "\n"
  7802.    "   (signature uvec4\n"
  7803.    "     (parameters\n"
  7804.    "       (declare (in) usampler1D sampler) \n"
  7805.    "       (declare (in) vec4 P) \n"
  7806.    "       (declare (const_in) int offset) \n"
  7807.    "       (declare (in) float bias) )\n"
  7808.    "     ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7809.    "\n"
  7810.    "   (signature vec4\n"
  7811.    "     (parameters\n"
  7812.    "       (declare (in) sampler2D sampler) \n"
  7813.    "       (declare (in) vec3 P) \n"
  7814.    "       (declare (const_in) ivec2 offset) \n"
  7815.    "       (declare (in) float bias) )\n"
  7816.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  7817.    "\n"
  7818.    "   (signature ivec4\n"
  7819.    "     (parameters\n"
  7820.    "       (declare (in) isampler2D sampler) \n"
  7821.    "       (declare (in) vec3 P) \n"
  7822.    "       (declare (const_in) ivec2 offset) \n"
  7823.    "       (declare (in) float bias) )\n"
  7824.    "     ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  7825.    "\n"
  7826.    "   (signature uvec4\n"
  7827.    "     (parameters\n"
  7828.    "       (declare (in) usampler2D sampler) \n"
  7829.    "       (declare (in) vec3 P) \n"
  7830.    "       (declare (const_in) ivec2 offset) \n"
  7831.    "       (declare (in) float bias) )\n"
  7832.    "     ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n"
  7833.    "\n"
  7834.    "   (signature vec4\n"
  7835.    "     (parameters\n"
  7836.    "       (declare (in) sampler2D sampler) \n"
  7837.    "       (declare (in) vec4 P) \n"
  7838.    "       (declare (const_in) ivec2 offset) \n"
  7839.    "       (declare (in) float bias) )\n"
  7840.    "     ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7841.    "\n"
  7842.    "   (signature ivec4\n"
  7843.    "     (parameters\n"
  7844.    "       (declare (in) isampler2D sampler) \n"
  7845.    "       (declare (in) vec4 P) \n"
  7846.    "       (declare (const_in) ivec2 offset) \n"
  7847.    "       (declare (in) float bias) )\n"
  7848.    "     ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7849.    "\n"
  7850.    "   (signature uvec4\n"
  7851.    "     (parameters\n"
  7852.    "       (declare (in) usampler2D sampler) \n"
  7853.    "       (declare (in) vec4 P) \n"
  7854.    "       (declare (const_in) ivec2 offset) \n"
  7855.    "       (declare (in) float bias) )\n"
  7856.    "     ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7857.    "\n"
  7858.    "   (signature vec4\n"
  7859.    "     (parameters\n"
  7860.    "       (declare (in) sampler3D sampler) \n"
  7861.    "       (declare (in) vec4 P) \n"
  7862.    "       (declare (const_in) ivec3 offset) \n"
  7863.    "       (declare (in) float bias) )\n"
  7864.    "     ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7865.    "\n"
  7866.    "   (signature ivec4\n"
  7867.    "     (parameters\n"
  7868.    "       (declare (in) isampler3D sampler) \n"
  7869.    "       (declare (in) vec4 P) \n"
  7870.    "       (declare (const_in) ivec3 offset) \n"
  7871.    "       (declare (in) float bias) )\n"
  7872.    "     ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7873.    "\n"
  7874.    "   (signature uvec4\n"
  7875.    "     (parameters\n"
  7876.    "       (declare (in) usampler3D sampler) \n"
  7877.    "       (declare (in) vec4 P) \n"
  7878.    "       (declare (const_in) ivec3 offset) \n"
  7879.    "       (declare (in) float bias) )\n"
  7880.    "     ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n"
  7881.    "\n"
  7882.    "   (signature float\n"
  7883.    "     (parameters\n"
  7884.    "       (declare (in) sampler1DShadow sampler) \n"
  7885.    "       (declare (in) vec4 P) \n"
  7886.    "       (declare (const_in) int offset) \n"
  7887.    "       (declare (in) float bias) )\n"
  7888.    "     ((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"
  7889.    "\n"
  7890.    "   (signature float\n"
  7891.    "     (parameters\n"
  7892.    "       (declare (in) sampler2DShadow sampler) \n"
  7893.    "       (declare (in) vec4 P) \n"
  7894.    "       (declare (const_in) ivec2 offset) \n"
  7895.    "       (declare (in) float bias) )\n"
  7896.    "     ((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"
  7897.    "\n"
  7898.    "))\n"
  7899.    ""
  7900. ;
  7901. static const char builtin_textureQueryLOD[] =
  7902.    "((function textureQueryLOD\n"
  7903.    "   (signature vec2\n"
  7904.    "     (parameters\n"
  7905.    "       (declare (in) sampler1D sampler) \n"
  7906.    "       (declare (in) float P) )\n"
  7907.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7908.    "\n"
  7909.    "   (signature vec2\n"
  7910.    "     (parameters\n"
  7911.    "       (declare (in) isampler1D sampler) \n"
  7912.    "       (declare (in) float P) )\n"
  7913.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7914.    "\n"
  7915.    "   (signature vec2\n"
  7916.    "     (parameters\n"
  7917.    "       (declare (in) usampler1D sampler) \n"
  7918.    "       (declare (in) float P) )\n"
  7919.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7920.    "\n"
  7921.    "   (signature vec2\n"
  7922.    "     (parameters\n"
  7923.    "       (declare (in) sampler2D sampler) \n"
  7924.    "       (declare (in) vec2 P) )\n"
  7925.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7926.    "\n"
  7927.    "   (signature vec2\n"
  7928.    "     (parameters\n"
  7929.    "       (declare (in) isampler2D sampler) \n"
  7930.    "       (declare (in) vec2 P) )\n"
  7931.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7932.    "\n"
  7933.    "   (signature vec2\n"
  7934.    "     (parameters\n"
  7935.    "       (declare (in) usampler2D sampler) \n"
  7936.    "       (declare (in) vec2 P) )\n"
  7937.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7938.    "\n"
  7939.    "   (signature vec2\n"
  7940.    "     (parameters\n"
  7941.    "       (declare (in) sampler3D sampler) \n"
  7942.    "       (declare (in) vec3 P) )\n"
  7943.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7944.    "\n"
  7945.    "   (signature vec2\n"
  7946.    "     (parameters\n"
  7947.    "       (declare (in) isampler3D sampler) \n"
  7948.    "       (declare (in) vec3 P) )\n"
  7949.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7950.    "\n"
  7951.    "   (signature vec2\n"
  7952.    "     (parameters\n"
  7953.    "       (declare (in) usampler3D sampler) \n"
  7954.    "       (declare (in) vec3 P) )\n"
  7955.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7956.    "\n"
  7957.    "   (signature vec2\n"
  7958.    "     (parameters\n"
  7959.    "       (declare (in) samplerCube sampler) \n"
  7960.    "       (declare (in) vec3 P) )\n"
  7961.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7962.    "\n"
  7963.    "   (signature vec2\n"
  7964.    "     (parameters\n"
  7965.    "       (declare (in) isamplerCube sampler) \n"
  7966.    "       (declare (in) vec3 P) )\n"
  7967.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7968.    "\n"
  7969.    "   (signature vec2\n"
  7970.    "     (parameters\n"
  7971.    "       (declare (in) usamplerCube sampler) \n"
  7972.    "       (declare (in) vec3 P) )\n"
  7973.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7974.    "\n"
  7975.    "   (signature vec2\n"
  7976.    "     (parameters\n"
  7977.    "       (declare (in) sampler1DArray sampler) \n"
  7978.    "       (declare (in) float P) )\n"
  7979.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7980.    "\n"
  7981.    "   (signature vec2\n"
  7982.    "     (parameters\n"
  7983.    "       (declare (in) isampler1DArray sampler) \n"
  7984.    "       (declare (in) float P) )\n"
  7985.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7986.    "\n"
  7987.    "   (signature vec2\n"
  7988.    "     (parameters\n"
  7989.    "       (declare (in) usampler1DArray sampler) \n"
  7990.    "       (declare (in) float P) )\n"
  7991.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7992.    "\n"
  7993.    "   (signature vec2\n"
  7994.    "     (parameters\n"
  7995.    "       (declare (in) sampler2DArray sampler) \n"
  7996.    "       (declare (in) vec2 P) )\n"
  7997.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  7998.    "\n"
  7999.    "   (signature vec2\n"
  8000.    "     (parameters\n"
  8001.    "       (declare (in) isampler2DArray sampler) \n"
  8002.    "       (declare (in) vec2 P) )\n"
  8003.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8004.    "\n"
  8005.    "   (signature vec2\n"
  8006.    "     (parameters\n"
  8007.    "       (declare (in) usampler2DArray sampler) \n"
  8008.    "       (declare (in) vec2 P) )\n"
  8009.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8010.    "\n"
  8011.    "   (signature vec2\n"
  8012.    "     (parameters\n"
  8013.    "       (declare (in) samplerCubeArray sampler) \n"
  8014.    "       (declare (in) vec3 P) )\n"
  8015.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8016.    "\n"
  8017.    "   (signature vec2\n"
  8018.    "     (parameters\n"
  8019.    "       (declare (in) isamplerCubeArray sampler) \n"
  8020.    "       (declare (in) vec3 P) )\n"
  8021.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8022.    "\n"
  8023.    "   (signature vec2\n"
  8024.    "     (parameters\n"
  8025.    "       (declare (in) usamplerCubeArray sampler) \n"
  8026.    "       (declare (in) vec3 P) )\n"
  8027.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8028.    "\n"
  8029.    "   (signature vec2\n"
  8030.    "     (parameters\n"
  8031.    "       (declare (in) sampler1DShadow sampler) \n"
  8032.    "       (declare (in) float P) )\n"
  8033.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8034.    "\n"
  8035.    "   (signature vec2\n"
  8036.    "     (parameters\n"
  8037.    "       (declare (in) sampler2DShadow sampler) \n"
  8038.    "       (declare (in) vec2 P) )\n"
  8039.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8040.    "\n"
  8041.    "   (signature vec2\n"
  8042.    "     (parameters\n"
  8043.    "       (declare (in) samplerCubeShadow sampler) \n"
  8044.    "       (declare (in) vec3 P) )\n"
  8045.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8046.    "\n"
  8047.    "   (signature vec2\n"
  8048.    "     (parameters\n"
  8049.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  8050.    "       (declare (in) float P) )\n"
  8051.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8052.    "\n"
  8053.    "   (signature vec2\n"
  8054.    "     (parameters\n"
  8055.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  8056.    "       (declare (in) vec2 P) )\n"
  8057.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8058.    "\n"
  8059.    "   (signature vec2\n"
  8060.    "     (parameters\n"
  8061.    "       (declare (in) samplerCubeArrayShadow sampler) \n"
  8062.    "       (declare (in) vec3 P) )\n"
  8063.    "     ((return (lod vec2 (var_ref sampler) (var_ref P) ))))\n"
  8064.    "\n"
  8065.    "))\n"
  8066.    ""
  8067. ;
  8068. static const char builtin_textureSize[] =
  8069.    "((function textureSize\n"
  8070.    "   (signature int\n"
  8071.    "     (parameters\n"
  8072.    "       (declare (in) sampler1D sampler) \n"
  8073.    "       (declare (in) int lod) )\n"
  8074.    "     ((return (txs int (var_ref sampler) (var_ref lod) ))))\n"
  8075.    "\n"
  8076.    "   (signature int\n"
  8077.    "     (parameters\n"
  8078.    "       (declare (in) isampler1D sampler) \n"
  8079.    "       (declare (in) int lod) )\n"
  8080.    "     ((return (txs int (var_ref sampler) (var_ref lod) ))))\n"
  8081.    "\n"
  8082.    "   (signature int\n"
  8083.    "     (parameters\n"
  8084.    "       (declare (in) usampler1D sampler) \n"
  8085.    "       (declare (in) int lod) )\n"
  8086.    "     ((return (txs int (var_ref sampler) (var_ref lod) ))))\n"
  8087.    "\n"
  8088.    "   (signature ivec2\n"
  8089.    "     (parameters\n"
  8090.    "       (declare (in) sampler2D sampler) \n"
  8091.    "       (declare (in) int lod) )\n"
  8092.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8093.    "\n"
  8094.    "   (signature ivec2\n"
  8095.    "     (parameters\n"
  8096.    "       (declare (in) isampler2D sampler) \n"
  8097.    "       (declare (in) int lod) )\n"
  8098.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8099.    "\n"
  8100.    "   (signature ivec2\n"
  8101.    "     (parameters\n"
  8102.    "       (declare (in) usampler2D sampler) \n"
  8103.    "       (declare (in) int lod) )\n"
  8104.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8105.    "\n"
  8106.    "   (signature ivec3\n"
  8107.    "     (parameters\n"
  8108.    "       (declare (in) sampler3D sampler) \n"
  8109.    "       (declare (in) int lod) )\n"
  8110.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8111.    "\n"
  8112.    "   (signature ivec3\n"
  8113.    "     (parameters\n"
  8114.    "       (declare (in) isampler3D sampler) \n"
  8115.    "       (declare (in) int lod) )\n"
  8116.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8117.    "\n"
  8118.    "   (signature ivec3\n"
  8119.    "     (parameters\n"
  8120.    "       (declare (in) usampler3D sampler) \n"
  8121.    "       (declare (in) int lod) )\n"
  8122.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8123.    "\n"
  8124.    "   (signature ivec2\n"
  8125.    "     (parameters\n"
  8126.    "       (declare (in) samplerCube sampler) \n"
  8127.    "       (declare (in) int lod) )\n"
  8128.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8129.    "\n"
  8130.    "   (signature ivec2\n"
  8131.    "     (parameters\n"
  8132.    "       (declare (in) isamplerCube sampler) \n"
  8133.    "       (declare (in) int lod) )\n"
  8134.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8135.    "\n"
  8136.    "   (signature ivec2\n"
  8137.    "     (parameters\n"
  8138.    "       (declare (in) usamplerCube sampler) \n"
  8139.    "       (declare (in) int lod) )\n"
  8140.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8141.    "\n"
  8142.    "   (signature ivec2\n"
  8143.    "     (parameters\n"
  8144.    "       (declare (in) sampler1DArray sampler) \n"
  8145.    "       (declare (in) int lod) )\n"
  8146.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8147.    "\n"
  8148.    "   (signature ivec2\n"
  8149.    "     (parameters\n"
  8150.    "       (declare (in) isampler1DArray sampler) \n"
  8151.    "       (declare (in) int lod) )\n"
  8152.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8153.    "\n"
  8154.    "   (signature ivec2\n"
  8155.    "     (parameters\n"
  8156.    "       (declare (in) usampler1DArray sampler) \n"
  8157.    "       (declare (in) int lod) )\n"
  8158.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8159.    "\n"
  8160.    "   (signature ivec3\n"
  8161.    "     (parameters\n"
  8162.    "       (declare (in) sampler2DArray sampler) \n"
  8163.    "       (declare (in) int lod) )\n"
  8164.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8165.    "\n"
  8166.    "   (signature ivec3\n"
  8167.    "     (parameters\n"
  8168.    "       (declare (in) isampler2DArray sampler) \n"
  8169.    "       (declare (in) int lod) )\n"
  8170.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8171.    "\n"
  8172.    "   (signature ivec3\n"
  8173.    "     (parameters\n"
  8174.    "       (declare (in) usampler2DArray sampler) \n"
  8175.    "       (declare (in) int lod) )\n"
  8176.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8177.    "\n"
  8178.    "   (signature int\n"
  8179.    "     (parameters\n"
  8180.    "       (declare (in) sampler1DShadow sampler) \n"
  8181.    "       (declare (in) int lod) )\n"
  8182.    "     ((return (txs int (var_ref sampler) (var_ref lod) ))))\n"
  8183.    "\n"
  8184.    "   (signature ivec2\n"
  8185.    "     (parameters\n"
  8186.    "       (declare (in) sampler2DShadow sampler) \n"
  8187.    "       (declare (in) int lod) )\n"
  8188.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8189.    "\n"
  8190.    "   (signature ivec2\n"
  8191.    "     (parameters\n"
  8192.    "       (declare (in) samplerCubeShadow sampler) \n"
  8193.    "       (declare (in) int lod) )\n"
  8194.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8195.    "\n"
  8196.    "   (signature ivec2\n"
  8197.    "     (parameters\n"
  8198.    "       (declare (in) sampler1DArrayShadow sampler) \n"
  8199.    "       (declare (in) int lod) )\n"
  8200.    "     ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n"
  8201.    "\n"
  8202.    "   (signature ivec3\n"
  8203.    "     (parameters\n"
  8204.    "       (declare (in) sampler2DArrayShadow sampler) \n"
  8205.    "       (declare (in) int lod) )\n"
  8206.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8207.    "\n"
  8208.    "   (signature ivec2\n"
  8209.    "     (parameters\n"
  8210.    "       (declare (in) sampler2DRect sampler) )\n"
  8211.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8212.    "\n"
  8213.    "   (signature ivec2\n"
  8214.    "     (parameters\n"
  8215.    "       (declare (in) isampler2DRect sampler) )\n"
  8216.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8217.    "\n"
  8218.    "   (signature ivec2\n"
  8219.    "     (parameters\n"
  8220.    "       (declare (in) usampler2DRect sampler) )\n"
  8221.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8222.    "\n"
  8223.    "   (signature ivec2\n"
  8224.    "     (parameters\n"
  8225.    "       (declare (in) sampler2DRectShadow sampler) )\n"
  8226.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8227.    "\n"
  8228.    "   (signature int\n"
  8229.    "     (parameters\n"
  8230.    "       (declare (in) samplerBuffer sampler) )\n"
  8231.    "     ((return (txs int (var_ref sampler) (constant int (0)) ))))\n"
  8232.    "\n"
  8233.    "   (signature int\n"
  8234.    "     (parameters\n"
  8235.    "       (declare (in) isamplerBuffer sampler) )\n"
  8236.    "     ((return (txs int (var_ref sampler) (constant int (0)) ))))\n"
  8237.    "\n"
  8238.    "   (signature int\n"
  8239.    "     (parameters\n"
  8240.    "       (declare (in) usamplerBuffer sampler) )\n"
  8241.    "     ((return (txs int (var_ref sampler) (constant int (0)) ))))\n"
  8242.    "\n"
  8243.    "   (signature ivec3\n"
  8244.    "     (parameters\n"
  8245.    "       (declare (in) samplerCubeArray sampler) \n"
  8246.    "       (declare (in) int lod) )\n"
  8247.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8248.    "\n"
  8249.    "   (signature ivec3\n"
  8250.    "     (parameters\n"
  8251.    "       (declare (in) isamplerCubeArray sampler) \n"
  8252.    "       (declare (in) int lod) )\n"
  8253.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8254.    "\n"
  8255.    "   (signature ivec3\n"
  8256.    "     (parameters\n"
  8257.    "       (declare (in) usamplerCubeArray sampler) \n"
  8258.    "       (declare (in) int lod) )\n"
  8259.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8260.    "\n"
  8261.    "   (signature ivec3\n"
  8262.    "     (parameters\n"
  8263.    "       (declare (in) samplerCubeArrayShadow sampler) \n"
  8264.    "       (declare (in) int lod) )\n"
  8265.    "     ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n"
  8266.    "\n"
  8267.    "   (signature ivec2\n"
  8268.    "     (parameters\n"
  8269.    "       (declare (in) sampler2DMS sampler) )\n"
  8270.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8271.    "\n"
  8272.    "   (signature ivec2\n"
  8273.    "     (parameters\n"
  8274.    "       (declare (in) isampler2DMS sampler) )\n"
  8275.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8276.    "\n"
  8277.    "   (signature ivec2\n"
  8278.    "     (parameters\n"
  8279.    "       (declare (in) usampler2DMS sampler) )\n"
  8280.    "     ((return (txs ivec2 (var_ref sampler) (constant int (0)) ))))\n"
  8281.    "\n"
  8282.    "   (signature ivec3\n"
  8283.    "     (parameters\n"
  8284.    "       (declare (in) sampler2DMSArray sampler) )\n"
  8285.    "     ((return (txs ivec3 (var_ref sampler) (constant int (0)) ))))\n"
  8286.    "\n"
  8287.    "   (signature ivec3\n"
  8288.    "     (parameters\n"
  8289.    "       (declare (in) isampler2DMSArray sampler) )\n"
  8290.    "     ((return (txs ivec3 (var_ref sampler) (constant int (0)) ))))\n"
  8291.    "\n"
  8292.    "   (signature ivec3\n"
  8293.    "     (parameters\n"
  8294.    "       (declare (in) usampler2DMSArray sampler) )\n"
  8295.    "     ((return (txs ivec3 (var_ref sampler) (constant int (0)) ))))\n"
  8296.    "\n"
  8297.    "))\n"
  8298.    ""
  8299. ;
  8300. static const char builtin_transpose[] =
  8301.    "((function transpose\n"
  8302.    "   (signature mat2\n"
  8303.    "     (parameters\n"
  8304.    "       (declare (in) mat2 m))\n"
  8305.    "     ((declare () mat2 t)\n"
  8306.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8307.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8308.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8309.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8310.    "(return (var_ref t))))\n"
  8311.    "\n"
  8312.    "   (signature mat3x2\n"
  8313.    "     (parameters\n"
  8314.    "       (declare (in) mat2x3 m))\n"
  8315.    "     ((declare () mat3x2 t)\n"
  8316.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8317.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8318.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8319.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8320.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8321.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8322.    "(return (var_ref t))))\n"
  8323.    "\n"
  8324.    "   (signature mat4x2\n"
  8325.    "     (parameters\n"
  8326.    "       (declare (in) mat2x4 m))\n"
  8327.    "     ((declare () mat4x2 t)\n"
  8328.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8329.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8330.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8331.    "      (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
  8332.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8333.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8334.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8335.    "      (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
  8336.    "(return (var_ref t))))\n"
  8337.    "\n"
  8338.    "   (signature mat2x3\n"
  8339.    "     (parameters\n"
  8340.    "       (declare (in) mat3x2 m))\n"
  8341.    "     ((declare () mat2x3 t)\n"
  8342.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8343.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8344.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8345.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8346.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8347.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8348.    "(return (var_ref t))))\n"
  8349.    "\n"
  8350.    "   (signature mat3\n"
  8351.    "     (parameters\n"
  8352.    "       (declare (in) mat3 m))\n"
  8353.    "     ((declare () mat3 t)\n"
  8354.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8355.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8356.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8357.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8358.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8359.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8360.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8361.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8362.    "      (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
  8363.    "(return (var_ref t))))\n"
  8364.    "\n"
  8365.    "   (signature mat4x3\n"
  8366.    "     (parameters\n"
  8367.    "       (declare (in) mat3x4 m))\n"
  8368.    "     ((declare () mat4x3 t)\n"
  8369.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8370.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8371.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8372.    "      (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
  8373.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8374.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8375.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8376.    "      (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
  8377.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8378.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8379.    "      (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
  8380.    "      (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n"
  8381.    "(return (var_ref t))))\n"
  8382.    "\n"
  8383.    "   (signature mat2x4\n"
  8384.    "     (parameters\n"
  8385.    "       (declare (in) mat4x2 m))\n"
  8386.    "     ((declare () mat2x4 t)\n"
  8387.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8388.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8389.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8390.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8391.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8392.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8393.    "      (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
  8394.    "      (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
  8395.    "(return (var_ref t))))\n"
  8396.    "\n"
  8397.    "   (signature mat3x4\n"
  8398.    "     (parameters\n"
  8399.    "       (declare (in) mat4x3 m))\n"
  8400.    "     ((declare () mat3x4 t)\n"
  8401.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8402.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8403.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8404.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8405.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8406.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8407.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8408.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8409.    "      (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
  8410.    "      (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
  8411.    "      (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
  8412.    "      (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n"
  8413.    "(return (var_ref t))))\n"
  8414.    "\n"
  8415.    "   (signature mat4\n"
  8416.    "     (parameters\n"
  8417.    "       (declare (in) mat4 m))\n"
  8418.    "     ((declare () mat4 t)\n"
  8419.    "      (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n"
  8420.    "      (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n"
  8421.    "      (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n"
  8422.    "      (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n"
  8423.    "      (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n"
  8424.    "      (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n"
  8425.    "      (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n"
  8426.    "      (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n"
  8427.    "      (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n"
  8428.    "      (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n"
  8429.    "      (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n"
  8430.    "      (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n"
  8431.    "      (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n"
  8432.    "      (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n"
  8433.    "      (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n"
  8434.    "      (assign (w) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (3)))))\n"
  8435.    "(return (var_ref t))))\n"
  8436.    ")\n"
  8437.    "\n"
  8438.    ")\n"
  8439.    "\n"
  8440.    ""
  8441. ;
  8442. static const char builtin_trunc[] =
  8443.    "((function trunc\n"
  8444.    "   (signature float\n"
  8445.    "     (parameters\n"
  8446.    "       (declare (in) float arg0))\n"
  8447.    "     ((return (expression float trunc (var_ref arg0)))))\n"
  8448.    "\n"
  8449.    "   (signature vec2\n"
  8450.    "     (parameters\n"
  8451.    "       (declare (in) vec2 arg0))\n"
  8452.    "     ((return (expression vec2 trunc (var_ref arg0)))))\n"
  8453.    "\n"
  8454.    "   (signature vec3\n"
  8455.    "     (parameters\n"
  8456.    "       (declare (in) vec3 arg0))\n"
  8457.    "     ((return (expression vec3 trunc (var_ref arg0)))))\n"
  8458.    "\n"
  8459.    "   (signature vec4\n"
  8460.    "     (parameters\n"
  8461.    "       (declare (in) vec4 arg0))\n"
  8462.    "     ((return (expression vec4 trunc (var_ref arg0)))))\n"
  8463.    "))\n"
  8464.    ""
  8465. ;
  8466. static const char builtin_uintBitsToFloat[] =
  8467.    "((function uintBitsToFloat\n"
  8468.    "   (signature float\n"
  8469.    "     (parameters\n"
  8470.    "       (declare (in) uint arg))\n"
  8471.    "     ((return (expression float bitcast_u2f (var_ref arg)))))\n"
  8472.    "\n"
  8473.    "   (signature vec2\n"
  8474.    "     (parameters\n"
  8475.    "       (declare (in) uvec2 arg))\n"
  8476.    "     ((return (expression vec2 bitcast_u2f (var_ref arg)))))\n"
  8477.    "\n"
  8478.    "   (signature vec3\n"
  8479.    "     (parameters\n"
  8480.    "       (declare (in) uvec3 arg))\n"
  8481.    "     ((return (expression vec3 bitcast_u2f (var_ref arg)))))\n"
  8482.    "\n"
  8483.    "   (signature vec4\n"
  8484.    "     (parameters\n"
  8485.    "       (declare (in) uvec4 arg))\n"
  8486.    "     ((return (expression vec4 bitcast_u2f (var_ref arg)))))\n"
  8487.    "))\n"
  8488.    ""
  8489. ;
  8490. static const char builtin_unpackHalf2x16[] =
  8491.    "((function unpackHalf2x16\n"
  8492.    "   (signature vec2\n"
  8493.    "     (parameters\n"
  8494.    "       (declare (in) uint arg0))\n"
  8495.    "     ((return (expression vec2 unpackHalf2x16 (var_ref arg0)))))\n"
  8496.    "))\n"
  8497.    ""
  8498. ;
  8499. static const char builtin_unpackSnorm2x16[] =
  8500.    "((function unpackSnorm2x16\n"
  8501.    "   (signature vec2\n"
  8502.    "     (parameters\n"
  8503.    "       (declare (in) uint arg0))\n"
  8504.    "     ((return (expression vec2 unpackSnorm2x16 (var_ref arg0)))))\n"
  8505.    "))\n"
  8506.    ""
  8507. ;
  8508. static const char builtin_unpackSnorm4x8[] =
  8509.    "((function unpackSnorm4x8\n"
  8510.    "   (signature vec4\n"
  8511.    "     (parameters\n"
  8512.    "       (declare (in) uint arg0))\n"
  8513.    "     ((return (expression vec4 unpackSnorm4x8 (var_ref arg0)))))\n"
  8514.    "))\n"
  8515.    ""
  8516. ;
  8517. static const char builtin_unpackUnorm2x16[] =
  8518.    "((function unpackUnorm2x16\n"
  8519.    "   (signature vec2\n"
  8520.    "     (parameters\n"
  8521.    "       (declare (in) uint arg0))\n"
  8522.    "     ((return (expression vec2 unpackUnorm2x16 (var_ref arg0)))))\n"
  8523.    "))\n"
  8524.    ""
  8525. ;
  8526. static const char builtin_unpackUnorm4x8[] =
  8527.    "((function unpackUnorm4x8\n"
  8528.    "   (signature vec4\n"
  8529.    "     (parameters\n"
  8530.    "       (declare (in) uint arg0))\n"
  8531.    "     ((return (expression vec4 unpackUnorm4x8 (var_ref arg0)))))\n"
  8532.    "))\n"
  8533.    ""
  8534. ;
  8535. static const char prototypes_for_100es_frag[] =
  8536.    "(\n"
  8537.    "(function texture2D\n"
  8538.    "  (signature vec4\n"
  8539.    "    (parameters\n"
  8540.    "      (declare (in) sampler2D sampler)\n"
  8541.    "      (declare (in) vec2 coord)\n"
  8542.    "      (declare (in) float bias))\n"
  8543.    "    ()))\n"
  8544.    "(function texture2DProj\n"
  8545.    "  (signature vec4\n"
  8546.    "    (parameters\n"
  8547.    "      (declare (in) sampler2D sampler)\n"
  8548.    "      (declare (in) vec3 coord)\n"
  8549.    "      (declare (in) float bias))\n"
  8550.    "    ())\n"
  8551.    "  (signature vec4\n"
  8552.    "    (parameters\n"
  8553.    "      (declare (in) sampler2D sampler)\n"
  8554.    "      (declare (in) vec4 coord)\n"
  8555.    "      (declare (in) float bias))\n"
  8556.    "    ()))\n"
  8557.    "(function textureCube\n"
  8558.    "  (signature vec4\n"
  8559.    "    (parameters\n"
  8560.    "      (declare (in) samplerCube sampler)\n"
  8561.    "      (declare (in) vec3 coord)\n"
  8562.    "      (declare (in) float bias))\n"
  8563.    "    ())))"
  8564. ;
  8565. static const char *functions_for_100es_frag [] = {
  8566.    builtin_texture2D,
  8567.    builtin_texture2DProj,
  8568.    builtin_textureCube,
  8569. };
  8570. static const char prototypes_for_100es_glsl[] =
  8571.    "(\n"
  8572.    "(function radians\n"
  8573.    "  (signature float\n"
  8574.    "    (parameters\n"
  8575.    "      (declare (in) float degrees))\n"
  8576.    "    ())\n"
  8577.    "  (signature vec2\n"
  8578.    "    (parameters\n"
  8579.    "      (declare (in) vec2 degrees))\n"
  8580.    "    ())\n"
  8581.    "  (signature vec3\n"
  8582.    "    (parameters\n"
  8583.    "      (declare (in) vec3 degrees))\n"
  8584.    "    ())\n"
  8585.    "  (signature vec4\n"
  8586.    "    (parameters\n"
  8587.    "      (declare (in) vec4 degrees))\n"
  8588.    "    ()))\n"
  8589.    "(function degrees\n"
  8590.    "  (signature float\n"
  8591.    "    (parameters\n"
  8592.    "      (declare (in) float radians))\n"
  8593.    "    ())\n"
  8594.    "  (signature vec2\n"
  8595.    "    (parameters\n"
  8596.    "      (declare (in) vec2 radians))\n"
  8597.    "    ())\n"
  8598.    "  (signature vec3\n"
  8599.    "    (parameters\n"
  8600.    "      (declare (in) vec3 radians))\n"
  8601.    "    ())\n"
  8602.    "  (signature vec4\n"
  8603.    "    (parameters\n"
  8604.    "      (declare (in) vec4 radians))\n"
  8605.    "    ()))\n"
  8606.    "(function sin\n"
  8607.    "  (signature float\n"
  8608.    "    (parameters\n"
  8609.    "      (declare (in) float angle))\n"
  8610.    "    ())\n"
  8611.    "  (signature vec2\n"
  8612.    "    (parameters\n"
  8613.    "      (declare (in) vec2 angle))\n"
  8614.    "    ())\n"
  8615.    "  (signature vec3\n"
  8616.    "    (parameters\n"
  8617.    "      (declare (in) vec3 angle))\n"
  8618.    "    ())\n"
  8619.    "  (signature vec4\n"
  8620.    "    (parameters\n"
  8621.    "      (declare (in) vec4 angle))\n"
  8622.    "    ()))\n"
  8623.    "(function cos\n"
  8624.    "  (signature float\n"
  8625.    "    (parameters\n"
  8626.    "      (declare (in) float angle))\n"
  8627.    "    ())\n"
  8628.    "  (signature vec2\n"
  8629.    "    (parameters\n"
  8630.    "      (declare (in) vec2 angle))\n"
  8631.    "    ())\n"
  8632.    "  (signature vec3\n"
  8633.    "    (parameters\n"
  8634.    "      (declare (in) vec3 angle))\n"
  8635.    "    ())\n"
  8636.    "  (signature vec4\n"
  8637.    "    (parameters\n"
  8638.    "      (declare (in) vec4 angle))\n"
  8639.    "    ()))\n"
  8640.    "(function tan\n"
  8641.    "  (signature float\n"
  8642.    "    (parameters\n"
  8643.    "      (declare (in) float angle))\n"
  8644.    "    ())\n"
  8645.    "  (signature vec2\n"
  8646.    "    (parameters\n"
  8647.    "      (declare (in) vec2 angle))\n"
  8648.    "    ())\n"
  8649.    "  (signature vec3\n"
  8650.    "    (parameters\n"
  8651.    "      (declare (in) vec3 angle))\n"
  8652.    "    ())\n"
  8653.    "  (signature vec4\n"
  8654.    "    (parameters\n"
  8655.    "      (declare (in) vec4 angle))\n"
  8656.    "    ()))\n"
  8657.    "(function asin\n"
  8658.    "  (signature float\n"
  8659.    "    (parameters\n"
  8660.    "      (declare (in) float angle))\n"
  8661.    "    ())\n"
  8662.    "  (signature vec2\n"
  8663.    "    (parameters\n"
  8664.    "      (declare (in) vec2 angle))\n"
  8665.    "    ())\n"
  8666.    "  (signature vec3\n"
  8667.    "    (parameters\n"
  8668.    "      (declare (in) vec3 angle))\n"
  8669.    "    ())\n"
  8670.    "  (signature vec4\n"
  8671.    "    (parameters\n"
  8672.    "      (declare (in) vec4 angle))\n"
  8673.    "    ()))\n"
  8674.    "(function acos\n"
  8675.    "  (signature float\n"
  8676.    "    (parameters\n"
  8677.    "      (declare (in) float angle))\n"
  8678.    "    ())\n"
  8679.    "  (signature vec2\n"
  8680.    "    (parameters\n"
  8681.    "      (declare (in) vec2 angle))\n"
  8682.    "    ())\n"
  8683.    "  (signature vec3\n"
  8684.    "    (parameters\n"
  8685.    "      (declare (in) vec3 angle))\n"
  8686.    "    ())\n"
  8687.    "  (signature vec4\n"
  8688.    "    (parameters\n"
  8689.    "      (declare (in) vec4 angle))\n"
  8690.    "    ()))\n"
  8691.    "(function atan\n"
  8692.    "  (signature float\n"
  8693.    "    (parameters\n"
  8694.    "      (declare (in) float y)\n"
  8695.    "      (declare (in) float x))\n"
  8696.    "    ())\n"
  8697.    "  (signature vec2\n"
  8698.    "    (parameters\n"
  8699.    "      (declare (in) vec2 y)\n"
  8700.    "      (declare (in) vec2 x))\n"
  8701.    "    ())\n"
  8702.    "  (signature vec3\n"
  8703.    "    (parameters\n"
  8704.    "      (declare (in) vec3 y)\n"
  8705.    "      (declare (in) vec3 x))\n"
  8706.    "    ())\n"
  8707.    "  (signature vec4\n"
  8708.    "    (parameters\n"
  8709.    "      (declare (in) vec4 y)\n"
  8710.    "      (declare (in) vec4 x))\n"
  8711.    "    ())\n"
  8712.    "  (signature float\n"
  8713.    "    (parameters\n"
  8714.    "      (declare (in) float y_over_x))\n"
  8715.    "    ())\n"
  8716.    "  (signature vec2\n"
  8717.    "    (parameters\n"
  8718.    "      (declare (in) vec2 y_over_x))\n"
  8719.    "    ())\n"
  8720.    "  (signature vec3\n"
  8721.    "    (parameters\n"
  8722.    "      (declare (in) vec3 y_over_x))\n"
  8723.    "    ())\n"
  8724.    "  (signature vec4\n"
  8725.    "    (parameters\n"
  8726.    "      (declare (in) vec4 y_over_x))\n"
  8727.    "    ()))\n"
  8728.    "(function pow\n"
  8729.    "  (signature float\n"
  8730.    "    (parameters\n"
  8731.    "      (declare (in) float x)\n"
  8732.    "      (declare (in) float y))\n"
  8733.    "    ())\n"
  8734.    "  (signature vec2\n"
  8735.    "    (parameters\n"
  8736.    "      (declare (in) vec2 x)\n"
  8737.    "      (declare (in) vec2 y))\n"
  8738.    "    ())\n"
  8739.    "  (signature vec3\n"
  8740.    "    (parameters\n"
  8741.    "      (declare (in) vec3 x)\n"
  8742.    "      (declare (in) vec3 y))\n"
  8743.    "    ())\n"
  8744.    "  (signature vec4\n"
  8745.    "    (parameters\n"
  8746.    "      (declare (in) vec4 x)\n"
  8747.    "      (declare (in) vec4 y))\n"
  8748.    "    ()))\n"
  8749.    "(function exp\n"
  8750.    "  (signature float\n"
  8751.    "    (parameters\n"
  8752.    "      (declare (in) float x))\n"
  8753.    "    ())\n"
  8754.    "  (signature vec2\n"
  8755.    "    (parameters\n"
  8756.    "      (declare (in) vec2 x))\n"
  8757.    "    ())\n"
  8758.    "  (signature vec3\n"
  8759.    "    (parameters\n"
  8760.    "      (declare (in) vec3 x))\n"
  8761.    "    ())\n"
  8762.    "  (signature vec4\n"
  8763.    "    (parameters\n"
  8764.    "      (declare (in) vec4 x))\n"
  8765.    "    ()))\n"
  8766.    "(function log\n"
  8767.    "  (signature float\n"
  8768.    "    (parameters\n"
  8769.    "      (declare (in) float x))\n"
  8770.    "    ())\n"
  8771.    "  (signature vec2\n"
  8772.    "    (parameters\n"
  8773.    "      (declare (in) vec2 x))\n"
  8774.    "    ())\n"
  8775.    "  (signature vec3\n"
  8776.    "    (parameters\n"
  8777.    "      (declare (in) vec3 x))\n"
  8778.    "    ())\n"
  8779.    "  (signature vec4\n"
  8780.    "    (parameters\n"
  8781.    "      (declare (in) vec4 x))\n"
  8782.    "    ()))\n"
  8783.    "(function exp2\n"
  8784.    "  (signature float\n"
  8785.    "    (parameters\n"
  8786.    "      (declare (in) float x))\n"
  8787.    "    ())\n"
  8788.    "  (signature vec2\n"
  8789.    "    (parameters\n"
  8790.    "      (declare (in) vec2 x))\n"
  8791.    "    ())\n"
  8792.    "  (signature vec3\n"
  8793.    "    (parameters\n"
  8794.    "      (declare (in) vec3 x))\n"
  8795.    "    ())\n"
  8796.    "  (signature vec4\n"
  8797.    "    (parameters\n"
  8798.    "      (declare (in) vec4 x))\n"
  8799.    "    ()))\n"
  8800.    "(function log2\n"
  8801.    "  (signature float\n"
  8802.    "    (parameters\n"
  8803.    "      (declare (in) float x))\n"
  8804.    "    ())\n"
  8805.    "  (signature vec2\n"
  8806.    "    (parameters\n"
  8807.    "      (declare (in) vec2 x))\n"
  8808.    "    ())\n"
  8809.    "  (signature vec3\n"
  8810.    "    (parameters\n"
  8811.    "      (declare (in) vec3 x))\n"
  8812.    "    ())\n"
  8813.    "  (signature vec4\n"
  8814.    "    (parameters\n"
  8815.    "      (declare (in) vec4 x))\n"
  8816.    "    ()))\n"
  8817.    "(function sqrt\n"
  8818.    "  (signature float\n"
  8819.    "    (parameters\n"
  8820.    "      (declare (in) float x))\n"
  8821.    "    ())\n"
  8822.    "  (signature vec2\n"
  8823.    "    (parameters\n"
  8824.    "      (declare (in) vec2 x))\n"
  8825.    "    ())\n"
  8826.    "  (signature vec3\n"
  8827.    "    (parameters\n"
  8828.    "      (declare (in) vec3 x))\n"
  8829.    "    ())\n"
  8830.    "  (signature vec4\n"
  8831.    "    (parameters\n"
  8832.    "      (declare (in) vec4 x))\n"
  8833.    "    ()))\n"
  8834.    "(function inversesqrt\n"
  8835.    "  (signature float\n"
  8836.    "    (parameters\n"
  8837.    "      (declare (in) float x))\n"
  8838.    "    ())\n"
  8839.    "  (signature vec2\n"
  8840.    "    (parameters\n"
  8841.    "      (declare (in) vec2 x))\n"
  8842.    "    ())\n"
  8843.    "  (signature vec3\n"
  8844.    "    (parameters\n"
  8845.    "      (declare (in) vec3 x))\n"
  8846.    "    ())\n"
  8847.    "  (signature vec4\n"
  8848.    "    (parameters\n"
  8849.    "      (declare (in) vec4 x))\n"
  8850.    "    ()))\n"
  8851.    "(function abs\n"
  8852.    "  (signature float\n"
  8853.    "    (parameters\n"
  8854.    "      (declare (in) float x))\n"
  8855.    "    ())\n"
  8856.    "  (signature vec2\n"
  8857.    "    (parameters\n"
  8858.    "      (declare (in) vec2 x))\n"
  8859.    "    ())\n"
  8860.    "  (signature vec3\n"
  8861.    "    (parameters\n"
  8862.    "      (declare (in) vec3 x))\n"
  8863.    "    ())\n"
  8864.    "  (signature vec4\n"
  8865.    "    (parameters\n"
  8866.    "      (declare (in) vec4 x))\n"
  8867.    "    ()))\n"
  8868.    "(function sign\n"
  8869.    "  (signature float\n"
  8870.    "    (parameters\n"
  8871.    "      (declare (in) float x))\n"
  8872.    "    ())\n"
  8873.    "  (signature vec2\n"
  8874.    "    (parameters\n"
  8875.    "      (declare (in) vec2 x))\n"
  8876.    "    ())\n"
  8877.    "  (signature vec3\n"
  8878.    "    (parameters\n"
  8879.    "      (declare (in) vec3 x))\n"
  8880.    "    ())\n"
  8881.    "  (signature vec4\n"
  8882.    "    (parameters\n"
  8883.    "      (declare (in) vec4 x))\n"
  8884.    "    ()))\n"
  8885.    "(function floor\n"
  8886.    "  (signature float\n"
  8887.    "    (parameters\n"
  8888.    "      (declare (in) float x))\n"
  8889.    "    ())\n"
  8890.    "  (signature vec2\n"
  8891.    "    (parameters\n"
  8892.    "      (declare (in) vec2 x))\n"
  8893.    "    ())\n"
  8894.    "  (signature vec3\n"
  8895.    "    (parameters\n"
  8896.    "      (declare (in) vec3 x))\n"
  8897.    "    ())\n"
  8898.    "  (signature vec4\n"
  8899.    "    (parameters\n"
  8900.    "      (declare (in) vec4 x))\n"
  8901.    "    ()))\n"
  8902.    "(function ceil\n"
  8903.    "  (signature float\n"
  8904.    "    (parameters\n"
  8905.    "      (declare (in) float x))\n"
  8906.    "    ())\n"
  8907.    "  (signature vec2\n"
  8908.    "    (parameters\n"
  8909.    "      (declare (in) vec2 x))\n"
  8910.    "    ())\n"
  8911.    "  (signature vec3\n"
  8912.    "    (parameters\n"
  8913.    "      (declare (in) vec3 x))\n"
  8914.    "    ())\n"
  8915.    "  (signature vec4\n"
  8916.    "    (parameters\n"
  8917.    "      (declare (in) vec4 x))\n"
  8918.    "    ()))\n"
  8919.    "(function fract\n"
  8920.    "  (signature float\n"
  8921.    "    (parameters\n"
  8922.    "      (declare (in) float x))\n"
  8923.    "    ())\n"
  8924.    "  (signature vec2\n"
  8925.    "    (parameters\n"
  8926.    "      (declare (in) vec2 x))\n"
  8927.    "    ())\n"
  8928.    "  (signature vec3\n"
  8929.    "    (parameters\n"
  8930.    "      (declare (in) vec3 x))\n"
  8931.    "    ())\n"
  8932.    "  (signature vec4\n"
  8933.    "    (parameters\n"
  8934.    "      (declare (in) vec4 x))\n"
  8935.    "    ()))\n"
  8936.    "(function mod\n"
  8937.    "  (signature float\n"
  8938.    "    (parameters\n"
  8939.    "      (declare (in) float x)\n"
  8940.    "      (declare (in) float y))\n"
  8941.    "    ())\n"
  8942.    "  (signature vec2\n"
  8943.    "    (parameters\n"
  8944.    "      (declare (in) vec2 x)\n"
  8945.    "      (declare (in) float y))\n"
  8946.    "    ())\n"
  8947.    "  (signature vec3\n"
  8948.    "    (parameters\n"
  8949.    "      (declare (in) vec3 x)\n"
  8950.    "      (declare (in) float y))\n"
  8951.    "    ())\n"
  8952.    "  (signature vec4\n"
  8953.    "    (parameters\n"
  8954.    "      (declare (in) vec4 x)\n"
  8955.    "      (declare (in) float y))\n"
  8956.    "    ())\n"
  8957.    "  (signature vec2\n"
  8958.    "    (parameters\n"
  8959.    "      (declare (in) vec2 x)\n"
  8960.    "      (declare (in) vec2 y))\n"
  8961.    "    ())\n"
  8962.    "  (signature vec3\n"
  8963.    "    (parameters\n"
  8964.    "      (declare (in) vec3 x)\n"
  8965.    "      (declare (in) vec3 y))\n"
  8966.    "    ())\n"
  8967.    "  (signature vec4\n"
  8968.    "    (parameters\n"
  8969.    "      (declare (in) vec4 x)\n"
  8970.    "      (declare (in) vec4 y))\n"
  8971.    "    ()))\n"
  8972.    "(function min\n"
  8973.    "  (signature float\n"
  8974.    "    (parameters\n"
  8975.    "      (declare (in) float x)\n"
  8976.    "      (declare (in) float y))\n"
  8977.    "    ())\n"
  8978.    "  (signature vec2\n"
  8979.    "    (parameters\n"
  8980.    "      (declare (in) vec2 x)\n"
  8981.    "      (declare (in) vec2 y))\n"
  8982.    "    ())\n"
  8983.    "  (signature vec3\n"
  8984.    "    (parameters\n"
  8985.    "      (declare (in) vec3 x)\n"
  8986.    "      (declare (in) vec3 y))\n"
  8987.    "    ())\n"
  8988.    "  (signature vec4\n"
  8989.    "    (parameters\n"
  8990.    "      (declare (in) vec4 x)\n"
  8991.    "      (declare (in) vec4 y))\n"
  8992.    "    ())\n"
  8993.    "  (signature vec2\n"
  8994.    "    (parameters\n"
  8995.    "      (declare (in) vec2 x)\n"
  8996.    "      (declare (in) float y))\n"
  8997.    "    ())\n"
  8998.    "  (signature vec3\n"
  8999.    "    (parameters\n"
  9000.    "      (declare (in) vec3 x)\n"
  9001.    "      (declare (in) float y))\n"
  9002.    "    ())\n"
  9003.    "  (signature vec4\n"
  9004.    "    (parameters\n"
  9005.    "      (declare (in) vec4 x)\n"
  9006.    "      (declare (in) float y))\n"
  9007.    "    ()))\n"
  9008.    "(function max\n"
  9009.    "  (signature float\n"
  9010.    "    (parameters\n"
  9011.    "      (declare (in) float x)\n"
  9012.    "      (declare (in) float y))\n"
  9013.    "    ())\n"
  9014.    "  (signature vec2\n"
  9015.    "    (parameters\n"
  9016.    "      (declare (in) vec2 x)\n"
  9017.    "      (declare (in) vec2 y))\n"
  9018.    "    ())\n"
  9019.    "  (signature vec3\n"
  9020.    "    (parameters\n"
  9021.    "      (declare (in) vec3 x)\n"
  9022.    "      (declare (in) vec3 y))\n"
  9023.    "    ())\n"
  9024.    "  (signature vec4\n"
  9025.    "    (parameters\n"
  9026.    "      (declare (in) vec4 x)\n"
  9027.    "      (declare (in) vec4 y))\n"
  9028.    "    ())\n"
  9029.    "  (signature vec2\n"
  9030.    "    (parameters\n"
  9031.    "      (declare (in) vec2 x)\n"
  9032.    "      (declare (in) float y))\n"
  9033.    "    ())\n"
  9034.    "  (signature vec3\n"
  9035.    "    (parameters\n"
  9036.    "      (declare (in) vec3 x)\n"
  9037.    "      (declare (in) float y))\n"
  9038.    "    ())\n"
  9039.    "  (signature vec4\n"
  9040.    "    (parameters\n"
  9041.    "      (declare (in) vec4 x)\n"
  9042.    "      (declare (in) float y))\n"
  9043.    "    ()))\n"
  9044.    "(function clamp\n"
  9045.    "  (signature float\n"
  9046.    "    (parameters\n"
  9047.    "      (declare (in) float x)\n"
  9048.    "      (declare (in) float minVal)\n"
  9049.    "      (declare (in) float maxVal))\n"
  9050.    "    ())\n"
  9051.    "  (signature vec2\n"
  9052.    "    (parameters\n"
  9053.    "      (declare (in) vec2 x)\n"
  9054.    "      (declare (in) vec2 minVal)\n"
  9055.    "      (declare (in) vec2 maxVal))\n"
  9056.    "    ())\n"
  9057.    "  (signature vec3\n"
  9058.    "    (parameters\n"
  9059.    "      (declare (in) vec3 x)\n"
  9060.    "      (declare (in) vec3 minVal)\n"
  9061.    "      (declare (in) vec3 maxVal))\n"
  9062.    "    ())\n"
  9063.    "  (signature vec4\n"
  9064.    "    (parameters\n"
  9065.    "      (declare (in) vec4 x)\n"
  9066.    "      (declare (in) vec4 minVal)\n"
  9067.    "      (declare (in) vec4 maxVal))\n"
  9068.    "    ())\n"
  9069.    "  (signature vec2\n"
  9070.    "    (parameters\n"
  9071.    "      (declare (in) vec2 x)\n"
  9072.    "      (declare (in) float minVal)\n"
  9073.    "      (declare (in) float maxVal))\n"
  9074.    "    ())\n"
  9075.    "  (signature vec3\n"
  9076.    "    (parameters\n"
  9077.    "      (declare (in) vec3 x)\n"
  9078.    "      (declare (in) float minVal)\n"
  9079.    "      (declare (in) float maxVal))\n"
  9080.    "    ())\n"
  9081.    "  (signature vec4\n"
  9082.    "    (parameters\n"
  9083.    "      (declare (in) vec4 x)\n"
  9084.    "      (declare (in) float minVal)\n"
  9085.    "      (declare (in) float maxVal))\n"
  9086.    "    ()))\n"
  9087.    "(function mix\n"
  9088.    "  (signature float\n"
  9089.    "    (parameters\n"
  9090.    "      (declare (in) float x)\n"
  9091.    "      (declare (in) float y)\n"
  9092.    "      (declare (in) float a))\n"
  9093.    "    ())\n"
  9094.    "  (signature vec2\n"
  9095.    "    (parameters\n"
  9096.    "      (declare (in) vec2 x)\n"
  9097.    "      (declare (in) vec2 y)\n"
  9098.    "      (declare (in) vec2 a))\n"
  9099.    "    ())\n"
  9100.    "  (signature vec3\n"
  9101.    "    (parameters\n"
  9102.    "      (declare (in) vec3 x)\n"
  9103.    "      (declare (in) vec3 y)\n"
  9104.    "      (declare (in) vec3 a))\n"
  9105.    "    ())\n"
  9106.    "  (signature vec4\n"
  9107.    "    (parameters\n"
  9108.    "      (declare (in) vec4 x)\n"
  9109.    "      (declare (in) vec4 y)\n"
  9110.    "      (declare (in) vec4 a))\n"
  9111.    "    ())\n"
  9112.    "  (signature vec2\n"
  9113.    "    (parameters\n"
  9114.    "      (declare (in) vec2 x)\n"
  9115.    "      (declare (in) vec2 y)\n"
  9116.    "      (declare (in) float a))\n"
  9117.    "    ())\n"
  9118.    "  (signature vec3\n"
  9119.    "    (parameters\n"
  9120.    "      (declare (in) vec3 x)\n"
  9121.    "      (declare (in) vec3 y)\n"
  9122.    "      (declare (in) float a))\n"
  9123.    "    ())\n"
  9124.    "  (signature vec4\n"
  9125.    "    (parameters\n"
  9126.    "      (declare (in) vec4 x)\n"
  9127.    "      (declare (in) vec4 y)\n"
  9128.    "      (declare (in) float a))\n"
  9129.    "    ()))\n"
  9130.    "(function step\n"
  9131.    "  (signature float\n"
  9132.    "    (parameters\n"
  9133.    "      (declare (in) float edge)\n"
  9134.    "      (declare (in) float x))\n"
  9135.    "    ())\n"
  9136.    "  (signature vec2\n"
  9137.    "    (parameters\n"
  9138.    "      (declare (in) vec2 edge)\n"
  9139.    "      (declare (in) vec2 x))\n"
  9140.    "    ())\n"
  9141.    "  (signature vec3\n"
  9142.    "    (parameters\n"
  9143.    "      (declare (in) vec3 edge)\n"
  9144.    "      (declare (in) vec3 x))\n"
  9145.    "    ())\n"
  9146.    "  (signature vec4\n"
  9147.    "    (parameters\n"
  9148.    "      (declare (in) vec4 edge)\n"
  9149.    "      (declare (in) vec4 x))\n"
  9150.    "    ())\n"
  9151.    "  (signature vec2\n"
  9152.    "    (parameters\n"
  9153.    "      (declare (in) float edge)\n"
  9154.    "      (declare (in) vec2 x))\n"
  9155.    "    ())\n"
  9156.    "  (signature vec3\n"
  9157.    "    (parameters\n"
  9158.    "      (declare (in) float edge)\n"
  9159.    "      (declare (in) vec3 x))\n"
  9160.    "    ())\n"
  9161.    "  (signature vec4\n"
  9162.    "    (parameters\n"
  9163.    "      (declare (in) float edge)\n"
  9164.    "      (declare (in) vec4 x))\n"
  9165.    "    ()))\n"
  9166.    "(function smoothstep\n"
  9167.    "  (signature float\n"
  9168.    "    (parameters\n"
  9169.    "      (declare (in) float edge0)\n"
  9170.    "      (declare (in) float edge1)\n"
  9171.    "      (declare (in) float x))\n"
  9172.    "    ())\n"
  9173.    "  (signature vec2\n"
  9174.    "    (parameters\n"
  9175.    "      (declare (in) vec2 edge0)\n"
  9176.    "      (declare (in) vec2 edge1)\n"
  9177.    "      (declare (in) vec2 x))\n"
  9178.    "    ())\n"
  9179.    "  (signature vec3\n"
  9180.    "    (parameters\n"
  9181.    "      (declare (in) vec3 edge0)\n"
  9182.    "      (declare (in) vec3 edge1)\n"
  9183.    "      (declare (in) vec3 x))\n"
  9184.    "    ())\n"
  9185.    "  (signature vec4\n"
  9186.    "    (parameters\n"
  9187.    "      (declare (in) vec4 edge0)\n"
  9188.    "      (declare (in) vec4 edge1)\n"
  9189.    "      (declare (in) vec4 x))\n"
  9190.    "    ())\n"
  9191.    "  (signature vec2\n"
  9192.    "    (parameters\n"
  9193.    "      (declare (in) float edge0)\n"
  9194.    "      (declare (in) float edge1)\n"
  9195.    "      (declare (in) vec2 x))\n"
  9196.    "    ())\n"
  9197.    "  (signature vec3\n"
  9198.    "    (parameters\n"
  9199.    "      (declare (in) float edge0)\n"
  9200.    "      (declare (in) float edge1)\n"
  9201.    "      (declare (in) vec3 x))\n"
  9202.    "    ())\n"
  9203.    "  (signature vec4\n"
  9204.    "    (parameters\n"
  9205.    "      (declare (in) float edge0)\n"
  9206.    "      (declare (in) float edge1)\n"
  9207.    "      (declare (in) vec4 x))\n"
  9208.    "    ()))\n"
  9209.    "(function length\n"
  9210.    "  (signature float\n"
  9211.    "    (parameters\n"
  9212.    "      (declare (in) float x))\n"
  9213.    "    ())\n"
  9214.    "  (signature float\n"
  9215.    "    (parameters\n"
  9216.    "      (declare (in) vec2 x))\n"
  9217.    "    ())\n"
  9218.    "  (signature float\n"
  9219.    "    (parameters\n"
  9220.    "      (declare (in) vec3 x))\n"
  9221.    "    ())\n"
  9222.    "  (signature float\n"
  9223.    "    (parameters\n"
  9224.    "      (declare (in) vec4 x))\n"
  9225.    "    ()))\n"
  9226.    "(function distance\n"
  9227.    "  (signature float\n"
  9228.    "    (parameters\n"
  9229.    "      (declare (in) float p0)\n"
  9230.    "      (declare (in) float p1))\n"
  9231.    "    ())\n"
  9232.    "  (signature float\n"
  9233.    "    (parameters\n"
  9234.    "      (declare (in) vec2 p0)\n"
  9235.    "      (declare (in) vec2 p1))\n"
  9236.    "    ())\n"
  9237.    "  (signature float\n"
  9238.    "    (parameters\n"
  9239.    "      (declare (in) vec3 p0)\n"
  9240.    "      (declare (in) vec3 p1))\n"
  9241.    "    ())\n"
  9242.    "  (signature float\n"
  9243.    "    (parameters\n"
  9244.    "      (declare (in) vec4 p0)\n"
  9245.    "      (declare (in) vec4 p1))\n"
  9246.    "    ()))\n"
  9247.    "(function dot\n"
  9248.    "  (signature float\n"
  9249.    "    (parameters\n"
  9250.    "      (declare (in) float x)\n"
  9251.    "      (declare (in) float y))\n"
  9252.    "    ())\n"
  9253.    "  (signature float\n"
  9254.    "    (parameters\n"
  9255.    "      (declare (in) vec2 x)\n"
  9256.    "      (declare (in) vec2 y))\n"
  9257.    "    ())\n"
  9258.    "  (signature float\n"
  9259.    "    (parameters\n"
  9260.    "      (declare (in) vec3 x)\n"
  9261.    "      (declare (in) vec3 y))\n"
  9262.    "    ())\n"
  9263.    "  (signature float\n"
  9264.    "    (parameters\n"
  9265.    "      (declare (in) vec4 x)\n"
  9266.    "      (declare (in) vec4 y))\n"
  9267.    "    ()))\n"
  9268.    "(function cross\n"
  9269.    "  (signature vec3\n"
  9270.    "    (parameters\n"
  9271.    "      (declare (in) vec3 x)\n"
  9272.    "      (declare (in) vec3 y))\n"
  9273.    "    ()))\n"
  9274.    "(function normalize\n"
  9275.    "  (signature float\n"
  9276.    "    (parameters\n"
  9277.    "      (declare (in) float x))\n"
  9278.    "    ())\n"
  9279.    "  (signature vec2\n"
  9280.    "    (parameters\n"
  9281.    "      (declare (in) vec2 x))\n"
  9282.    "    ())\n"
  9283.    "  (signature vec3\n"
  9284.    "    (parameters\n"
  9285.    "      (declare (in) vec3 x))\n"
  9286.    "    ())\n"
  9287.    "  (signature vec4\n"
  9288.    "    (parameters\n"
  9289.    "      (declare (in) vec4 x))\n"
  9290.    "    ()))\n"
  9291.    "(function faceforward\n"
  9292.    "  (signature float\n"
  9293.    "    (parameters\n"
  9294.    "      (declare (in) float N)\n"
  9295.    "      (declare (in) float I)\n"
  9296.    "      (declare (in) float Nref))\n"
  9297.    "    ())\n"
  9298.    "  (signature vec2\n"
  9299.    "    (parameters\n"
  9300.    "      (declare (in) vec2 N)\n"
  9301.    "      (declare (in) vec2 I)\n"
  9302.    "      (declare (in) vec2 Nref))\n"
  9303.    "    ())\n"
  9304.    "  (signature vec3\n"
  9305.    "    (parameters\n"
  9306.    "      (declare (in) vec3 N)\n"
  9307.    "      (declare (in) vec3 I)\n"
  9308.    "      (declare (in) vec3 Nref))\n"
  9309.    "    ())\n"
  9310.    "  (signature vec4\n"
  9311.    "    (parameters\n"
  9312.    "      (declare (in) vec4 N)\n"
  9313.    "      (declare (in) vec4 I)\n"
  9314.    "      (declare (in) vec4 Nref))\n"
  9315.    "    ()))\n"
  9316.    "(function reflect\n"
  9317.    "  (signature float\n"
  9318.    "    (parameters\n"
  9319.    "      (declare (in) float I)\n"
  9320.    "      (declare (in) float N))\n"
  9321.    "    ())\n"
  9322.    "  (signature vec2\n"
  9323.    "    (parameters\n"
  9324.    "      (declare (in) vec2 I)\n"
  9325.    "      (declare (in) vec2 N))\n"
  9326.    "    ())\n"
  9327.    "  (signature vec3\n"
  9328.    "    (parameters\n"
  9329.    "      (declare (in) vec3 I)\n"
  9330.    "      (declare (in) vec3 N))\n"
  9331.    "    ())\n"
  9332.    "  (signature vec4\n"
  9333.    "    (parameters\n"
  9334.    "      (declare (in) vec4 I)\n"
  9335.    "      (declare (in) vec4 N))\n"
  9336.    "    ()))\n"
  9337.    "(function refract\n"
  9338.    "  (signature float\n"
  9339.    "    (parameters\n"
  9340.    "      (declare (in) float I)\n"
  9341.    "      (declare (in) float N)\n"
  9342.    "      (declare (in) float eta))\n"
  9343.    "    ())\n"
  9344.    "  (signature vec2\n"
  9345.    "    (parameters\n"
  9346.    "      (declare (in) vec2 I)\n"
  9347.    "      (declare (in) vec2 N)\n"
  9348.    "      (declare (in) float eta))\n"
  9349.    "    ())\n"
  9350.    "  (signature vec3\n"
  9351.    "    (parameters\n"
  9352.    "      (declare (in) vec3 I)\n"
  9353.    "      (declare (in) vec3 N)\n"
  9354.    "      (declare (in) float eta))\n"
  9355.    "    ())\n"
  9356.    "  (signature vec4\n"
  9357.    "    (parameters\n"
  9358.    "      (declare (in) vec4 I)\n"
  9359.    "      (declare (in) vec4 N)\n"
  9360.    "      (declare (in) float eta))\n"
  9361.    "    ()))\n"
  9362.    "(function matrixCompMult\n"
  9363.    "  (signature mat2\n"
  9364.    "    (parameters\n"
  9365.    "      (declare (in) mat2 x)\n"
  9366.    "      (declare (in) mat2 y))\n"
  9367.    "    ())\n"
  9368.    "  (signature mat3\n"
  9369.    "    (parameters\n"
  9370.    "      (declare (in) mat3 x)\n"
  9371.    "      (declare (in) mat3 y))\n"
  9372.    "    ())\n"
  9373.    "  (signature mat4\n"
  9374.    "    (parameters\n"
  9375.    "      (declare (in) mat4 x)\n"
  9376.    "      (declare (in) mat4 y))\n"
  9377.    "    ()))\n"
  9378.    "(function lessThan\n"
  9379.    "  (signature bvec2\n"
  9380.    "    (parameters\n"
  9381.    "      (declare (in) vec2 x)\n"
  9382.    "      (declare (in) vec2 y))\n"
  9383.    "    ())\n"
  9384.    "  (signature bvec3\n"
  9385.    "    (parameters\n"
  9386.    "      (declare (in) vec3 x)\n"
  9387.    "      (declare (in) vec3 y))\n"
  9388.    "    ())\n"
  9389.    "  (signature bvec4\n"
  9390.    "    (parameters\n"
  9391.    "      (declare (in) vec4 x)\n"
  9392.    "      (declare (in) vec4 y))\n"
  9393.    "    ())\n"
  9394.    "  (signature bvec2\n"
  9395.    "    (parameters\n"
  9396.    "      (declare (in) ivec2 x)\n"
  9397.    "      (declare (in) ivec2 y))\n"
  9398.    "    ())\n"
  9399.    "  (signature bvec3\n"
  9400.    "    (parameters\n"
  9401.    "      (declare (in) ivec3 x)\n"
  9402.    "      (declare (in) ivec3 y))\n"
  9403.    "    ())\n"
  9404.    "  (signature bvec4\n"
  9405.    "    (parameters\n"
  9406.    "      (declare (in) ivec4 x)\n"
  9407.    "      (declare (in) ivec4 y))\n"
  9408.    "    ()))\n"
  9409.    "(function lessThanEqual\n"
  9410.    "  (signature bvec2\n"
  9411.    "    (parameters\n"
  9412.    "      (declare (in) vec2 x)\n"
  9413.    "      (declare (in) vec2 y))\n"
  9414.    "    ())\n"
  9415.    "  (signature bvec3\n"
  9416.    "    (parameters\n"
  9417.    "      (declare (in) vec3 x)\n"
  9418.    "      (declare (in) vec3 y))\n"
  9419.    "    ())\n"
  9420.    "  (signature bvec4\n"
  9421.    "    (parameters\n"
  9422.    "      (declare (in) vec4 x)\n"
  9423.    "      (declare (in) vec4 y))\n"
  9424.    "    ())\n"
  9425.    "  (signature bvec2\n"
  9426.    "    (parameters\n"
  9427.    "      (declare (in) ivec2 x)\n"
  9428.    "      (declare (in) ivec2 y))\n"
  9429.    "    ())\n"
  9430.    "  (signature bvec3\n"
  9431.    "    (parameters\n"
  9432.    "      (declare (in) ivec3 x)\n"
  9433.    "      (declare (in) ivec3 y))\n"
  9434.    "    ())\n"
  9435.    "  (signature bvec4\n"
  9436.    "    (parameters\n"
  9437.    "      (declare (in) ivec4 x)\n"
  9438.    "      (declare (in) ivec4 y))\n"
  9439.    "    ()))\n"
  9440.    "(function greaterThan\n"
  9441.    "  (signature bvec2\n"
  9442.    "    (parameters\n"
  9443.    "      (declare (in) vec2 x)\n"
  9444.    "      (declare (in) vec2 y))\n"
  9445.    "    ())\n"
  9446.    "  (signature bvec3\n"
  9447.    "    (parameters\n"
  9448.    "      (declare (in) vec3 x)\n"
  9449.    "      (declare (in) vec3 y))\n"
  9450.    "    ())\n"
  9451.    "  (signature bvec4\n"
  9452.    "    (parameters\n"
  9453.    "      (declare (in) vec4 x)\n"
  9454.    "      (declare (in) vec4 y))\n"
  9455.    "    ())\n"
  9456.    "  (signature bvec2\n"
  9457.    "    (parameters\n"
  9458.    "      (declare (in) ivec2 x)\n"
  9459.    "      (declare (in) ivec2 y))\n"
  9460.    "    ())\n"
  9461.    "  (signature bvec3\n"
  9462.    "    (parameters\n"
  9463.    "      (declare (in) ivec3 x)\n"
  9464.    "      (declare (in) ivec3 y))\n"
  9465.    "    ())\n"
  9466.    "  (signature bvec4\n"
  9467.    "    (parameters\n"
  9468.    "      (declare (in) ivec4 x)\n"
  9469.    "      (declare (in) ivec4 y))\n"
  9470.    "    ()))\n"
  9471.    "(function greaterThanEqual\n"
  9472.    "  (signature bvec2\n"
  9473.    "    (parameters\n"
  9474.    "      (declare (in) vec2 x)\n"
  9475.    "      (declare (in) vec2 y))\n"
  9476.    "    ())\n"
  9477.    "  (signature bvec3\n"
  9478.    "    (parameters\n"
  9479.    "      (declare (in) vec3 x)\n"
  9480.    "      (declare (in) vec3 y))\n"
  9481.    "    ())\n"
  9482.    "  (signature bvec4\n"
  9483.    "    (parameters\n"
  9484.    "      (declare (in) vec4 x)\n"
  9485.    "      (declare (in) vec4 y))\n"
  9486.    "    ())\n"
  9487.    "  (signature bvec2\n"
  9488.    "    (parameters\n"
  9489.    "      (declare (in) ivec2 x)\n"
  9490.    "      (declare (in) ivec2 y))\n"
  9491.    "    ())\n"
  9492.    "  (signature bvec3\n"
  9493.    "    (parameters\n"
  9494.    "      (declare (in) ivec3 x)\n"
  9495.    "      (declare (in) ivec3 y))\n"
  9496.    "    ())\n"
  9497.    "  (signature bvec4\n"
  9498.    "    (parameters\n"
  9499.    "      (declare (in) ivec4 x)\n"
  9500.    "      (declare (in) ivec4 y))\n"
  9501.    "    ()))\n"
  9502.    "(function equal\n"
  9503.    "  (signature bvec2\n"
  9504.    "    (parameters\n"
  9505.    "      (declare (in) vec2 x)\n"
  9506.    "      (declare (in) vec2 y))\n"
  9507.    "    ())\n"
  9508.    "  (signature bvec3\n"
  9509.    "    (parameters\n"
  9510.    "      (declare (in) vec3 x)\n"
  9511.    "      (declare (in) vec3 y))\n"
  9512.    "    ())\n"
  9513.    "  (signature bvec4\n"
  9514.    "    (parameters\n"
  9515.    "      (declare (in) vec4 x)\n"
  9516.    "      (declare (in) vec4 y))\n"
  9517.    "    ())\n"
  9518.    "  (signature bvec2\n"
  9519.    "    (parameters\n"
  9520.    "      (declare (in) ivec2 x)\n"
  9521.    "      (declare (in) ivec2 y))\n"
  9522.    "    ())\n"
  9523.    "  (signature bvec3\n"
  9524.    "    (parameters\n"
  9525.    "      (declare (in) ivec3 x)\n"
  9526.    "      (declare (in) ivec3 y))\n"
  9527.    "    ())\n"
  9528.    "  (signature bvec4\n"
  9529.    "    (parameters\n"
  9530.    "      (declare (in) ivec4 x)\n"
  9531.    "      (declare (in) ivec4 y))\n"
  9532.    "    ())\n"
  9533.    "  (signature bvec2\n"
  9534.    "    (parameters\n"
  9535.    "      (declare (in) bvec2 x)\n"
  9536.    "      (declare (in) bvec2 y))\n"
  9537.    "    ())\n"
  9538.    "  (signature bvec3\n"
  9539.    "    (parameters\n"
  9540.    "      (declare (in) bvec3 x)\n"
  9541.    "      (declare (in) bvec3 y))\n"
  9542.    "    ())\n"
  9543.    "  (signature bvec4\n"
  9544.    "    (parameters\n"
  9545.    "      (declare (in) bvec4 x)\n"
  9546.    "      (declare (in) bvec4 y))\n"
  9547.    "    ()))\n"
  9548.    "(function notEqual\n"
  9549.    "  (signature bvec2\n"
  9550.    "    (parameters\n"
  9551.    "      (declare (in) vec2 x)\n"
  9552.    "      (declare (in) vec2 y))\n"
  9553.    "    ())\n"
  9554.    "  (signature bvec3\n"
  9555.    "    (parameters\n"
  9556.    "      (declare (in) vec3 x)\n"
  9557.    "      (declare (in) vec3 y))\n"
  9558.    "    ())\n"
  9559.    "  (signature bvec4\n"
  9560.    "    (parameters\n"
  9561.    "      (declare (in) vec4 x)\n"
  9562.    "      (declare (in) vec4 y))\n"
  9563.    "    ())\n"
  9564.    "  (signature bvec2\n"
  9565.    "    (parameters\n"
  9566.    "      (declare (in) ivec2 x)\n"
  9567.    "      (declare (in) ivec2 y))\n"
  9568.    "    ())\n"
  9569.    "  (signature bvec3\n"
  9570.    "    (parameters\n"
  9571.    "      (declare (in) ivec3 x)\n"
  9572.    "      (declare (in) ivec3 y))\n"
  9573.    "    ())\n"
  9574.    "  (signature bvec4\n"
  9575.    "    (parameters\n"
  9576.    "      (declare (in) ivec4 x)\n"
  9577.    "      (declare (in) ivec4 y))\n"
  9578.    "    ())\n"
  9579.    "  (signature bvec2\n"
  9580.    "    (parameters\n"
  9581.    "      (declare (in) bvec2 x)\n"
  9582.    "      (declare (in) bvec2 y))\n"
  9583.    "    ())\n"
  9584.    "  (signature bvec3\n"
  9585.    "    (parameters\n"
  9586.    "      (declare (in) bvec3 x)\n"
  9587.    "      (declare (in) bvec3 y))\n"
  9588.    "    ())\n"
  9589.    "  (signature bvec4\n"
  9590.    "    (parameters\n"
  9591.    "      (declare (in) bvec4 x)\n"
  9592.    "      (declare (in) bvec4 y))\n"
  9593.    "    ()))\n"
  9594.    "(function any\n"
  9595.    "  (signature bool\n"
  9596.    "    (parameters\n"
  9597.    "      (declare (in) bvec2 x))\n"
  9598.    "    ())\n"
  9599.    "  (signature bool\n"
  9600.    "    (parameters\n"
  9601.    "      (declare (in) bvec3 x))\n"
  9602.    "    ())\n"
  9603.    "  (signature bool\n"
  9604.    "    (parameters\n"
  9605.    "      (declare (in) bvec4 x))\n"
  9606.    "    ()))\n"
  9607.    "(function all\n"
  9608.    "  (signature bool\n"
  9609.    "    (parameters\n"
  9610.    "      (declare (in) bvec2 x))\n"
  9611.    "    ())\n"
  9612.    "  (signature bool\n"
  9613.    "    (parameters\n"
  9614.    "      (declare (in) bvec3 x))\n"
  9615.    "    ())\n"
  9616.    "  (signature bool\n"
  9617.    "    (parameters\n"
  9618.    "      (declare (in) bvec4 x))\n"
  9619.    "    ()))\n"
  9620.    "(function not\n"
  9621.    "  (signature bvec2\n"
  9622.    "    (parameters\n"
  9623.    "      (declare (in) bvec2 x))\n"
  9624.    "    ())\n"
  9625.    "  (signature bvec3\n"
  9626.    "    (parameters\n"
  9627.    "      (declare (in) bvec3 x))\n"
  9628.    "    ())\n"
  9629.    "  (signature bvec4\n"
  9630.    "    (parameters\n"
  9631.    "      (declare (in) bvec4 x))\n"
  9632.    "    ()))\n"
  9633.    "(function texture2D\n"
  9634.    "  (signature vec4\n"
  9635.    "    (parameters\n"
  9636.    "      (declare (in) sampler2D sampler)\n"
  9637.    "      (declare (in) vec2 coord))\n"
  9638.    "    ()))\n"
  9639.    "(function texture2DProj\n"
  9640.    "  (signature vec4\n"
  9641.    "    (parameters\n"
  9642.    "      (declare (in) sampler2D sampler)\n"
  9643.    "      (declare (in) vec3 coord))\n"
  9644.    "    ())\n"
  9645.    "  (signature vec4\n"
  9646.    "    (parameters\n"
  9647.    "      (declare (in) sampler2D sampler)\n"
  9648.    "      (declare (in) vec4 coord))\n"
  9649.    "    ()))\n"
  9650.    "(function textureCube\n"
  9651.    "  (signature vec4\n"
  9652.    "    (parameters\n"
  9653.    "      (declare (in) samplerCube sampler)\n"
  9654.    "      (declare (in) vec3 coord))\n"
  9655.    "    ())))"
  9656. ;
  9657. static const char *functions_for_100es_glsl [] = {
  9658.    builtin_abs,
  9659.    builtin_acos,
  9660.    builtin_all,
  9661.    builtin_any,
  9662.    builtin_asin,
  9663.    builtin_atan,
  9664.    builtin_ceil,
  9665.    builtin_clamp,
  9666.    builtin_cos,
  9667.    builtin_cross,
  9668.    builtin_degrees,
  9669.    builtin_distance,
  9670.    builtin_dot,
  9671.    builtin_equal,
  9672.    builtin_exp,
  9673.    builtin_exp2,
  9674.    builtin_faceforward,
  9675.    builtin_floor,
  9676.    builtin_fract,
  9677.    builtin_greaterThan,
  9678.    builtin_greaterThanEqual,
  9679.    builtin_inversesqrt,
  9680.    builtin_length,
  9681.    builtin_lessThan,
  9682.    builtin_lessThanEqual,
  9683.    builtin_log,
  9684.    builtin_log2,
  9685.    builtin_matrixCompMult,
  9686.    builtin_max,
  9687.    builtin_min,
  9688.    builtin_mix,
  9689.    builtin_mod,
  9690.    builtin_normalize,
  9691.    builtin_not,
  9692.    builtin_notEqual,
  9693.    builtin_pow,
  9694.    builtin_radians,
  9695.    builtin_reflect,
  9696.    builtin_refract,
  9697.    builtin_sign,
  9698.    builtin_sin,
  9699.    builtin_smoothstep,
  9700.    builtin_sqrt,
  9701.    builtin_step,
  9702.    builtin_tan,
  9703.    builtin_texture2D,
  9704.    builtin_texture2DProj,
  9705.    builtin_textureCube,
  9706. };
  9707. static const char prototypes_for_100es_vert[] =
  9708.    "(\n"
  9709.    "(function texture2DLod\n"
  9710.    "  (signature vec4\n"
  9711.    "    (parameters\n"
  9712.    "      (declare (in) sampler2D sampler)\n"
  9713.    "      (declare (in) vec2 coord)\n"
  9714.    "      (declare (in) float lod))\n"
  9715.    "    ()))\n"
  9716.    "(function texture2DProjLod\n"
  9717.    "  (signature vec4\n"
  9718.    "    (parameters\n"
  9719.    "      (declare (in) sampler2D sampler)\n"
  9720.    "      (declare (in) vec3 coord)\n"
  9721.    "      (declare (in) float lod))\n"
  9722.    "    ())\n"
  9723.    "  (signature vec4\n"
  9724.    "    (parameters\n"
  9725.    "      (declare (in) sampler2D sampler)\n"
  9726.    "      (declare (in) vec4 coord)\n"
  9727.    "      (declare (in) float lod))\n"
  9728.    "    ()))\n"
  9729.    "(function textureCubeLod\n"
  9730.    "  (signature vec4\n"
  9731.    "    (parameters\n"
  9732.    "      (declare (in) samplerCube sampler)\n"
  9733.    "      (declare (in) vec3 coord)\n"
  9734.    "      (declare (in) float lod))\n"
  9735.    "    ())))"
  9736. ;
  9737. static const char *functions_for_100es_vert [] = {
  9738.    builtin_texture2DLod,
  9739.    builtin_texture2DProjLod,
  9740.    builtin_textureCubeLod,
  9741. };
  9742. static const char prototypes_for_110_frag[] =
  9743.    "(\n"
  9744.    "(function texture1D\n"
  9745.    "  (signature vec4\n"
  9746.    "    (parameters\n"
  9747.    "      (declare (in) sampler1D sampler)\n"
  9748.    "      (declare (in) float coord)\n"
  9749.    "      (declare (in) float bias))\n"
  9750.    "    ()))\n"
  9751.    "(function texture1DProj\n"
  9752.    "  (signature vec4\n"
  9753.    "    (parameters\n"
  9754.    "      (declare (in) sampler1D sampler)\n"
  9755.    "      (declare (in) vec2 coord)\n"
  9756.    "      (declare (in) float bias))\n"
  9757.    "    ())\n"
  9758.    "  (signature vec4\n"
  9759.    "    (parameters\n"
  9760.    "      (declare (in) sampler1D sampler)\n"
  9761.    "      (declare (in) vec4 coord)\n"
  9762.    "      (declare (in) float bias))\n"
  9763.    "    ()))\n"
  9764.    "(function texture2D\n"
  9765.    "  (signature vec4\n"
  9766.    "    (parameters\n"
  9767.    "      (declare (in) sampler2D sampler)\n"
  9768.    "      (declare (in) vec2 coord)\n"
  9769.    "      (declare (in) float bias))\n"
  9770.    "    ()))\n"
  9771.    "(function texture2DProj\n"
  9772.    "  (signature vec4\n"
  9773.    "    (parameters\n"
  9774.    "      (declare (in) sampler2D sampler)\n"
  9775.    "      (declare (in) vec3 coord)\n"
  9776.    "      (declare (in) float bias))\n"
  9777.    "    ())\n"
  9778.    "  (signature vec4\n"
  9779.    "    (parameters\n"
  9780.    "      (declare (in) sampler2D sampler)\n"
  9781.    "      (declare (in) vec4 coord)\n"
  9782.    "      (declare (in) float bias))\n"
  9783.    "    ()))\n"
  9784.    "(function texture3D\n"
  9785.    "  (signature vec4\n"
  9786.    "    (parameters\n"
  9787.    "      (declare (in) sampler3D sampler)\n"
  9788.    "      (declare (in) vec3 coord)\n"
  9789.    "      (declare (in) float bias))\n"
  9790.    "    ()))\n"
  9791.    "(function texture3DProj\n"
  9792.    "  (signature vec4\n"
  9793.    "    (parameters\n"
  9794.    "      (declare (in) sampler3D sampler)\n"
  9795.    "      (declare (in) vec4 coord)\n"
  9796.    "      (declare (in) float bias))\n"
  9797.    "    ()))\n"
  9798.    "(function textureCube\n"
  9799.    "  (signature vec4\n"
  9800.    "    (parameters\n"
  9801.    "      (declare (in) samplerCube sampler)\n"
  9802.    "      (declare (in) vec3 coord)\n"
  9803.    "      (declare (in) float bias))\n"
  9804.    "    ()))\n"
  9805.    "(function shadow1D\n"
  9806.    "  (signature vec4\n"
  9807.    "    (parameters\n"
  9808.    "      (declare (in) sampler1DShadow sampler)\n"
  9809.    "      (declare (in) vec3 coord)\n"
  9810.    "      (declare (in) float bias))\n"
  9811.    "    ()))\n"
  9812.    "(function shadow2D\n"
  9813.    "  (signature vec4\n"
  9814.    "    (parameters\n"
  9815.    "      (declare (in) sampler2DShadow sampler)\n"
  9816.    "      (declare (in) vec3 coord)\n"
  9817.    "      (declare (in) float bias))\n"
  9818.    "    ()))\n"
  9819.    "(function shadow1DProj\n"
  9820.    "  (signature vec4\n"
  9821.    "    (parameters\n"
  9822.    "      (declare (in) sampler1DShadow sampler)\n"
  9823.    "      (declare (in) vec4 coord)\n"
  9824.    "      (declare (in) float bias))\n"
  9825.    "    ()))\n"
  9826.    "(function shadow2DProj\n"
  9827.    "  (signature vec4\n"
  9828.    "    (parameters\n"
  9829.    "      (declare (in) sampler2DShadow sampler)\n"
  9830.    "      (declare (in) vec4 coord)\n"
  9831.    "      (declare (in) float bias))\n"
  9832.    "    ()))\n"
  9833.    "(function dFdx\n"
  9834.    "  (signature float\n"
  9835.    "    (parameters\n"
  9836.    "      (declare (in) float p))\n"
  9837.    "    ())\n"
  9838.    "  (signature vec2\n"
  9839.    "    (parameters\n"
  9840.    "      (declare (in) vec2 p))\n"
  9841.    "    ())\n"
  9842.    "  (signature vec3\n"
  9843.    "    (parameters\n"
  9844.    "      (declare (in) vec3 p))\n"
  9845.    "    ())\n"
  9846.    "  (signature vec4\n"
  9847.    "    (parameters\n"
  9848.    "      (declare (in) vec4 p))\n"
  9849.    "    ()))\n"
  9850.    "(function dFdy\n"
  9851.    "  (signature float\n"
  9852.    "    (parameters\n"
  9853.    "      (declare (in) float p))\n"
  9854.    "    ())\n"
  9855.    "  (signature vec2\n"
  9856.    "    (parameters\n"
  9857.    "      (declare (in) vec2 p))\n"
  9858.    "    ())\n"
  9859.    "  (signature vec3\n"
  9860.    "    (parameters\n"
  9861.    "      (declare (in) vec3 p))\n"
  9862.    "    ())\n"
  9863.    "  (signature vec4\n"
  9864.    "    (parameters\n"
  9865.    "      (declare (in) vec4 p))\n"
  9866.    "    ()))\n"
  9867.    "(function fwidth\n"
  9868.    "  (signature float\n"
  9869.    "    (parameters\n"
  9870.    "      (declare (in) float p))\n"
  9871.    "    ())\n"
  9872.    "  (signature vec2\n"
  9873.    "    (parameters\n"
  9874.    "      (declare (in) vec2 p))\n"
  9875.    "    ())\n"
  9876.    "  (signature vec3\n"
  9877.    "    (parameters\n"
  9878.    "      (declare (in) vec3 p))\n"
  9879.    "    ())\n"
  9880.    "  (signature vec4\n"
  9881.    "    (parameters\n"
  9882.    "      (declare (in) vec4 p))\n"
  9883.    "    ())))"
  9884. ;
  9885. static const char *functions_for_110_frag [] = {
  9886.    builtin_dFdx,
  9887.    builtin_dFdy,
  9888.    builtin_fwidth,
  9889.    builtin_shadow1D,
  9890.    builtin_shadow1DProj,
  9891.    builtin_shadow2D,
  9892.    builtin_shadow2DProj,
  9893.    builtin_texture1D,
  9894.    builtin_texture1DProj,
  9895.    builtin_texture2D,
  9896.    builtin_texture2DProj,
  9897.    builtin_texture3D,
  9898.    builtin_texture3DProj,
  9899.    builtin_textureCube,
  9900. };
  9901. static const char prototypes_for_110_glsl[] =
  9902.    "(\n"
  9903.    "(function radians\n"
  9904.    "  (signature float\n"
  9905.    "    (parameters\n"
  9906.    "      (declare (in) float degrees))\n"
  9907.    "    ())\n"
  9908.    "  (signature vec2\n"
  9909.    "    (parameters\n"
  9910.    "      (declare (in) vec2 degrees))\n"
  9911.    "    ())\n"
  9912.    "  (signature vec3\n"
  9913.    "    (parameters\n"
  9914.    "      (declare (in) vec3 degrees))\n"
  9915.    "    ())\n"
  9916.    "  (signature vec4\n"
  9917.    "    (parameters\n"
  9918.    "      (declare (in) vec4 degrees))\n"
  9919.    "    ()))\n"
  9920.    "(function degrees\n"
  9921.    "  (signature float\n"
  9922.    "    (parameters\n"
  9923.    "      (declare (in) float radians))\n"
  9924.    "    ())\n"
  9925.    "  (signature vec2\n"
  9926.    "    (parameters\n"
  9927.    "      (declare (in) vec2 radians))\n"
  9928.    "    ())\n"
  9929.    "  (signature vec3\n"
  9930.    "    (parameters\n"
  9931.    "      (declare (in) vec3 radians))\n"
  9932.    "    ())\n"
  9933.    "  (signature vec4\n"
  9934.    "    (parameters\n"
  9935.    "      (declare (in) vec4 radians))\n"
  9936.    "    ()))\n"
  9937.    "(function sin\n"
  9938.    "  (signature float\n"
  9939.    "    (parameters\n"
  9940.    "      (declare (in) float angle))\n"
  9941.    "    ())\n"
  9942.    "  (signature vec2\n"
  9943.    "    (parameters\n"
  9944.    "      (declare (in) vec2 angle))\n"
  9945.    "    ())\n"
  9946.    "  (signature vec3\n"
  9947.    "    (parameters\n"
  9948.    "      (declare (in) vec3 angle))\n"
  9949.    "    ())\n"
  9950.    "  (signature vec4\n"
  9951.    "    (parameters\n"
  9952.    "      (declare (in) vec4 angle))\n"
  9953.    "    ()))\n"
  9954.    "(function cos\n"
  9955.    "  (signature float\n"
  9956.    "    (parameters\n"
  9957.    "      (declare (in) float angle))\n"
  9958.    "    ())\n"
  9959.    "  (signature vec2\n"
  9960.    "    (parameters\n"
  9961.    "      (declare (in) vec2 angle))\n"
  9962.    "    ())\n"
  9963.    "  (signature vec3\n"
  9964.    "    (parameters\n"
  9965.    "      (declare (in) vec3 angle))\n"
  9966.    "    ())\n"
  9967.    "  (signature vec4\n"
  9968.    "    (parameters\n"
  9969.    "      (declare (in) vec4 angle))\n"
  9970.    "    ()))\n"
  9971.    "(function tan\n"
  9972.    "  (signature float\n"
  9973.    "    (parameters\n"
  9974.    "      (declare (in) float angle))\n"
  9975.    "    ())\n"
  9976.    "  (signature vec2\n"
  9977.    "    (parameters\n"
  9978.    "      (declare (in) vec2 angle))\n"
  9979.    "    ())\n"
  9980.    "  (signature vec3\n"
  9981.    "    (parameters\n"
  9982.    "      (declare (in) vec3 angle))\n"
  9983.    "    ())\n"
  9984.    "  (signature vec4\n"
  9985.    "    (parameters\n"
  9986.    "      (declare (in) vec4 angle))\n"
  9987.    "    ()))\n"
  9988.    "(function asin\n"
  9989.    "  (signature float\n"
  9990.    "    (parameters\n"
  9991.    "      (declare (in) float angle))\n"
  9992.    "    ())\n"
  9993.    "  (signature vec2\n"
  9994.    "    (parameters\n"
  9995.    "      (declare (in) vec2 angle))\n"
  9996.    "    ())\n"
  9997.    "  (signature vec3\n"
  9998.    "    (parameters\n"
  9999.    "      (declare (in) vec3 angle))\n"
  10000.    "    ())\n"
  10001.    "  (signature vec4\n"
  10002.    "    (parameters\n"
  10003.    "      (declare (in) vec4 angle))\n"
  10004.    "    ()))\n"
  10005.    "(function acos\n"
  10006.    "  (signature float\n"
  10007.    "    (parameters\n"
  10008.    "      (declare (in) float angle))\n"
  10009.    "    ())\n"
  10010.    "  (signature vec2\n"
  10011.    "    (parameters\n"
  10012.    "      (declare (in) vec2 angle))\n"
  10013.    "    ())\n"
  10014.    "  (signature vec3\n"
  10015.    "    (parameters\n"
  10016.    "      (declare (in) vec3 angle))\n"
  10017.    "    ())\n"
  10018.    "  (signature vec4\n"
  10019.    "    (parameters\n"
  10020.    "      (declare (in) vec4 angle))\n"
  10021.    "    ()))\n"
  10022.    "(function atan\n"
  10023.    "  (signature float\n"
  10024.    "    (parameters\n"
  10025.    "      (declare (in) float y)\n"
  10026.    "      (declare (in) float x))\n"
  10027.    "    ())\n"
  10028.    "  (signature vec2\n"
  10029.    "    (parameters\n"
  10030.    "      (declare (in) vec2 y)\n"
  10031.    "      (declare (in) vec2 x))\n"
  10032.    "    ())\n"
  10033.    "  (signature vec3\n"
  10034.    "    (parameters\n"
  10035.    "      (declare (in) vec3 y)\n"
  10036.    "      (declare (in) vec3 x))\n"
  10037.    "    ())\n"
  10038.    "  (signature vec4\n"
  10039.    "    (parameters\n"
  10040.    "      (declare (in) vec4 y)\n"
  10041.    "      (declare (in) vec4 x))\n"
  10042.    "    ())\n"
  10043.    "  (signature float\n"
  10044.    "    (parameters\n"
  10045.    "      (declare (in) float y_over_x))\n"
  10046.    "    ())\n"
  10047.    "  (signature vec2\n"
  10048.    "    (parameters\n"
  10049.    "      (declare (in) vec2 y_over_x))\n"
  10050.    "    ())\n"
  10051.    "  (signature vec3\n"
  10052.    "    (parameters\n"
  10053.    "      (declare (in) vec3 y_over_x))\n"
  10054.    "    ())\n"
  10055.    "  (signature vec4\n"
  10056.    "    (parameters\n"
  10057.    "      (declare (in) vec4 y_over_x))\n"
  10058.    "    ()))\n"
  10059.    "(function pow\n"
  10060.    "  (signature float\n"
  10061.    "    (parameters\n"
  10062.    "      (declare (in) float x)\n"
  10063.    "      (declare (in) float y))\n"
  10064.    "    ())\n"
  10065.    "  (signature vec2\n"
  10066.    "    (parameters\n"
  10067.    "      (declare (in) vec2 x)\n"
  10068.    "      (declare (in) vec2 y))\n"
  10069.    "    ())\n"
  10070.    "  (signature vec3\n"
  10071.    "    (parameters\n"
  10072.    "      (declare (in) vec3 x)\n"
  10073.    "      (declare (in) vec3 y))\n"
  10074.    "    ())\n"
  10075.    "  (signature vec4\n"
  10076.    "    (parameters\n"
  10077.    "      (declare (in) vec4 x)\n"
  10078.    "      (declare (in) vec4 y))\n"
  10079.    "    ()))\n"
  10080.    "(function exp\n"
  10081.    "  (signature float\n"
  10082.    "    (parameters\n"
  10083.    "      (declare (in) float x))\n"
  10084.    "    ())\n"
  10085.    "  (signature vec2\n"
  10086.    "    (parameters\n"
  10087.    "      (declare (in) vec2 x))\n"
  10088.    "    ())\n"
  10089.    "  (signature vec3\n"
  10090.    "    (parameters\n"
  10091.    "      (declare (in) vec3 x))\n"
  10092.    "    ())\n"
  10093.    "  (signature vec4\n"
  10094.    "    (parameters\n"
  10095.    "      (declare (in) vec4 x))\n"
  10096.    "    ()))\n"
  10097.    "(function log\n"
  10098.    "  (signature float\n"
  10099.    "    (parameters\n"
  10100.    "      (declare (in) float x))\n"
  10101.    "    ())\n"
  10102.    "  (signature vec2\n"
  10103.    "    (parameters\n"
  10104.    "      (declare (in) vec2 x))\n"
  10105.    "    ())\n"
  10106.    "  (signature vec3\n"
  10107.    "    (parameters\n"
  10108.    "      (declare (in) vec3 x))\n"
  10109.    "    ())\n"
  10110.    "  (signature vec4\n"
  10111.    "    (parameters\n"
  10112.    "      (declare (in) vec4 x))\n"
  10113.    "    ()))\n"
  10114.    "(function exp2\n"
  10115.    "  (signature float\n"
  10116.    "    (parameters\n"
  10117.    "      (declare (in) float x))\n"
  10118.    "    ())\n"
  10119.    "  (signature vec2\n"
  10120.    "    (parameters\n"
  10121.    "      (declare (in) vec2 x))\n"
  10122.    "    ())\n"
  10123.    "  (signature vec3\n"
  10124.    "    (parameters\n"
  10125.    "      (declare (in) vec3 x))\n"
  10126.    "    ())\n"
  10127.    "  (signature vec4\n"
  10128.    "    (parameters\n"
  10129.    "      (declare (in) vec4 x))\n"
  10130.    "    ()))\n"
  10131.    "(function log2\n"
  10132.    "  (signature float\n"
  10133.    "    (parameters\n"
  10134.    "      (declare (in) float x))\n"
  10135.    "    ())\n"
  10136.    "  (signature vec2\n"
  10137.    "    (parameters\n"
  10138.    "      (declare (in) vec2 x))\n"
  10139.    "    ())\n"
  10140.    "  (signature vec3\n"
  10141.    "    (parameters\n"
  10142.    "      (declare (in) vec3 x))\n"
  10143.    "    ())\n"
  10144.    "  (signature vec4\n"
  10145.    "    (parameters\n"
  10146.    "      (declare (in) vec4 x))\n"
  10147.    "    ()))\n"
  10148.    "(function sqrt\n"
  10149.    "  (signature float\n"
  10150.    "    (parameters\n"
  10151.    "      (declare (in) float x))\n"
  10152.    "    ())\n"
  10153.    "  (signature vec2\n"
  10154.    "    (parameters\n"
  10155.    "      (declare (in) vec2 x))\n"
  10156.    "    ())\n"
  10157.    "  (signature vec3\n"
  10158.    "    (parameters\n"
  10159.    "      (declare (in) vec3 x))\n"
  10160.    "    ())\n"
  10161.    "  (signature vec4\n"
  10162.    "    (parameters\n"
  10163.    "      (declare (in) vec4 x))\n"
  10164.    "    ()))\n"
  10165.    "(function inversesqrt\n"
  10166.    "  (signature float\n"
  10167.    "    (parameters\n"
  10168.    "      (declare (in) float x))\n"
  10169.    "    ())\n"
  10170.    "  (signature vec2\n"
  10171.    "    (parameters\n"
  10172.    "      (declare (in) vec2 x))\n"
  10173.    "    ())\n"
  10174.    "  (signature vec3\n"
  10175.    "    (parameters\n"
  10176.    "      (declare (in) vec3 x))\n"
  10177.    "    ())\n"
  10178.    "  (signature vec4\n"
  10179.    "    (parameters\n"
  10180.    "      (declare (in) vec4 x))\n"
  10181.    "    ()))\n"
  10182.    "(function abs\n"
  10183.    "  (signature float\n"
  10184.    "    (parameters\n"
  10185.    "      (declare (in) float x))\n"
  10186.    "    ())\n"
  10187.    "  (signature vec2\n"
  10188.    "    (parameters\n"
  10189.    "      (declare (in) vec2 x))\n"
  10190.    "    ())\n"
  10191.    "  (signature vec3\n"
  10192.    "    (parameters\n"
  10193.    "      (declare (in) vec3 x))\n"
  10194.    "    ())\n"
  10195.    "  (signature vec4\n"
  10196.    "    (parameters\n"
  10197.    "      (declare (in) vec4 x))\n"
  10198.    "    ()))\n"
  10199.    "(function sign\n"
  10200.    "  (signature float\n"
  10201.    "    (parameters\n"
  10202.    "      (declare (in) float x))\n"
  10203.    "    ())\n"
  10204.    "  (signature vec2\n"
  10205.    "    (parameters\n"
  10206.    "      (declare (in) vec2 x))\n"
  10207.    "    ())\n"
  10208.    "  (signature vec3\n"
  10209.    "    (parameters\n"
  10210.    "      (declare (in) vec3 x))\n"
  10211.    "    ())\n"
  10212.    "  (signature vec4\n"
  10213.    "    (parameters\n"
  10214.    "      (declare (in) vec4 x))\n"
  10215.    "    ()))\n"
  10216.    "(function floor\n"
  10217.    "  (signature float\n"
  10218.    "    (parameters\n"
  10219.    "      (declare (in) float x))\n"
  10220.    "    ())\n"
  10221.    "  (signature vec2\n"
  10222.    "    (parameters\n"
  10223.    "      (declare (in) vec2 x))\n"
  10224.    "    ())\n"
  10225.    "  (signature vec3\n"
  10226.    "    (parameters\n"
  10227.    "      (declare (in) vec3 x))\n"
  10228.    "    ())\n"
  10229.    "  (signature vec4\n"
  10230.    "    (parameters\n"
  10231.    "      (declare (in) vec4 x))\n"
  10232.    "    ()))\n"
  10233.    "(function ceil\n"
  10234.    "  (signature float\n"
  10235.    "    (parameters\n"
  10236.    "      (declare (in) float x))\n"
  10237.    "    ())\n"
  10238.    "  (signature vec2\n"
  10239.    "    (parameters\n"
  10240.    "      (declare (in) vec2 x))\n"
  10241.    "    ())\n"
  10242.    "  (signature vec3\n"
  10243.    "    (parameters\n"
  10244.    "      (declare (in) vec3 x))\n"
  10245.    "    ())\n"
  10246.    "  (signature vec4\n"
  10247.    "    (parameters\n"
  10248.    "      (declare (in) vec4 x))\n"
  10249.    "    ()))\n"
  10250.    "(function fract\n"
  10251.    "  (signature float\n"
  10252.    "    (parameters\n"
  10253.    "      (declare (in) float x))\n"
  10254.    "    ())\n"
  10255.    "  (signature vec2\n"
  10256.    "    (parameters\n"
  10257.    "      (declare (in) vec2 x))\n"
  10258.    "    ())\n"
  10259.    "  (signature vec3\n"
  10260.    "    (parameters\n"
  10261.    "      (declare (in) vec3 x))\n"
  10262.    "    ())\n"
  10263.    "  (signature vec4\n"
  10264.    "    (parameters\n"
  10265.    "      (declare (in) vec4 x))\n"
  10266.    "    ()))\n"
  10267.    "(function mod\n"
  10268.    "  (signature float\n"
  10269.    "    (parameters\n"
  10270.    "      (declare (in) float x)\n"
  10271.    "      (declare (in) float y))\n"
  10272.    "    ())\n"
  10273.    "  (signature vec2\n"
  10274.    "    (parameters\n"
  10275.    "      (declare (in) vec2 x)\n"
  10276.    "      (declare (in) float y))\n"
  10277.    "    ())\n"
  10278.    "  (signature vec3\n"
  10279.    "    (parameters\n"
  10280.    "      (declare (in) vec3 x)\n"
  10281.    "      (declare (in) float y))\n"
  10282.    "    ())\n"
  10283.    "  (signature vec4\n"
  10284.    "    (parameters\n"
  10285.    "      (declare (in) vec4 x)\n"
  10286.    "      (declare (in) float y))\n"
  10287.    "    ())\n"
  10288.    "  (signature vec2\n"
  10289.    "    (parameters\n"
  10290.    "      (declare (in) vec2 x)\n"
  10291.    "      (declare (in) vec2 y))\n"
  10292.    "    ())\n"
  10293.    "  (signature vec3\n"
  10294.    "    (parameters\n"
  10295.    "      (declare (in) vec3 x)\n"
  10296.    "      (declare (in) vec3 y))\n"
  10297.    "    ())\n"
  10298.    "  (signature vec4\n"
  10299.    "    (parameters\n"
  10300.    "      (declare (in) vec4 x)\n"
  10301.    "      (declare (in) vec4 y))\n"
  10302.    "    ()))\n"
  10303.    "(function min\n"
  10304.    "  (signature float\n"
  10305.    "    (parameters\n"
  10306.    "      (declare (in) float x)\n"
  10307.    "      (declare (in) float y))\n"
  10308.    "    ())\n"
  10309.    "  (signature vec2\n"
  10310.    "    (parameters\n"
  10311.    "      (declare (in) vec2 x)\n"
  10312.    "      (declare (in) vec2 y))\n"
  10313.    "    ())\n"
  10314.    "  (signature vec3\n"
  10315.    "    (parameters\n"
  10316.    "      (declare (in) vec3 x)\n"
  10317.    "      (declare (in) vec3 y))\n"
  10318.    "    ())\n"
  10319.    "  (signature vec4\n"
  10320.    "    (parameters\n"
  10321.    "      (declare (in) vec4 x)\n"
  10322.    "      (declare (in) vec4 y))\n"
  10323.    "    ())\n"
  10324.    "  (signature vec2\n"
  10325.    "    (parameters\n"
  10326.    "      (declare (in) vec2 x)\n"
  10327.    "      (declare (in) float y))\n"
  10328.    "    ())\n"
  10329.    "  (signature vec3\n"
  10330.    "    (parameters\n"
  10331.    "      (declare (in) vec3 x)\n"
  10332.    "      (declare (in) float y))\n"
  10333.    "    ())\n"
  10334.    "  (signature vec4\n"
  10335.    "    (parameters\n"
  10336.    "      (declare (in) vec4 x)\n"
  10337.    "      (declare (in) float y))\n"
  10338.    "    ()))\n"
  10339.    "(function max\n"
  10340.    "  (signature float\n"
  10341.    "    (parameters\n"
  10342.    "      (declare (in) float x)\n"
  10343.    "      (declare (in) float y))\n"
  10344.    "    ())\n"
  10345.    "  (signature vec2\n"
  10346.    "    (parameters\n"
  10347.    "      (declare (in) vec2 x)\n"
  10348.    "      (declare (in) vec2 y))\n"
  10349.    "    ())\n"
  10350.    "  (signature vec3\n"
  10351.    "    (parameters\n"
  10352.    "      (declare (in) vec3 x)\n"
  10353.    "      (declare (in) vec3 y))\n"
  10354.    "    ())\n"
  10355.    "  (signature vec4\n"
  10356.    "    (parameters\n"
  10357.    "      (declare (in) vec4 x)\n"
  10358.    "      (declare (in) vec4 y))\n"
  10359.    "    ())\n"
  10360.    "  (signature vec2\n"
  10361.    "    (parameters\n"
  10362.    "      (declare (in) vec2 x)\n"
  10363.    "      (declare (in) float y))\n"
  10364.    "    ())\n"
  10365.    "  (signature vec3\n"
  10366.    "    (parameters\n"
  10367.    "      (declare (in) vec3 x)\n"
  10368.    "      (declare (in) float y))\n"
  10369.    "    ())\n"
  10370.    "  (signature vec4\n"
  10371.    "    (parameters\n"
  10372.    "      (declare (in) vec4 x)\n"
  10373.    "      (declare (in) float y))\n"
  10374.    "    ()))\n"
  10375.    "(function clamp\n"
  10376.    "  (signature float\n"
  10377.    "    (parameters\n"
  10378.    "      (declare (in) float x)\n"
  10379.    "      (declare (in) float minVal)\n"
  10380.    "      (declare (in) float maxVal))\n"
  10381.    "    ())\n"
  10382.    "  (signature vec2\n"
  10383.    "    (parameters\n"
  10384.    "      (declare (in) vec2 x)\n"
  10385.    "      (declare (in) vec2 minVal)\n"
  10386.    "      (declare (in) vec2 maxVal))\n"
  10387.    "    ())\n"
  10388.    "  (signature vec3\n"
  10389.    "    (parameters\n"
  10390.    "      (declare (in) vec3 x)\n"
  10391.    "      (declare (in) vec3 minVal)\n"
  10392.    "      (declare (in) vec3 maxVal))\n"
  10393.    "    ())\n"
  10394.    "  (signature vec4\n"
  10395.    "    (parameters\n"
  10396.    "      (declare (in) vec4 x)\n"
  10397.    "      (declare (in) vec4 minVal)\n"
  10398.    "      (declare (in) vec4 maxVal))\n"
  10399.    "    ())\n"
  10400.    "  (signature vec2\n"
  10401.    "    (parameters\n"
  10402.    "      (declare (in) vec2 x)\n"
  10403.    "      (declare (in) float minVal)\n"
  10404.    "      (declare (in) float maxVal))\n"
  10405.    "    ())\n"
  10406.    "  (signature vec3\n"
  10407.    "    (parameters\n"
  10408.    "      (declare (in) vec3 x)\n"
  10409.    "      (declare (in) float minVal)\n"
  10410.    "      (declare (in) float maxVal))\n"
  10411.    "    ())\n"
  10412.    "  (signature vec4\n"
  10413.    "    (parameters\n"
  10414.    "      (declare (in) vec4 x)\n"
  10415.    "      (declare (in) float minVal)\n"
  10416.    "      (declare (in) float maxVal))\n"
  10417.    "    ()))\n"
  10418.    "(function mix\n"
  10419.    "  (signature float\n"
  10420.    "    (parameters\n"
  10421.    "      (declare (in) float x)\n"
  10422.    "      (declare (in) float y)\n"
  10423.    "      (declare (in) float a))\n"
  10424.    "    ())\n"
  10425.    "  (signature vec2\n"
  10426.    "    (parameters\n"
  10427.    "      (declare (in) vec2 x)\n"
  10428.    "      (declare (in) vec2 y)\n"
  10429.    "      (declare (in) vec2 a))\n"
  10430.    "    ())\n"
  10431.    "  (signature vec3\n"
  10432.    "    (parameters\n"
  10433.    "      (declare (in) vec3 x)\n"
  10434.    "      (declare (in) vec3 y)\n"
  10435.    "      (declare (in) vec3 a))\n"
  10436.    "    ())\n"
  10437.    "  (signature vec4\n"
  10438.    "    (parameters\n"
  10439.    "      (declare (in) vec4 x)\n"
  10440.    "      (declare (in) vec4 y)\n"
  10441.    "      (declare (in) vec4 a))\n"
  10442.    "    ())\n"
  10443.    "  (signature vec2\n"
  10444.    "    (parameters\n"
  10445.    "      (declare (in) vec2 x)\n"
  10446.    "      (declare (in) vec2 y)\n"
  10447.    "      (declare (in) float a))\n"
  10448.    "    ())\n"
  10449.    "  (signature vec3\n"
  10450.    "    (parameters\n"
  10451.    "      (declare (in) vec3 x)\n"
  10452.    "      (declare (in) vec3 y)\n"
  10453.    "      (declare (in) float a))\n"
  10454.    "    ())\n"
  10455.    "  (signature vec4\n"
  10456.    "    (parameters\n"
  10457.    "      (declare (in) vec4 x)\n"
  10458.    "      (declare (in) vec4 y)\n"
  10459.    "      (declare (in) float a))\n"
  10460.    "    ()))\n"
  10461.    "(function step\n"
  10462.    "  (signature float\n"
  10463.    "    (parameters\n"
  10464.    "      (declare (in) float edge)\n"
  10465.    "      (declare (in) float x))\n"
  10466.    "    ())\n"
  10467.    "  (signature vec2\n"
  10468.    "    (parameters\n"
  10469.    "      (declare (in) vec2 edge)\n"
  10470.    "      (declare (in) vec2 x))\n"
  10471.    "    ())\n"
  10472.    "  (signature vec3\n"
  10473.    "    (parameters\n"
  10474.    "      (declare (in) vec3 edge)\n"
  10475.    "      (declare (in) vec3 x))\n"
  10476.    "    ())\n"
  10477.    "  (signature vec4\n"
  10478.    "    (parameters\n"
  10479.    "      (declare (in) vec4 edge)\n"
  10480.    "      (declare (in) vec4 x))\n"
  10481.    "    ())\n"
  10482.    "  (signature vec2\n"
  10483.    "    (parameters\n"
  10484.    "      (declare (in) float edge)\n"
  10485.    "      (declare (in) vec2 x))\n"
  10486.    "    ())\n"
  10487.    "  (signature vec3\n"
  10488.    "    (parameters\n"
  10489.    "      (declare (in) float edge)\n"
  10490.    "      (declare (in) vec3 x))\n"
  10491.    "    ())\n"
  10492.    "  (signature vec4\n"
  10493.    "    (parameters\n"
  10494.    "      (declare (in) float edge)\n"
  10495.    "      (declare (in) vec4 x))\n"
  10496.    "    ()))\n"
  10497.    "(function smoothstep\n"
  10498.    "  (signature float\n"
  10499.    "    (parameters\n"
  10500.    "      (declare (in) float edge0)\n"
  10501.    "      (declare (in) float edge1)\n"
  10502.    "      (declare (in) float x))\n"
  10503.    "    ())\n"
  10504.    "  (signature vec2\n"
  10505.    "    (parameters\n"
  10506.    "      (declare (in) vec2 edge0)\n"
  10507.    "      (declare (in) vec2 edge1)\n"
  10508.    "      (declare (in) vec2 x))\n"
  10509.    "    ())\n"
  10510.    "  (signature vec3\n"
  10511.    "    (parameters\n"
  10512.    "      (declare (in) vec3 edge0)\n"
  10513.    "      (declare (in) vec3 edge1)\n"
  10514.    "      (declare (in) vec3 x))\n"
  10515.    "    ())\n"
  10516.    "  (signature vec4\n"
  10517.    "    (parameters\n"
  10518.    "      (declare (in) vec4 edge0)\n"
  10519.    "      (declare (in) vec4 edge1)\n"
  10520.    "      (declare (in) vec4 x))\n"
  10521.    "    ())\n"
  10522.    "  (signature vec2\n"
  10523.    "    (parameters\n"
  10524.    "      (declare (in) float edge0)\n"
  10525.    "      (declare (in) float edge1)\n"
  10526.    "      (declare (in) vec2 x))\n"
  10527.    "    ())\n"
  10528.    "  (signature vec3\n"
  10529.    "    (parameters\n"
  10530.    "      (declare (in) float edge0)\n"
  10531.    "      (declare (in) float edge1)\n"
  10532.    "      (declare (in) vec3 x))\n"
  10533.    "    ())\n"
  10534.    "  (signature vec4\n"
  10535.    "    (parameters\n"
  10536.    "      (declare (in) float edge0)\n"
  10537.    "      (declare (in) float edge1)\n"
  10538.    "      (declare (in) vec4 x))\n"
  10539.    "    ()))\n"
  10540.    "(function length\n"
  10541.    "  (signature float\n"
  10542.    "    (parameters\n"
  10543.    "      (declare (in) float x))\n"
  10544.    "    ())\n"
  10545.    "  (signature float\n"
  10546.    "    (parameters\n"
  10547.    "      (declare (in) vec2 x))\n"
  10548.    "    ())\n"
  10549.    "  (signature float\n"
  10550.    "    (parameters\n"
  10551.    "      (declare (in) vec3 x))\n"
  10552.    "    ())\n"
  10553.    "  (signature float\n"
  10554.    "    (parameters\n"
  10555.    "      (declare (in) vec4 x))\n"
  10556.    "    ()))\n"
  10557.    "(function distance\n"
  10558.    "  (signature float\n"
  10559.    "    (parameters\n"
  10560.    "      (declare (in) float p0)\n"
  10561.    "      (declare (in) float p1))\n"
  10562.    "    ())\n"
  10563.    "  (signature float\n"
  10564.    "    (parameters\n"
  10565.    "      (declare (in) vec2 p0)\n"
  10566.    "      (declare (in) vec2 p1))\n"
  10567.    "    ())\n"
  10568.    "  (signature float\n"
  10569.    "    (parameters\n"
  10570.    "      (declare (in) vec3 p0)\n"
  10571.    "      (declare (in) vec3 p1))\n"
  10572.    "    ())\n"
  10573.    "  (signature float\n"
  10574.    "    (parameters\n"
  10575.    "      (declare (in) vec4 p0)\n"
  10576.    "      (declare (in) vec4 p1))\n"
  10577.    "    ()))\n"
  10578.    "(function dot\n"
  10579.    "  (signature float\n"
  10580.    "    (parameters\n"
  10581.    "      (declare (in) float x)\n"
  10582.    "      (declare (in) float y))\n"
  10583.    "    ())\n"
  10584.    "  (signature float\n"
  10585.    "    (parameters\n"
  10586.    "      (declare (in) vec2 x)\n"
  10587.    "      (declare (in) vec2 y))\n"
  10588.    "    ())\n"
  10589.    "  (signature float\n"
  10590.    "    (parameters\n"
  10591.    "      (declare (in) vec3 x)\n"
  10592.    "      (declare (in) vec3 y))\n"
  10593.    "    ())\n"
  10594.    "  (signature float\n"
  10595.    "    (parameters\n"
  10596.    "      (declare (in) vec4 x)\n"
  10597.    "      (declare (in) vec4 y))\n"
  10598.    "    ()))\n"
  10599.    "(function cross\n"
  10600.    "  (signature vec3\n"
  10601.    "    (parameters\n"
  10602.    "      (declare (in) vec3 x)\n"
  10603.    "      (declare (in) vec3 y))\n"
  10604.    "    ()))\n"
  10605.    "(function normalize\n"
  10606.    "  (signature float\n"
  10607.    "    (parameters\n"
  10608.    "      (declare (in) float x))\n"
  10609.    "    ())\n"
  10610.    "  (signature vec2\n"
  10611.    "    (parameters\n"
  10612.    "      (declare (in) vec2 x))\n"
  10613.    "    ())\n"
  10614.    "  (signature vec3\n"
  10615.    "    (parameters\n"
  10616.    "      (declare (in) vec3 x))\n"
  10617.    "    ())\n"
  10618.    "  (signature vec4\n"
  10619.    "    (parameters\n"
  10620.    "      (declare (in) vec4 x))\n"
  10621.    "    ()))\n"
  10622.    "(function faceforward\n"
  10623.    "  (signature float\n"
  10624.    "    (parameters\n"
  10625.    "      (declare (in) float N)\n"
  10626.    "      (declare (in) float I)\n"
  10627.    "      (declare (in) float Nref))\n"
  10628.    "    ())\n"
  10629.    "  (signature vec2\n"
  10630.    "    (parameters\n"
  10631.    "      (declare (in) vec2 N)\n"
  10632.    "      (declare (in) vec2 I)\n"
  10633.    "      (declare (in) vec2 Nref))\n"
  10634.    "    ())\n"
  10635.    "  (signature vec3\n"
  10636.    "    (parameters\n"
  10637.    "      (declare (in) vec3 N)\n"
  10638.    "      (declare (in) vec3 I)\n"
  10639.    "      (declare (in) vec3 Nref))\n"
  10640.    "    ())\n"
  10641.    "  (signature vec4\n"
  10642.    "    (parameters\n"
  10643.    "      (declare (in) vec4 N)\n"
  10644.    "      (declare (in) vec4 I)\n"
  10645.    "      (declare (in) vec4 Nref))\n"
  10646.    "    ()))\n"
  10647.    "(function reflect\n"
  10648.    "  (signature float\n"
  10649.    "    (parameters\n"
  10650.    "      (declare (in) float I)\n"
  10651.    "      (declare (in) float N))\n"
  10652.    "    ())\n"
  10653.    "  (signature vec2\n"
  10654.    "    (parameters\n"
  10655.    "      (declare (in) vec2 I)\n"
  10656.    "      (declare (in) vec2 N))\n"
  10657.    "    ())\n"
  10658.    "  (signature vec3\n"
  10659.    "    (parameters\n"
  10660.    "      (declare (in) vec3 I)\n"
  10661.    "      (declare (in) vec3 N))\n"
  10662.    "    ())\n"
  10663.    "  (signature vec4\n"
  10664.    "    (parameters\n"
  10665.    "      (declare (in) vec4 I)\n"
  10666.    "      (declare (in) vec4 N))\n"
  10667.    "    ()))\n"
  10668.    "(function refract\n"
  10669.    "  (signature float\n"
  10670.    "    (parameters\n"
  10671.    "      (declare (in) float I)\n"
  10672.    "      (declare (in) float N)\n"
  10673.    "      (declare (in) float eta))\n"
  10674.    "    ())\n"
  10675.    "  (signature vec2\n"
  10676.    "    (parameters\n"
  10677.    "      (declare (in) vec2 I)\n"
  10678.    "      (declare (in) vec2 N)\n"
  10679.    "      (declare (in) float eta))\n"
  10680.    "    ())\n"
  10681.    "  (signature vec3\n"
  10682.    "    (parameters\n"
  10683.    "      (declare (in) vec3 I)\n"
  10684.    "      (declare (in) vec3 N)\n"
  10685.    "      (declare (in) float eta))\n"
  10686.    "    ())\n"
  10687.    "  (signature vec4\n"
  10688.    "    (parameters\n"
  10689.    "      (declare (in) vec4 I)\n"
  10690.    "      (declare (in) vec4 N)\n"
  10691.    "      (declare (in) float eta))\n"
  10692.    "    ()))\n"
  10693.    "(function matrixCompMult\n"
  10694.    "  (signature mat2\n"
  10695.    "    (parameters\n"
  10696.    "      (declare (in) mat2 x)\n"
  10697.    "      (declare (in) mat2 y))\n"
  10698.    "    ())\n"
  10699.    "  (signature mat3\n"
  10700.    "    (parameters\n"
  10701.    "      (declare (in) mat3 x)\n"
  10702.    "      (declare (in) mat3 y))\n"
  10703.    "    ())\n"
  10704.    "  (signature mat4\n"
  10705.    "    (parameters\n"
  10706.    "      (declare (in) mat4 x)\n"
  10707.    "      (declare (in) mat4 y))\n"
  10708.    "    ()))\n"
  10709.    "(function lessThan\n"
  10710.    "  (signature bvec2\n"
  10711.    "    (parameters\n"
  10712.    "      (declare (in) vec2 x)\n"
  10713.    "      (declare (in) vec2 y))\n"
  10714.    "    ())\n"
  10715.    "  (signature bvec3\n"
  10716.    "    (parameters\n"
  10717.    "      (declare (in) vec3 x)\n"
  10718.    "      (declare (in) vec3 y))\n"
  10719.    "    ())\n"
  10720.    "  (signature bvec4\n"
  10721.    "    (parameters\n"
  10722.    "      (declare (in) vec4 x)\n"
  10723.    "      (declare (in) vec4 y))\n"
  10724.    "    ())\n"
  10725.    "  (signature bvec2\n"
  10726.    "    (parameters\n"
  10727.    "      (declare (in) ivec2 x)\n"
  10728.    "      (declare (in) ivec2 y))\n"
  10729.    "    ())\n"
  10730.    "  (signature bvec3\n"
  10731.    "    (parameters\n"
  10732.    "      (declare (in) ivec3 x)\n"
  10733.    "      (declare (in) ivec3 y))\n"
  10734.    "    ())\n"
  10735.    "  (signature bvec4\n"
  10736.    "    (parameters\n"
  10737.    "      (declare (in) ivec4 x)\n"
  10738.    "      (declare (in) ivec4 y))\n"
  10739.    "    ()))\n"
  10740.    "(function lessThanEqual\n"
  10741.    "  (signature bvec2\n"
  10742.    "    (parameters\n"
  10743.    "      (declare (in) vec2 x)\n"
  10744.    "      (declare (in) vec2 y))\n"
  10745.    "    ())\n"
  10746.    "  (signature bvec3\n"
  10747.    "    (parameters\n"
  10748.    "      (declare (in) vec3 x)\n"
  10749.    "      (declare (in) vec3 y))\n"
  10750.    "    ())\n"
  10751.    "  (signature bvec4\n"
  10752.    "    (parameters\n"
  10753.    "      (declare (in) vec4 x)\n"
  10754.    "      (declare (in) vec4 y))\n"
  10755.    "    ())\n"
  10756.    "  (signature bvec2\n"
  10757.    "    (parameters\n"
  10758.    "      (declare (in) ivec2 x)\n"
  10759.    "      (declare (in) ivec2 y))\n"
  10760.    "    ())\n"
  10761.    "  (signature bvec3\n"
  10762.    "    (parameters\n"
  10763.    "      (declare (in) ivec3 x)\n"
  10764.    "      (declare (in) ivec3 y))\n"
  10765.    "    ())\n"
  10766.    "  (signature bvec4\n"
  10767.    "    (parameters\n"
  10768.    "      (declare (in) ivec4 x)\n"
  10769.    "      (declare (in) ivec4 y))\n"
  10770.    "    ()))\n"
  10771.    "(function greaterThan\n"
  10772.    "  (signature bvec2\n"
  10773.    "    (parameters\n"
  10774.    "      (declare (in) vec2 x)\n"
  10775.    "      (declare (in) vec2 y))\n"
  10776.    "    ())\n"
  10777.    "  (signature bvec3\n"
  10778.    "    (parameters\n"
  10779.    "      (declare (in) vec3 x)\n"
  10780.    "      (declare (in) vec3 y))\n"
  10781.    "    ())\n"
  10782.    "  (signature bvec4\n"
  10783.    "    (parameters\n"
  10784.    "      (declare (in) vec4 x)\n"
  10785.    "      (declare (in) vec4 y))\n"
  10786.    "    ())\n"
  10787.    "  (signature bvec2\n"
  10788.    "    (parameters\n"
  10789.    "      (declare (in) ivec2 x)\n"
  10790.    "      (declare (in) ivec2 y))\n"
  10791.    "    ())\n"
  10792.    "  (signature bvec3\n"
  10793.    "    (parameters\n"
  10794.    "      (declare (in) ivec3 x)\n"
  10795.    "      (declare (in) ivec3 y))\n"
  10796.    "    ())\n"
  10797.    "  (signature bvec4\n"
  10798.    "    (parameters\n"
  10799.    "      (declare (in) ivec4 x)\n"
  10800.    "      (declare (in) ivec4 y))\n"
  10801.    "    ()))\n"
  10802.    "(function greaterThanEqual\n"
  10803.    "  (signature bvec2\n"
  10804.    "    (parameters\n"
  10805.    "      (declare (in) vec2 x)\n"
  10806.    "      (declare (in) vec2 y))\n"
  10807.    "    ())\n"
  10808.    "  (signature bvec3\n"
  10809.    "    (parameters\n"
  10810.    "      (declare (in) vec3 x)\n"
  10811.    "      (declare (in) vec3 y))\n"
  10812.    "    ())\n"
  10813.    "  (signature bvec4\n"
  10814.    "    (parameters\n"
  10815.    "      (declare (in) vec4 x)\n"
  10816.    "      (declare (in) vec4 y))\n"
  10817.    "    ())\n"
  10818.    "  (signature bvec2\n"
  10819.    "    (parameters\n"
  10820.    "      (declare (in) ivec2 x)\n"
  10821.    "      (declare (in) ivec2 y))\n"
  10822.    "    ())\n"
  10823.    "  (signature bvec3\n"
  10824.    "    (parameters\n"
  10825.    "      (declare (in) ivec3 x)\n"
  10826.    "      (declare (in) ivec3 y))\n"
  10827.    "    ())\n"
  10828.    "  (signature bvec4\n"
  10829.    "    (parameters\n"
  10830.    "      (declare (in) ivec4 x)\n"
  10831.    "      (declare (in) ivec4 y))\n"
  10832.    "    ()))\n"
  10833.    "(function equal\n"
  10834.    "  (signature bvec2\n"
  10835.    "    (parameters\n"
  10836.    "      (declare (in) vec2 x)\n"
  10837.    "      (declare (in) vec2 y))\n"
  10838.    "    ())\n"
  10839.    "  (signature bvec3\n"
  10840.    "    (parameters\n"
  10841.    "      (declare (in) vec3 x)\n"
  10842.    "      (declare (in) vec3 y))\n"
  10843.    "    ())\n"
  10844.    "  (signature bvec4\n"
  10845.    "    (parameters\n"
  10846.    "      (declare (in) vec4 x)\n"
  10847.    "      (declare (in) vec4 y))\n"
  10848.    "    ())\n"
  10849.    "  (signature bvec2\n"
  10850.    "    (parameters\n"
  10851.    "      (declare (in) ivec2 x)\n"
  10852.    "      (declare (in) ivec2 y))\n"
  10853.    "    ())\n"
  10854.    "  (signature bvec3\n"
  10855.    "    (parameters\n"
  10856.    "      (declare (in) ivec3 x)\n"
  10857.    "      (declare (in) ivec3 y))\n"
  10858.    "    ())\n"
  10859.    "  (signature bvec4\n"
  10860.    "    (parameters\n"
  10861.    "      (declare (in) ivec4 x)\n"
  10862.    "      (declare (in) ivec4 y))\n"
  10863.    "    ())\n"
  10864.    "  (signature bvec2\n"
  10865.    "    (parameters\n"
  10866.    "      (declare (in) bvec2 x)\n"
  10867.    "      (declare (in) bvec2 y))\n"
  10868.    "    ())\n"
  10869.    "  (signature bvec3\n"
  10870.    "    (parameters\n"
  10871.    "      (declare (in) bvec3 x)\n"
  10872.    "      (declare (in) bvec3 y))\n"
  10873.    "    ())\n"
  10874.    "  (signature bvec4\n"
  10875.    "    (parameters\n"
  10876.    "      (declare (in) bvec4 x)\n"
  10877.    "      (declare (in) bvec4 y))\n"
  10878.    "    ()))\n"
  10879.    "(function notEqual\n"
  10880.    "  (signature bvec2\n"
  10881.    "    (parameters\n"
  10882.    "      (declare (in) vec2 x)\n"
  10883.    "      (declare (in) vec2 y))\n"
  10884.    "    ())\n"
  10885.    "  (signature bvec3\n"
  10886.    "    (parameters\n"
  10887.    "      (declare (in) vec3 x)\n"
  10888.    "      (declare (in) vec3 y))\n"
  10889.    "    ())\n"
  10890.    "  (signature bvec4\n"
  10891.    "    (parameters\n"
  10892.    "      (declare (in) vec4 x)\n"
  10893.    "      (declare (in) vec4 y))\n"
  10894.    "    ())\n"
  10895.    "  (signature bvec2\n"
  10896.    "    (parameters\n"
  10897.    "      (declare (in) ivec2 x)\n"
  10898.    "      (declare (in) ivec2 y))\n"
  10899.    "    ())\n"
  10900.    "  (signature bvec3\n"
  10901.    "    (parameters\n"
  10902.    "      (declare (in) ivec3 x)\n"
  10903.    "      (declare (in) ivec3 y))\n"
  10904.    "    ())\n"
  10905.    "  (signature bvec4\n"
  10906.    "    (parameters\n"
  10907.    "      (declare (in) ivec4 x)\n"
  10908.    "      (declare (in) ivec4 y))\n"
  10909.    "    ())\n"
  10910.    "  (signature bvec2\n"
  10911.    "    (parameters\n"
  10912.    "      (declare (in) bvec2 x)\n"
  10913.    "      (declare (in) bvec2 y))\n"
  10914.    "    ())\n"
  10915.    "  (signature bvec3\n"
  10916.    "    (parameters\n"
  10917.    "      (declare (in) bvec3 x)\n"
  10918.    "      (declare (in) bvec3 y))\n"
  10919.    "    ())\n"
  10920.    "  (signature bvec4\n"
  10921.    "    (parameters\n"
  10922.    "      (declare (in) bvec4 x)\n"
  10923.    "      (declare (in) bvec4 y))\n"
  10924.    "    ()))\n"
  10925.    "(function any\n"
  10926.    "  (signature bool\n"
  10927.    "    (parameters\n"
  10928.    "      (declare (in) bvec2 x))\n"
  10929.    "    ())\n"
  10930.    "  (signature bool\n"
  10931.    "    (parameters\n"
  10932.    "      (declare (in) bvec3 x))\n"
  10933.    "    ())\n"
  10934.    "  (signature bool\n"
  10935.    "    (parameters\n"
  10936.    "      (declare (in) bvec4 x))\n"
  10937.    "    ()))\n"
  10938.    "(function all\n"
  10939.    "  (signature bool\n"
  10940.    "    (parameters\n"
  10941.    "      (declare (in) bvec2 x))\n"
  10942.    "    ())\n"
  10943.    "  (signature bool\n"
  10944.    "    (parameters\n"
  10945.    "      (declare (in) bvec3 x))\n"
  10946.    "    ())\n"
  10947.    "  (signature bool\n"
  10948.    "    (parameters\n"
  10949.    "      (declare (in) bvec4 x))\n"
  10950.    "    ()))\n"
  10951.    "(function not\n"
  10952.    "  (signature bvec2\n"
  10953.    "    (parameters\n"
  10954.    "      (declare (in) bvec2 x))\n"
  10955.    "    ())\n"
  10956.    "  (signature bvec3\n"
  10957.    "    (parameters\n"
  10958.    "      (declare (in) bvec3 x))\n"
  10959.    "    ())\n"
  10960.    "  (signature bvec4\n"
  10961.    "    (parameters\n"
  10962.    "      (declare (in) bvec4 x))\n"
  10963.    "    ()))\n"
  10964.    "(function texture1D\n"
  10965.    "  (signature vec4\n"
  10966.    "    (parameters\n"
  10967.    "      (declare (in) sampler1D sampler)\n"
  10968.    "      (declare (in) float coord))\n"
  10969.    "    ()))\n"
  10970.    "(function texture1DProj\n"
  10971.    "  (signature vec4\n"
  10972.    "    (parameters\n"
  10973.    "      (declare (in) sampler1D sampler)\n"
  10974.    "      (declare (in) vec2 coord))\n"
  10975.    "    ())\n"
  10976.    "  (signature vec4\n"
  10977.    "    (parameters\n"
  10978.    "      (declare (in) sampler1D sampler)\n"
  10979.    "      (declare (in) vec4 coord))\n"
  10980.    "    ()))\n"
  10981.    "(function texture2D\n"
  10982.    "  (signature vec4\n"
  10983.    "    (parameters\n"
  10984.    "      (declare (in) sampler2D sampler)\n"
  10985.    "      (declare (in) vec2 coord))\n"
  10986.    "    ()))\n"
  10987.    "(function texture2DProj\n"
  10988.    "  (signature vec4\n"
  10989.    "    (parameters\n"
  10990.    "      (declare (in) sampler2D sampler)\n"
  10991.    "      (declare (in) vec3 coord))\n"
  10992.    "    ())\n"
  10993.    "  (signature vec4\n"
  10994.    "    (parameters\n"
  10995.    "      (declare (in) sampler2D sampler)\n"
  10996.    "      (declare (in) vec4 coord))\n"
  10997.    "    ()))\n"
  10998.    "(function texture3D\n"
  10999.    "  (signature vec4\n"
  11000.    "    (parameters\n"
  11001.    "      (declare (in) sampler3D sampler)\n"
  11002.    "      (declare (in) vec3 coord))\n"
  11003.    "    ()))\n"
  11004.    "(function texture3DProj\n"
  11005.    "  (signature vec4\n"
  11006.    "    (parameters\n"
  11007.    "      (declare (in) sampler3D sampler)\n"
  11008.    "      (declare (in) vec4 coord))\n"
  11009.    "    ()))\n"
  11010.    "(function textureCube\n"
  11011.    "  (signature vec4\n"
  11012.    "    (parameters\n"
  11013.    "      (declare (in) samplerCube sampler)\n"
  11014.    "      (declare (in) vec3 coord))\n"
  11015.    "    ()))\n"
  11016.    "(function shadow1D\n"
  11017.    "  (signature vec4\n"
  11018.    "    (parameters\n"
  11019.    "      (declare (in) sampler1DShadow sampler)\n"
  11020.    "      (declare (in) vec3 coord))\n"
  11021.    "    ()))\n"
  11022.    "(function shadow2D\n"
  11023.    "  (signature vec4\n"
  11024.    "    (parameters\n"
  11025.    "      (declare (in) sampler2DShadow sampler)\n"
  11026.    "      (declare (in) vec3 coord))\n"
  11027.    "    ()))\n"
  11028.    "(function shadow1DProj\n"
  11029.    "  (signature vec4\n"
  11030.    "    (parameters\n"
  11031.    "      (declare (in) sampler1DShadow sampler)\n"
  11032.    "      (declare (in) vec4 coord))\n"
  11033.    "    ()))\n"
  11034.    "(function shadow2DProj\n"
  11035.    "  (signature vec4\n"
  11036.    "    (parameters\n"
  11037.    "      (declare (in) sampler2DShadow sampler)\n"
  11038.    "      (declare (in) vec4 coord))\n"
  11039.    "    ()))\n"
  11040.    "(function noise1\n"
  11041.    "  (signature float\n"
  11042.    "    (parameters\n"
  11043.    "      (declare (in) float x))\n"
  11044.    "    ())\n"
  11045.    "  (signature float\n"
  11046.    "    (parameters\n"
  11047.    "      (declare (in) vec2 x))\n"
  11048.    "    ())\n"
  11049.    "  (signature float\n"
  11050.    "    (parameters\n"
  11051.    "      (declare (in) vec3 x))\n"
  11052.    "    ())\n"
  11053.    "  (signature float\n"
  11054.    "    (parameters\n"
  11055.    "      (declare (in) vec4 x))\n"
  11056.    "    ()))\n"
  11057.    "(function noise2\n"
  11058.    "  (signature vec2\n"
  11059.    "    (parameters\n"
  11060.    "      (declare (in) float x))\n"
  11061.    "    ())\n"
  11062.    "  (signature vec2\n"
  11063.    "    (parameters\n"
  11064.    "      (declare (in) vec2 x))\n"
  11065.    "    ())\n"
  11066.    "  (signature vec2\n"
  11067.    "    (parameters\n"
  11068.    "      (declare (in) vec3 x))\n"
  11069.    "    ())\n"
  11070.    "  (signature vec2\n"
  11071.    "    (parameters\n"
  11072.    "      (declare (in) vec4 x))\n"
  11073.    "    ()))\n"
  11074.    "(function noise3\n"
  11075.    "  (signature vec3\n"
  11076.    "    (parameters\n"
  11077.    "      (declare (in) float x))\n"
  11078.    "    ())\n"
  11079.    "  (signature vec3\n"
  11080.    "    (parameters\n"
  11081.    "      (declare (in) vec2 x))\n"
  11082.    "    ())\n"
  11083.    "  (signature vec3\n"
  11084.    "    (parameters\n"
  11085.    "      (declare (in) vec3 x))\n"
  11086.    "    ())\n"
  11087.    "  (signature vec3\n"
  11088.    "    (parameters\n"
  11089.    "      (declare (in) vec4 x))\n"
  11090.    "    ()))\n"
  11091.    "(function noise4\n"
  11092.    "  (signature vec4\n"
  11093.    "    (parameters\n"
  11094.    "      (declare (in) float x))\n"
  11095.    "    ())\n"
  11096.    "  (signature vec4\n"
  11097.    "    (parameters\n"
  11098.    "      (declare (in) vec2 x))\n"
  11099.    "    ())\n"
  11100.    "  (signature vec4\n"
  11101.    "    (parameters\n"
  11102.    "      (declare (in) vec3 x))\n"
  11103.    "    ())\n"
  11104.    "  (signature vec4\n"
  11105.    "    (parameters\n"
  11106.    "      (declare (in) vec4 x))\n"
  11107.    "    ())))"
  11108. ;
  11109. static const char *functions_for_110_glsl [] = {
  11110.    builtin_abs,
  11111.    builtin_acos,
  11112.    builtin_all,
  11113.    builtin_any,
  11114.    builtin_asin,
  11115.    builtin_atan,
  11116.    builtin_ceil,
  11117.    builtin_clamp,
  11118.    builtin_cos,
  11119.    builtin_cross,
  11120.    builtin_degrees,
  11121.    builtin_distance,
  11122.    builtin_dot,
  11123.    builtin_equal,
  11124.    builtin_exp,
  11125.    builtin_exp2,
  11126.    builtin_faceforward,
  11127.    builtin_floor,
  11128.    builtin_fract,
  11129.    builtin_greaterThan,
  11130.    builtin_greaterThanEqual,
  11131.    builtin_inversesqrt,
  11132.    builtin_length,
  11133.    builtin_lessThan,
  11134.    builtin_lessThanEqual,
  11135.    builtin_log,
  11136.    builtin_log2,
  11137.    builtin_matrixCompMult,
  11138.    builtin_max,
  11139.    builtin_min,
  11140.    builtin_mix,
  11141.    builtin_mod,
  11142.    builtin_noise1,
  11143.    builtin_noise2,
  11144.    builtin_noise3,
  11145.    builtin_noise4,
  11146.    builtin_normalize,
  11147.    builtin_not,
  11148.    builtin_notEqual,
  11149.    builtin_pow,
  11150.    builtin_radians,
  11151.    builtin_reflect,
  11152.    builtin_refract,
  11153.    builtin_shadow1D,
  11154.    builtin_shadow1DProj,
  11155.    builtin_shadow2D,
  11156.    builtin_shadow2DProj,
  11157.    builtin_sign,
  11158.    builtin_sin,
  11159.    builtin_smoothstep,
  11160.    builtin_sqrt,
  11161.    builtin_step,
  11162.    builtin_tan,
  11163.    builtin_texture1D,
  11164.    builtin_texture1DProj,
  11165.    builtin_texture2D,
  11166.    builtin_texture2DProj,
  11167.    builtin_texture3D,
  11168.    builtin_texture3DProj,
  11169.    builtin_textureCube,
  11170. };
  11171. static const char prototypes_for_110_vert[] =
  11172.    "(\n"
  11173.    "(function ftransform\n"
  11174.    "  (signature vec4\n"
  11175.    "    (parameters)\n"
  11176.    "    ()))\n"
  11177.    "(function texture1DLod\n"
  11178.    "  (signature vec4\n"
  11179.    "    (parameters\n"
  11180.    "      (declare (in) sampler1D sampler)\n"
  11181.    "      (declare (in) float coord)\n"
  11182.    "      (declare (in) float lod))\n"
  11183.    "    ()))\n"
  11184.    "(function texture1DProjLod\n"
  11185.    "  (signature vec4\n"
  11186.    "    (parameters\n"
  11187.    "      (declare (in) sampler1D sampler)\n"
  11188.    "      (declare (in) vec2 coord)\n"
  11189.    "      (declare (in) float lod))\n"
  11190.    "    ())\n"
  11191.    "  (signature vec4\n"
  11192.    "    (parameters\n"
  11193.    "      (declare (in) sampler1D sampler)\n"
  11194.    "      (declare (in) vec4 coord)\n"
  11195.    "      (declare (in) float lod))\n"
  11196.    "    ()))\n"
  11197.    "(function texture2DLod\n"
  11198.    "  (signature vec4\n"
  11199.    "    (parameters\n"
  11200.    "      (declare (in) sampler2D sampler)\n"
  11201.    "      (declare (in) vec2 coord)\n"
  11202.    "      (declare (in) float lod))\n"
  11203.    "    ()))\n"
  11204.    "(function texture2DProjLod\n"
  11205.    "  (signature vec4\n"
  11206.    "    (parameters\n"
  11207.    "      (declare (in) sampler2D sampler)\n"
  11208.    "      (declare (in) vec3 coord)\n"
  11209.    "      (declare (in) float lod))\n"
  11210.    "    ())\n"
  11211.    "  (signature vec4\n"
  11212.    "    (parameters\n"
  11213.    "      (declare (in) sampler2D sampler)\n"
  11214.    "      (declare (in) vec4 coord)\n"
  11215.    "      (declare (in) float lod))\n"
  11216.    "    ()))\n"
  11217.    "(function texture3DLod\n"
  11218.    "  (signature vec4\n"
  11219.    "    (parameters\n"
  11220.    "      (declare (in) sampler3D sampler)\n"
  11221.    "      (declare (in) vec3 coord)\n"
  11222.    "      (declare (in) float lod))\n"
  11223.    "    ()))\n"
  11224.    "(function texture3DProjLod\n"
  11225.    "  (signature vec4\n"
  11226.    "    (parameters\n"
  11227.    "      (declare (in) sampler3D sampler)\n"
  11228.    "      (declare (in) vec4 coord)\n"
  11229.    "      (declare (in) float lod))\n"
  11230.    "    ()))\n"
  11231.    "(function textureCubeLod\n"
  11232.    "  (signature vec4\n"
  11233.    "    (parameters\n"
  11234.    "      (declare (in) samplerCube sampler)\n"
  11235.    "      (declare (in) vec3 coord)\n"
  11236.    "      (declare (in) float lod))\n"
  11237.    "    ()))\n"
  11238.    "(function shadow1DLod\n"
  11239.    "  (signature vec4\n"
  11240.    "    (parameters\n"
  11241.    "      (declare (in) sampler1DShadow sampler)\n"
  11242.    "      (declare (in) vec3 coord)\n"
  11243.    "      (declare (in) float lod))\n"
  11244.    "    ()))\n"
  11245.    "(function shadow2DLod\n"
  11246.    "  (signature vec4\n"
  11247.    "    (parameters\n"
  11248.    "      (declare (in) sampler2DShadow sampler)\n"
  11249.    "      (declare (in) vec3 coord)\n"
  11250.    "      (declare (in) float lod))\n"
  11251.    "    ()))\n"
  11252.    "(function shadow1DProjLod\n"
  11253.    "  (signature vec4\n"
  11254.    "    (parameters\n"
  11255.    "      (declare (in) sampler1DShadow sampler)\n"
  11256.    "      (declare (in) vec4 coord)\n"
  11257.    "      (declare (in) float lod))\n"
  11258.    "    ()))\n"
  11259.    "(function shadow2DProjLod\n"
  11260.    "  (signature vec4\n"
  11261.    "    (parameters\n"
  11262.    "      (declare (in) sampler2DShadow sampler)\n"
  11263.    "      (declare (in) vec4 coord)\n"
  11264.    "      (declare (in) float lod))\n"
  11265.    "    ())))"
  11266. ;
  11267. static const char *functions_for_110_vert [] = {
  11268.    builtin_ftransform,
  11269.    builtin_shadow1DLod,
  11270.    builtin_shadow1DProjLod,
  11271.    builtin_shadow2DLod,
  11272.    builtin_shadow2DProjLod,
  11273.    builtin_texture1DLod,
  11274.    builtin_texture1DProjLod,
  11275.    builtin_texture2DLod,
  11276.    builtin_texture2DProjLod,
  11277.    builtin_texture3DLod,
  11278.    builtin_texture3DProjLod,
  11279.    builtin_textureCubeLod,
  11280. };
  11281. static const char prototypes_for_120_frag[] =
  11282.    "(\n"
  11283.    "(function texture1D\n"
  11284.    "  (signature vec4\n"
  11285.    "    (parameters\n"
  11286.    "      (declare (in) sampler1D sampler)\n"
  11287.    "      (declare (in) float coord)\n"
  11288.    "      (declare (in) float bias))\n"
  11289.    "    ()))\n"
  11290.    "(function texture1DProj\n"
  11291.    "  (signature vec4\n"
  11292.    "    (parameters\n"
  11293.    "      (declare (in) sampler1D sampler)\n"
  11294.    "      (declare (in) vec2 coord)\n"
  11295.    "      (declare (in) float bias))\n"
  11296.    "    ())\n"
  11297.    "  (signature vec4\n"
  11298.    "    (parameters\n"
  11299.    "      (declare (in) sampler1D sampler)\n"
  11300.    "      (declare (in) vec4 coord)\n"
  11301.    "      (declare (in) float bias))\n"
  11302.    "    ()))\n"
  11303.    "(function texture2D\n"
  11304.    "  (signature vec4\n"
  11305.    "    (parameters\n"
  11306.    "      (declare (in) sampler2D sampler)\n"
  11307.    "      (declare (in) vec2 coord)\n"
  11308.    "      (declare (in) float bias))\n"
  11309.    "    ()))\n"
  11310.    "(function texture2DProj\n"
  11311.    "  (signature vec4\n"
  11312.    "    (parameters\n"
  11313.    "      (declare (in) sampler2D sampler)\n"
  11314.    "      (declare (in) vec3 coord)\n"
  11315.    "      (declare (in) float bias))\n"
  11316.    "    ())\n"
  11317.    "  (signature vec4\n"
  11318.    "    (parameters\n"
  11319.    "      (declare (in) sampler2D sampler)\n"
  11320.    "      (declare (in) vec4 coord)\n"
  11321.    "      (declare (in) float bias))\n"
  11322.    "    ()))\n"
  11323.    "(function texture3D\n"
  11324.    "  (signature vec4\n"
  11325.    "    (parameters\n"
  11326.    "      (declare (in) sampler3D sampler)\n"
  11327.    "      (declare (in) vec3 coord)\n"
  11328.    "      (declare (in) float bias))\n"
  11329.    "    ()))\n"
  11330.    "(function texture3DProj\n"
  11331.    "  (signature vec4\n"
  11332.    "    (parameters\n"
  11333.    "      (declare (in) sampler3D sampler)\n"
  11334.    "      (declare (in) vec4 coord)\n"
  11335.    "      (declare (in) float bias))\n"
  11336.    "    ()))\n"
  11337.    "(function textureCube\n"
  11338.    "  (signature vec4\n"
  11339.    "    (parameters\n"
  11340.    "      (declare (in) samplerCube sampler)\n"
  11341.    "      (declare (in) vec3 coord)\n"
  11342.    "      (declare (in) float bias))\n"
  11343.    "    ()))\n"
  11344.    "(function shadow1D\n"
  11345.    "  (signature vec4\n"
  11346.    "    (parameters\n"
  11347.    "      (declare (in) sampler1DShadow sampler)\n"
  11348.    "      (declare (in) vec3 coord)\n"
  11349.    "      (declare (in) float bias))\n"
  11350.    "    ()))\n"
  11351.    "(function shadow2D\n"
  11352.    "  (signature vec4\n"
  11353.    "    (parameters\n"
  11354.    "      (declare (in) sampler2DShadow sampler)\n"
  11355.    "      (declare (in) vec3 coord)\n"
  11356.    "      (declare (in) float bias))\n"
  11357.    "    ()))\n"
  11358.    "(function shadow1DProj\n"
  11359.    "  (signature vec4\n"
  11360.    "    (parameters\n"
  11361.    "      (declare (in) sampler1DShadow sampler)\n"
  11362.    "      (declare (in) vec4 coord)\n"
  11363.    "      (declare (in) float bias))\n"
  11364.    "    ()))\n"
  11365.    "(function shadow2DProj\n"
  11366.    "  (signature vec4\n"
  11367.    "    (parameters\n"
  11368.    "      (declare (in) sampler2DShadow sampler)\n"
  11369.    "      (declare (in) vec4 coord)\n"
  11370.    "      (declare (in) float bias))\n"
  11371.    "    ()))\n"
  11372.    "(function dFdx\n"
  11373.    "  (signature float\n"
  11374.    "    (parameters\n"
  11375.    "      (declare (in) float p))\n"
  11376.    "    ())\n"
  11377.    "  (signature vec2\n"
  11378.    "    (parameters\n"
  11379.    "      (declare (in) vec2 p))\n"
  11380.    "    ())\n"
  11381.    "  (signature vec3\n"
  11382.    "    (parameters\n"
  11383.    "      (declare (in) vec3 p))\n"
  11384.    "    ())\n"
  11385.    "  (signature vec4\n"
  11386.    "    (parameters\n"
  11387.    "      (declare (in) vec4 p))\n"
  11388.    "    ()))\n"
  11389.    "(function dFdy\n"
  11390.    "  (signature float\n"
  11391.    "    (parameters\n"
  11392.    "      (declare (in) float p))\n"
  11393.    "    ())\n"
  11394.    "  (signature vec2\n"
  11395.    "    (parameters\n"
  11396.    "      (declare (in) vec2 p))\n"
  11397.    "    ())\n"
  11398.    "  (signature vec3\n"
  11399.    "    (parameters\n"
  11400.    "      (declare (in) vec3 p))\n"
  11401.    "    ())\n"
  11402.    "  (signature vec4\n"
  11403.    "    (parameters\n"
  11404.    "      (declare (in) vec4 p))\n"
  11405.    "    ()))\n"
  11406.    "(function fwidth\n"
  11407.    "  (signature float\n"
  11408.    "    (parameters\n"
  11409.    "      (declare (in) float p))\n"
  11410.    "    ())\n"
  11411.    "  (signature vec2\n"
  11412.    "    (parameters\n"
  11413.    "      (declare (in) vec2 p))\n"
  11414.    "    ())\n"
  11415.    "  (signature vec3\n"
  11416.    "    (parameters\n"
  11417.    "      (declare (in) vec3 p))\n"
  11418.    "    ())\n"
  11419.    "  (signature vec4\n"
  11420.    "    (parameters\n"
  11421.    "      (declare (in) vec4 p))\n"
  11422.    "    ())))"
  11423. ;
  11424. static const char *functions_for_120_frag [] = {
  11425.    builtin_dFdx,
  11426.    builtin_dFdy,
  11427.    builtin_fwidth,
  11428.    builtin_shadow1D,
  11429.    builtin_shadow1DProj,
  11430.    builtin_shadow2D,
  11431.    builtin_shadow2DProj,
  11432.    builtin_texture1D,
  11433.    builtin_texture1DProj,
  11434.    builtin_texture2D,
  11435.    builtin_texture2DProj,
  11436.    builtin_texture3D,
  11437.    builtin_texture3DProj,
  11438.    builtin_textureCube,
  11439. };
  11440. static const char prototypes_for_120_glsl[] =
  11441.    "(\n"
  11442.    "(function radians\n"
  11443.    "  (signature float\n"
  11444.    "    (parameters\n"
  11445.    "      (declare (in) float degrees))\n"
  11446.    "    ())\n"
  11447.    "  (signature vec2\n"
  11448.    "    (parameters\n"
  11449.    "      (declare (in) vec2 degrees))\n"
  11450.    "    ())\n"
  11451.    "  (signature vec3\n"
  11452.    "    (parameters\n"
  11453.    "      (declare (in) vec3 degrees))\n"
  11454.    "    ())\n"
  11455.    "  (signature vec4\n"
  11456.    "    (parameters\n"
  11457.    "      (declare (in) vec4 degrees))\n"
  11458.    "    ()))\n"
  11459.    "(function degrees\n"
  11460.    "  (signature float\n"
  11461.    "    (parameters\n"
  11462.    "      (declare (in) float radians))\n"
  11463.    "    ())\n"
  11464.    "  (signature vec2\n"
  11465.    "    (parameters\n"
  11466.    "      (declare (in) vec2 radians))\n"
  11467.    "    ())\n"
  11468.    "  (signature vec3\n"
  11469.    "    (parameters\n"
  11470.    "      (declare (in) vec3 radians))\n"
  11471.    "    ())\n"
  11472.    "  (signature vec4\n"
  11473.    "    (parameters\n"
  11474.    "      (declare (in) vec4 radians))\n"
  11475.    "    ()))\n"
  11476.    "(function sin\n"
  11477.    "  (signature float\n"
  11478.    "    (parameters\n"
  11479.    "      (declare (in) float angle))\n"
  11480.    "    ())\n"
  11481.    "  (signature vec2\n"
  11482.    "    (parameters\n"
  11483.    "      (declare (in) vec2 angle))\n"
  11484.    "    ())\n"
  11485.    "  (signature vec3\n"
  11486.    "    (parameters\n"
  11487.    "      (declare (in) vec3 angle))\n"
  11488.    "    ())\n"
  11489.    "  (signature vec4\n"
  11490.    "    (parameters\n"
  11491.    "      (declare (in) vec4 angle))\n"
  11492.    "    ()))\n"
  11493.    "(function cos\n"
  11494.    "  (signature float\n"
  11495.    "    (parameters\n"
  11496.    "      (declare (in) float angle))\n"
  11497.    "    ())\n"
  11498.    "  (signature vec2\n"
  11499.    "    (parameters\n"
  11500.    "      (declare (in) vec2 angle))\n"
  11501.    "    ())\n"
  11502.    "  (signature vec3\n"
  11503.    "    (parameters\n"
  11504.    "      (declare (in) vec3 angle))\n"
  11505.    "    ())\n"
  11506.    "  (signature vec4\n"
  11507.    "    (parameters\n"
  11508.    "      (declare (in) vec4 angle))\n"
  11509.    "    ()))\n"
  11510.    "(function tan\n"
  11511.    "  (signature float\n"
  11512.    "    (parameters\n"
  11513.    "      (declare (in) float angle))\n"
  11514.    "    ())\n"
  11515.    "  (signature vec2\n"
  11516.    "    (parameters\n"
  11517.    "      (declare (in) vec2 angle))\n"
  11518.    "    ())\n"
  11519.    "  (signature vec3\n"
  11520.    "    (parameters\n"
  11521.    "      (declare (in) vec3 angle))\n"
  11522.    "    ())\n"
  11523.    "  (signature vec4\n"
  11524.    "    (parameters\n"
  11525.    "      (declare (in) vec4 angle))\n"
  11526.    "    ()))\n"
  11527.    "(function asin\n"
  11528.    "  (signature float\n"
  11529.    "    (parameters\n"
  11530.    "      (declare (in) float angle))\n"
  11531.    "    ())\n"
  11532.    "  (signature vec2\n"
  11533.    "    (parameters\n"
  11534.    "      (declare (in) vec2 angle))\n"
  11535.    "    ())\n"
  11536.    "  (signature vec3\n"
  11537.    "    (parameters\n"
  11538.    "      (declare (in) vec3 angle))\n"
  11539.    "    ())\n"
  11540.    "  (signature vec4\n"
  11541.    "    (parameters\n"
  11542.    "      (declare (in) vec4 angle))\n"
  11543.    "    ()))\n"
  11544.    "(function acos\n"
  11545.    "  (signature float\n"
  11546.    "    (parameters\n"
  11547.    "      (declare (in) float angle))\n"
  11548.    "    ())\n"
  11549.    "  (signature vec2\n"
  11550.    "    (parameters\n"
  11551.    "      (declare (in) vec2 angle))\n"
  11552.    "    ())\n"
  11553.    "  (signature vec3\n"
  11554.    "    (parameters\n"
  11555.    "      (declare (in) vec3 angle))\n"
  11556.    "    ())\n"
  11557.    "  (signature vec4\n"
  11558.    "    (parameters\n"
  11559.    "      (declare (in) vec4 angle))\n"
  11560.    "    ()))\n"
  11561.    "(function atan\n"
  11562.    "  (signature float\n"
  11563.    "    (parameters\n"
  11564.    "      (declare (in) float y)\n"
  11565.    "      (declare (in) float x))\n"
  11566.    "    ())\n"
  11567.    "  (signature vec2\n"
  11568.    "    (parameters\n"
  11569.    "      (declare (in) vec2 y)\n"
  11570.    "      (declare (in) vec2 x))\n"
  11571.    "    ())\n"
  11572.    "  (signature vec3\n"
  11573.    "    (parameters\n"
  11574.    "      (declare (in) vec3 y)\n"
  11575.    "      (declare (in) vec3 x))\n"
  11576.    "    ())\n"
  11577.    "  (signature vec4\n"
  11578.    "    (parameters\n"
  11579.    "      (declare (in) vec4 y)\n"
  11580.    "      (declare (in) vec4 x))\n"
  11581.    "    ())\n"
  11582.    "  (signature float\n"
  11583.    "    (parameters\n"
  11584.    "      (declare (in) float y_over_x))\n"
  11585.    "    ())\n"
  11586.    "  (signature vec2\n"
  11587.    "    (parameters\n"
  11588.    "      (declare (in) vec2 y_over_x))\n"
  11589.    "    ())\n"
  11590.    "  (signature vec3\n"
  11591.    "    (parameters\n"
  11592.    "      (declare (in) vec3 y_over_x))\n"
  11593.    "    ())\n"
  11594.    "  (signature vec4\n"
  11595.    "    (parameters\n"
  11596.    "      (declare (in) vec4 y_over_x))\n"
  11597.    "    ()))\n"
  11598.    "(function pow\n"
  11599.    "  (signature float\n"
  11600.    "    (parameters\n"
  11601.    "      (declare (in) float x)\n"
  11602.    "      (declare (in) float y))\n"
  11603.    "    ())\n"
  11604.    "  (signature vec2\n"
  11605.    "    (parameters\n"
  11606.    "      (declare (in) vec2 x)\n"
  11607.    "      (declare (in) vec2 y))\n"
  11608.    "    ())\n"
  11609.    "  (signature vec3\n"
  11610.    "    (parameters\n"
  11611.    "      (declare (in) vec3 x)\n"
  11612.    "      (declare (in) vec3 y))\n"
  11613.    "    ())\n"
  11614.    "  (signature vec4\n"
  11615.    "    (parameters\n"
  11616.    "      (declare (in) vec4 x)\n"
  11617.    "      (declare (in) vec4 y))\n"
  11618.    "    ()))\n"
  11619.    "(function exp\n"
  11620.    "  (signature float\n"
  11621.    "    (parameters\n"
  11622.    "      (declare (in) float x))\n"
  11623.    "    ())\n"
  11624.    "  (signature vec2\n"
  11625.    "    (parameters\n"
  11626.    "      (declare (in) vec2 x))\n"
  11627.    "    ())\n"
  11628.    "  (signature vec3\n"
  11629.    "    (parameters\n"
  11630.    "      (declare (in) vec3 x))\n"
  11631.    "    ())\n"
  11632.    "  (signature vec4\n"
  11633.    "    (parameters\n"
  11634.    "      (declare (in) vec4 x))\n"
  11635.    "    ()))\n"
  11636.    "(function log\n"
  11637.    "  (signature float\n"
  11638.    "    (parameters\n"
  11639.    "      (declare (in) float x))\n"
  11640.    "    ())\n"
  11641.    "  (signature vec2\n"
  11642.    "    (parameters\n"
  11643.    "      (declare (in) vec2 x))\n"
  11644.    "    ())\n"
  11645.    "  (signature vec3\n"
  11646.    "    (parameters\n"
  11647.    "      (declare (in) vec3 x))\n"
  11648.    "    ())\n"
  11649.    "  (signature vec4\n"
  11650.    "    (parameters\n"
  11651.    "      (declare (in) vec4 x))\n"
  11652.    "    ()))\n"
  11653.    "(function exp2\n"
  11654.    "  (signature float\n"
  11655.    "    (parameters\n"
  11656.    "      (declare (in) float x))\n"
  11657.    "    ())\n"
  11658.    "  (signature vec2\n"
  11659.    "    (parameters\n"
  11660.    "      (declare (in) vec2 x))\n"
  11661.    "    ())\n"
  11662.    "  (signature vec3\n"
  11663.    "    (parameters\n"
  11664.    "      (declare (in) vec3 x))\n"
  11665.    "    ())\n"
  11666.    "  (signature vec4\n"
  11667.    "    (parameters\n"
  11668.    "      (declare (in) vec4 x))\n"
  11669.    "    ()))\n"
  11670.    "(function log2\n"
  11671.    "  (signature float\n"
  11672.    "    (parameters\n"
  11673.    "      (declare (in) float x))\n"
  11674.    "    ())\n"
  11675.    "  (signature vec2\n"
  11676.    "    (parameters\n"
  11677.    "      (declare (in) vec2 x))\n"
  11678.    "    ())\n"
  11679.    "  (signature vec3\n"
  11680.    "    (parameters\n"
  11681.    "      (declare (in) vec3 x))\n"
  11682.    "    ())\n"
  11683.    "  (signature vec4\n"
  11684.    "    (parameters\n"
  11685.    "      (declare (in) vec4 x))\n"
  11686.    "    ()))\n"
  11687.    "(function sqrt\n"
  11688.    "  (signature float\n"
  11689.    "    (parameters\n"
  11690.    "      (declare (in) float x))\n"
  11691.    "    ())\n"
  11692.    "  (signature vec2\n"
  11693.    "    (parameters\n"
  11694.    "      (declare (in) vec2 x))\n"
  11695.    "    ())\n"
  11696.    "  (signature vec3\n"
  11697.    "    (parameters\n"
  11698.    "      (declare (in) vec3 x))\n"
  11699.    "    ())\n"
  11700.    "  (signature vec4\n"
  11701.    "    (parameters\n"
  11702.    "      (declare (in) vec4 x))\n"
  11703.    "    ()))\n"
  11704.    "(function inversesqrt\n"
  11705.    "  (signature float\n"
  11706.    "    (parameters\n"
  11707.    "      (declare (in) float x))\n"
  11708.    "    ())\n"
  11709.    "  (signature vec2\n"
  11710.    "    (parameters\n"
  11711.    "      (declare (in) vec2 x))\n"
  11712.    "    ())\n"
  11713.    "  (signature vec3\n"
  11714.    "    (parameters\n"
  11715.    "      (declare (in) vec3 x))\n"
  11716.    "    ())\n"
  11717.    "  (signature vec4\n"
  11718.    "    (parameters\n"
  11719.    "      (declare (in) vec4 x))\n"
  11720.    "    ()))\n"
  11721.    "(function abs\n"
  11722.    "  (signature float\n"
  11723.    "    (parameters\n"
  11724.    "      (declare (in) float x))\n"
  11725.    "    ())\n"
  11726.    "  (signature vec2\n"
  11727.    "    (parameters\n"
  11728.    "      (declare (in) vec2 x))\n"
  11729.    "    ())\n"
  11730.    "  (signature vec3\n"
  11731.    "    (parameters\n"
  11732.    "      (declare (in) vec3 x))\n"
  11733.    "    ())\n"
  11734.    "  (signature vec4\n"
  11735.    "    (parameters\n"
  11736.    "      (declare (in) vec4 x))\n"
  11737.    "    ()))\n"
  11738.    "(function sign\n"
  11739.    "  (signature float\n"
  11740.    "    (parameters\n"
  11741.    "      (declare (in) float x))\n"
  11742.    "    ())\n"
  11743.    "  (signature vec2\n"
  11744.    "    (parameters\n"
  11745.    "      (declare (in) vec2 x))\n"
  11746.    "    ())\n"
  11747.    "  (signature vec3\n"
  11748.    "    (parameters\n"
  11749.    "      (declare (in) vec3 x))\n"
  11750.    "    ())\n"
  11751.    "  (signature vec4\n"
  11752.    "    (parameters\n"
  11753.    "      (declare (in) vec4 x))\n"
  11754.    "    ()))\n"
  11755.    "(function floor\n"
  11756.    "  (signature float\n"
  11757.    "    (parameters\n"
  11758.    "      (declare (in) float x))\n"
  11759.    "    ())\n"
  11760.    "  (signature vec2\n"
  11761.    "    (parameters\n"
  11762.    "      (declare (in) vec2 x))\n"
  11763.    "    ())\n"
  11764.    "  (signature vec3\n"
  11765.    "    (parameters\n"
  11766.    "      (declare (in) vec3 x))\n"
  11767.    "    ())\n"
  11768.    "  (signature vec4\n"
  11769.    "    (parameters\n"
  11770.    "      (declare (in) vec4 x))\n"
  11771.    "    ()))\n"
  11772.    "(function ceil\n"
  11773.    "  (signature float\n"
  11774.    "    (parameters\n"
  11775.    "      (declare (in) float x))\n"
  11776.    "    ())\n"
  11777.    "  (signature vec2\n"
  11778.    "    (parameters\n"
  11779.    "      (declare (in) vec2 x))\n"
  11780.    "    ())\n"
  11781.    "  (signature vec3\n"
  11782.    "    (parameters\n"
  11783.    "      (declare (in) vec3 x))\n"
  11784.    "    ())\n"
  11785.    "  (signature vec4\n"
  11786.    "    (parameters\n"
  11787.    "      (declare (in) vec4 x))\n"
  11788.    "    ()))\n"
  11789.    "(function fract\n"
  11790.    "  (signature float\n"
  11791.    "    (parameters\n"
  11792.    "      (declare (in) float x))\n"
  11793.    "    ())\n"
  11794.    "  (signature vec2\n"
  11795.    "    (parameters\n"
  11796.    "      (declare (in) vec2 x))\n"
  11797.    "    ())\n"
  11798.    "  (signature vec3\n"
  11799.    "    (parameters\n"
  11800.    "      (declare (in) vec3 x))\n"
  11801.    "    ())\n"
  11802.    "  (signature vec4\n"
  11803.    "    (parameters\n"
  11804.    "      (declare (in) vec4 x))\n"
  11805.    "    ()))\n"
  11806.    "(function mod\n"
  11807.    "  (signature float\n"
  11808.    "    (parameters\n"
  11809.    "      (declare (in) float x)\n"
  11810.    "      (declare (in) float y))\n"
  11811.    "    ())\n"
  11812.    "  (signature vec2\n"
  11813.    "    (parameters\n"
  11814.    "      (declare (in) vec2 x)\n"
  11815.    "      (declare (in) float y))\n"
  11816.    "    ())\n"
  11817.    "  (signature vec3\n"
  11818.    "    (parameters\n"
  11819.    "      (declare (in) vec3 x)\n"
  11820.    "      (declare (in) float y))\n"
  11821.    "    ())\n"
  11822.    "  (signature vec4\n"
  11823.    "    (parameters\n"
  11824.    "      (declare (in) vec4 x)\n"
  11825.    "      (declare (in) float y))\n"
  11826.    "    ())\n"
  11827.    "  (signature vec2\n"
  11828.    "    (parameters\n"
  11829.    "      (declare (in) vec2 x)\n"
  11830.    "      (declare (in) vec2 y))\n"
  11831.    "    ())\n"
  11832.    "  (signature vec3\n"
  11833.    "    (parameters\n"
  11834.    "      (declare (in) vec3 x)\n"
  11835.    "      (declare (in) vec3 y))\n"
  11836.    "    ())\n"
  11837.    "  (signature vec4\n"
  11838.    "    (parameters\n"
  11839.    "      (declare (in) vec4 x)\n"
  11840.    "      (declare (in) vec4 y))\n"
  11841.    "    ()))\n"
  11842.    "(function min\n"
  11843.    "  (signature float\n"
  11844.    "    (parameters\n"
  11845.    "      (declare (in) float x)\n"
  11846.    "      (declare (in) float y))\n"
  11847.    "    ())\n"
  11848.    "  (signature vec2\n"
  11849.    "    (parameters\n"
  11850.    "      (declare (in) vec2 x)\n"
  11851.    "      (declare (in) vec2 y))\n"
  11852.    "    ())\n"
  11853.    "  (signature vec3\n"
  11854.    "    (parameters\n"
  11855.    "      (declare (in) vec3 x)\n"
  11856.    "      (declare (in) vec3 y))\n"
  11857.    "    ())\n"
  11858.    "  (signature vec4\n"
  11859.    "    (parameters\n"
  11860.    "      (declare (in) vec4 x)\n"
  11861.    "      (declare (in) vec4 y))\n"
  11862.    "    ())\n"
  11863.    "  (signature vec2\n"
  11864.    "    (parameters\n"
  11865.    "      (declare (in) vec2 x)\n"
  11866.    "      (declare (in) float y))\n"
  11867.    "    ())\n"
  11868.    "  (signature vec3\n"
  11869.    "    (parameters\n"
  11870.    "      (declare (in) vec3 x)\n"
  11871.    "      (declare (in) float y))\n"
  11872.    "    ())\n"
  11873.    "  (signature vec4\n"
  11874.    "    (parameters\n"
  11875.    "      (declare (in) vec4 x)\n"
  11876.    "      (declare (in) float y))\n"
  11877.    "    ()))\n"
  11878.    "(function max\n"
  11879.    "  (signature float\n"
  11880.    "    (parameters\n"
  11881.    "      (declare (in) float x)\n"
  11882.    "      (declare (in) float y))\n"
  11883.    "    ())\n"
  11884.    "  (signature vec2\n"
  11885.    "    (parameters\n"
  11886.    "      (declare (in) vec2 x)\n"
  11887.    "      (declare (in) vec2 y))\n"
  11888.    "    ())\n"
  11889.    "  (signature vec3\n"
  11890.    "    (parameters\n"
  11891.    "      (declare (in) vec3 x)\n"
  11892.    "      (declare (in) vec3 y))\n"
  11893.    "    ())\n"
  11894.    "  (signature vec4\n"
  11895.    "    (parameters\n"
  11896.    "      (declare (in) vec4 x)\n"
  11897.    "      (declare (in) vec4 y))\n"
  11898.    "    ())\n"
  11899.    "  (signature vec2\n"
  11900.    "    (parameters\n"
  11901.    "      (declare (in) vec2 x)\n"
  11902.    "      (declare (in) float y))\n"
  11903.    "    ())\n"
  11904.    "  (signature vec3\n"
  11905.    "    (parameters\n"
  11906.    "      (declare (in) vec3 x)\n"
  11907.    "      (declare (in) float y))\n"
  11908.    "    ())\n"
  11909.    "  (signature vec4\n"
  11910.    "    (parameters\n"
  11911.    "      (declare (in) vec4 x)\n"
  11912.    "      (declare (in) float y))\n"
  11913.    "    ()))\n"
  11914.    "(function clamp\n"
  11915.    "  (signature float\n"
  11916.    "    (parameters\n"
  11917.    "      (declare (in) float x)\n"
  11918.    "      (declare (in) float minVal)\n"
  11919.    "      (declare (in) float maxVal))\n"
  11920.    "    ())\n"
  11921.    "  (signature vec2\n"
  11922.    "    (parameters\n"
  11923.    "      (declare (in) vec2 x)\n"
  11924.    "      (declare (in) vec2 minVal)\n"
  11925.    "      (declare (in) vec2 maxVal))\n"
  11926.    "    ())\n"
  11927.    "  (signature vec3\n"
  11928.    "    (parameters\n"
  11929.    "      (declare (in) vec3 x)\n"
  11930.    "      (declare (in) vec3 minVal)\n"
  11931.    "      (declare (in) vec3 maxVal))\n"
  11932.    "    ())\n"
  11933.    "  (signature vec4\n"
  11934.    "    (parameters\n"
  11935.    "      (declare (in) vec4 x)\n"
  11936.    "      (declare (in) vec4 minVal)\n"
  11937.    "      (declare (in) vec4 maxVal))\n"
  11938.    "    ())\n"
  11939.    "  (signature vec2\n"
  11940.    "    (parameters\n"
  11941.    "      (declare (in) vec2 x)\n"
  11942.    "      (declare (in) float minVal)\n"
  11943.    "      (declare (in) float maxVal))\n"
  11944.    "    ())\n"
  11945.    "  (signature vec3\n"
  11946.    "    (parameters\n"
  11947.    "      (declare (in) vec3 x)\n"
  11948.    "      (declare (in) float minVal)\n"
  11949.    "      (declare (in) float maxVal))\n"
  11950.    "    ())\n"
  11951.    "  (signature vec4\n"
  11952.    "    (parameters\n"
  11953.    "      (declare (in) vec4 x)\n"
  11954.    "      (declare (in) float minVal)\n"
  11955.    "      (declare (in) float maxVal))\n"
  11956.    "    ()))\n"
  11957.    "(function mix\n"
  11958.    "  (signature float\n"
  11959.    "    (parameters\n"
  11960.    "      (declare (in) float x)\n"
  11961.    "      (declare (in) float y)\n"
  11962.    "      (declare (in) float a))\n"
  11963.    "    ())\n"
  11964.    "  (signature vec2\n"
  11965.    "    (parameters\n"
  11966.    "      (declare (in) vec2 x)\n"
  11967.    "      (declare (in) vec2 y)\n"
  11968.    "      (declare (in) vec2 a))\n"
  11969.    "    ())\n"
  11970.    "  (signature vec3\n"
  11971.    "    (parameters\n"
  11972.    "      (declare (in) vec3 x)\n"
  11973.    "      (declare (in) vec3 y)\n"
  11974.    "      (declare (in) vec3 a))\n"
  11975.    "    ())\n"
  11976.    "  (signature vec4\n"
  11977.    "    (parameters\n"
  11978.    "      (declare (in) vec4 x)\n"
  11979.    "      (declare (in) vec4 y)\n"
  11980.    "      (declare (in) vec4 a))\n"
  11981.    "    ())\n"
  11982.    "  (signature vec2\n"
  11983.    "    (parameters\n"
  11984.    "      (declare (in) vec2 x)\n"
  11985.    "      (declare (in) vec2 y)\n"
  11986.    "      (declare (in) float a))\n"
  11987.    "    ())\n"
  11988.    "  (signature vec3\n"
  11989.    "    (parameters\n"
  11990.    "      (declare (in) vec3 x)\n"
  11991.    "      (declare (in) vec3 y)\n"
  11992.    "      (declare (in) float a))\n"
  11993.    "    ())\n"
  11994.    "  (signature vec4\n"
  11995.    "    (parameters\n"
  11996.    "      (declare (in) vec4 x)\n"
  11997.    "      (declare (in) vec4 y)\n"
  11998.    "      (declare (in) float a))\n"
  11999.    "    ()))\n"
  12000.    "(function step\n"
  12001.    "  (signature float\n"
  12002.    "    (parameters\n"
  12003.    "      (declare (in) float edge)\n"
  12004.    "      (declare (in) float x))\n"
  12005.    "    ())\n"
  12006.    "  (signature vec2\n"
  12007.    "    (parameters\n"
  12008.    "      (declare (in) vec2 edge)\n"
  12009.    "      (declare (in) vec2 x))\n"
  12010.    "    ())\n"
  12011.    "  (signature vec3\n"
  12012.    "    (parameters\n"
  12013.    "      (declare (in) vec3 edge)\n"
  12014.    "      (declare (in) vec3 x))\n"
  12015.    "    ())\n"
  12016.    "  (signature vec4\n"
  12017.    "    (parameters\n"
  12018.    "      (declare (in) vec4 edge)\n"
  12019.    "      (declare (in) vec4 x))\n"
  12020.    "    ())\n"
  12021.    "  (signature vec2\n"
  12022.    "    (parameters\n"
  12023.    "      (declare (in) float edge)\n"
  12024.    "      (declare (in) vec2 x))\n"
  12025.    "    ())\n"
  12026.    "  (signature vec3\n"
  12027.    "    (parameters\n"
  12028.    "      (declare (in) float edge)\n"
  12029.    "      (declare (in) vec3 x))\n"
  12030.    "    ())\n"
  12031.    "  (signature vec4\n"
  12032.    "    (parameters\n"
  12033.    "      (declare (in) float edge)\n"
  12034.    "      (declare (in) vec4 x))\n"
  12035.    "    ()))\n"
  12036.    "(function smoothstep\n"
  12037.    "  (signature float\n"
  12038.    "    (parameters\n"
  12039.    "      (declare (in) float edge0)\n"
  12040.    "      (declare (in) float edge1)\n"
  12041.    "      (declare (in) float x))\n"
  12042.    "    ())\n"
  12043.    "  (signature vec2\n"
  12044.    "    (parameters\n"
  12045.    "      (declare (in) vec2 edge0)\n"
  12046.    "      (declare (in) vec2 edge1)\n"
  12047.    "      (declare (in) vec2 x))\n"
  12048.    "    ())\n"
  12049.    "  (signature vec3\n"
  12050.    "    (parameters\n"
  12051.    "      (declare (in) vec3 edge0)\n"
  12052.    "      (declare (in) vec3 edge1)\n"
  12053.    "      (declare (in) vec3 x))\n"
  12054.    "    ())\n"
  12055.    "  (signature vec4\n"
  12056.    "    (parameters\n"
  12057.    "      (declare (in) vec4 edge0)\n"
  12058.    "      (declare (in) vec4 edge1)\n"
  12059.    "      (declare (in) vec4 x))\n"
  12060.    "    ())\n"
  12061.    "  (signature vec2\n"
  12062.    "    (parameters\n"
  12063.    "      (declare (in) float edge0)\n"
  12064.    "      (declare (in) float edge1)\n"
  12065.    "      (declare (in) vec2 x))\n"
  12066.    "    ())\n"
  12067.    "  (signature vec3\n"
  12068.    "    (parameters\n"
  12069.    "      (declare (in) float edge0)\n"
  12070.    "      (declare (in) float edge1)\n"
  12071.    "      (declare (in) vec3 x))\n"
  12072.    "    ())\n"
  12073.    "  (signature vec4\n"
  12074.    "    (parameters\n"
  12075.    "      (declare (in) float edge0)\n"
  12076.    "      (declare (in) float edge1)\n"
  12077.    "      (declare (in) vec4 x))\n"
  12078.    "    ()))\n"
  12079.    "(function length\n"
  12080.    "  (signature float\n"
  12081.    "    (parameters\n"
  12082.    "      (declare (in) float x))\n"
  12083.    "    ())\n"
  12084.    "  (signature float\n"
  12085.    "    (parameters\n"
  12086.    "      (declare (in) vec2 x))\n"
  12087.    "    ())\n"
  12088.    "  (signature float\n"
  12089.    "    (parameters\n"
  12090.    "      (declare (in) vec3 x))\n"
  12091.    "    ())\n"
  12092.    "  (signature float\n"
  12093.    "    (parameters\n"
  12094.    "      (declare (in) vec4 x))\n"
  12095.    "    ()))\n"
  12096.    "(function distance\n"
  12097.    "  (signature float\n"
  12098.    "    (parameters\n"
  12099.    "      (declare (in) float p0)\n"
  12100.    "      (declare (in) float p1))\n"
  12101.    "    ())\n"
  12102.    "  (signature float\n"
  12103.    "    (parameters\n"
  12104.    "      (declare (in) vec2 p0)\n"
  12105.    "      (declare (in) vec2 p1))\n"
  12106.    "    ())\n"
  12107.    "  (signature float\n"
  12108.    "    (parameters\n"
  12109.    "      (declare (in) vec3 p0)\n"
  12110.    "      (declare (in) vec3 p1))\n"
  12111.    "    ())\n"
  12112.    "  (signature float\n"
  12113.    "    (parameters\n"
  12114.    "      (declare (in) vec4 p0)\n"
  12115.    "      (declare (in) vec4 p1))\n"
  12116.    "    ()))\n"
  12117.    "(function dot\n"
  12118.    "  (signature float\n"
  12119.    "    (parameters\n"
  12120.    "      (declare (in) float x)\n"
  12121.    "      (declare (in) float y))\n"
  12122.    "    ())\n"
  12123.    "  (signature float\n"
  12124.    "    (parameters\n"
  12125.    "      (declare (in) vec2 x)\n"
  12126.    "      (declare (in) vec2 y))\n"
  12127.    "    ())\n"
  12128.    "  (signature float\n"
  12129.    "    (parameters\n"
  12130.    "      (declare (in) vec3 x)\n"
  12131.    "      (declare (in) vec3 y))\n"
  12132.    "    ())\n"
  12133.    "  (signature float\n"
  12134.    "    (parameters\n"
  12135.    "      (declare (in) vec4 x)\n"
  12136.    "      (declare (in) vec4 y))\n"
  12137.    "    ()))\n"
  12138.    "(function cross\n"
  12139.    "  (signature vec3\n"
  12140.    "    (parameters\n"
  12141.    "      (declare (in) vec3 x)\n"
  12142.    "      (declare (in) vec3 y))\n"
  12143.    "    ()))\n"
  12144.    "(function normalize\n"
  12145.    "  (signature float\n"
  12146.    "    (parameters\n"
  12147.    "      (declare (in) float x))\n"
  12148.    "    ())\n"
  12149.    "  (signature vec2\n"
  12150.    "    (parameters\n"
  12151.    "      (declare (in) vec2 x))\n"
  12152.    "    ())\n"
  12153.    "  (signature vec3\n"
  12154.    "    (parameters\n"
  12155.    "      (declare (in) vec3 x))\n"
  12156.    "    ())\n"
  12157.    "  (signature vec4\n"
  12158.    "    (parameters\n"
  12159.    "      (declare (in) vec4 x))\n"
  12160.    "    ()))\n"
  12161.    "(function faceforward\n"
  12162.    "  (signature float\n"
  12163.    "    (parameters\n"
  12164.    "      (declare (in) float N)\n"
  12165.    "      (declare (in) float I)\n"
  12166.    "      (declare (in) float Nref))\n"
  12167.    "    ())\n"
  12168.    "  (signature vec2\n"
  12169.    "    (parameters\n"
  12170.    "      (declare (in) vec2 N)\n"
  12171.    "      (declare (in) vec2 I)\n"
  12172.    "      (declare (in) vec2 Nref))\n"
  12173.    "    ())\n"
  12174.    "  (signature vec3\n"
  12175.    "    (parameters\n"
  12176.    "      (declare (in) vec3 N)\n"
  12177.    "      (declare (in) vec3 I)\n"
  12178.    "      (declare (in) vec3 Nref))\n"
  12179.    "    ())\n"
  12180.    "  (signature vec4\n"
  12181.    "    (parameters\n"
  12182.    "      (declare (in) vec4 N)\n"
  12183.    "      (declare (in) vec4 I)\n"
  12184.    "      (declare (in) vec4 Nref))\n"
  12185.    "    ()))\n"
  12186.    "(function reflect\n"
  12187.    "  (signature float\n"
  12188.    "    (parameters\n"
  12189.    "      (declare (in) float I)\n"
  12190.    "      (declare (in) float N))\n"
  12191.    "    ())\n"
  12192.    "  (signature vec2\n"
  12193.    "    (parameters\n"
  12194.    "      (declare (in) vec2 I)\n"
  12195.    "      (declare (in) vec2 N))\n"
  12196.    "    ())\n"
  12197.    "  (signature vec3\n"
  12198.    "    (parameters\n"
  12199.    "      (declare (in) vec3 I)\n"
  12200.    "      (declare (in) vec3 N))\n"
  12201.    "    ())\n"
  12202.    "  (signature vec4\n"
  12203.    "    (parameters\n"
  12204.    "      (declare (in) vec4 I)\n"
  12205.    "      (declare (in) vec4 N))\n"
  12206.    "    ()))\n"
  12207.    "(function refract\n"
  12208.    "  (signature float\n"
  12209.    "    (parameters\n"
  12210.    "      (declare (in) float I)\n"
  12211.    "      (declare (in) float N)\n"
  12212.    "      (declare (in) float eta))\n"
  12213.    "    ())\n"
  12214.    "  (signature vec2\n"
  12215.    "    (parameters\n"
  12216.    "      (declare (in) vec2 I)\n"
  12217.    "      (declare (in) vec2 N)\n"
  12218.    "      (declare (in) float eta))\n"
  12219.    "    ())\n"
  12220.    "  (signature vec3\n"
  12221.    "    (parameters\n"
  12222.    "      (declare (in) vec3 I)\n"
  12223.    "      (declare (in) vec3 N)\n"
  12224.    "      (declare (in) float eta))\n"
  12225.    "    ())\n"
  12226.    "  (signature vec4\n"
  12227.    "    (parameters\n"
  12228.    "      (declare (in) vec4 I)\n"
  12229.    "      (declare (in) vec4 N)\n"
  12230.    "      (declare (in) float eta))\n"
  12231.    "    ()))\n"
  12232.    "(function matrixCompMult\n"
  12233.    "  (signature mat2\n"
  12234.    "    (parameters\n"
  12235.    "      (declare (in) mat2 x)\n"
  12236.    "      (declare (in) mat2 y))\n"
  12237.    "    ())\n"
  12238.    "  (signature mat3\n"
  12239.    "    (parameters\n"
  12240.    "      (declare (in) mat3 x)\n"
  12241.    "      (declare (in) mat3 y))\n"
  12242.    "    ())\n"
  12243.    "  (signature mat4\n"
  12244.    "    (parameters\n"
  12245.    "      (declare (in) mat4 x)\n"
  12246.    "      (declare (in) mat4 y))\n"
  12247.    "    ())\n"
  12248.    "  (signature mat2x3\n"
  12249.    "    (parameters\n"
  12250.    "      (declare (in) mat2x3 x)\n"
  12251.    "      (declare (in) mat2x3 y))\n"
  12252.    "    ())\n"
  12253.    "  (signature mat2x4\n"
  12254.    "    (parameters\n"
  12255.    "      (declare (in) mat2x4 x)\n"
  12256.    "      (declare (in) mat2x4 y))\n"
  12257.    "    ())\n"
  12258.    "  (signature mat3x2\n"
  12259.    "    (parameters\n"
  12260.    "      (declare (in) mat3x2 x)\n"
  12261.    "      (declare (in) mat3x2 y))\n"
  12262.    "    ())\n"
  12263.    "  (signature mat3x4\n"
  12264.    "    (parameters\n"
  12265.    "      (declare (in) mat3x4 x)\n"
  12266.    "      (declare (in) mat3x4 y))\n"
  12267.    "    ())\n"
  12268.    "  (signature mat4x2\n"
  12269.    "    (parameters\n"
  12270.    "      (declare (in) mat4x2 x)\n"
  12271.    "      (declare (in) mat4x2 y))\n"
  12272.    "    ())\n"
  12273.    "  (signature mat4x3\n"
  12274.    "    (parameters\n"
  12275.    "      (declare (in) mat4x3 x)\n"
  12276.    "      (declare (in) mat4x3 y))\n"
  12277.    "    ()))\n"
  12278.    "(function outerProduct\n"
  12279.    "  (signature mat2\n"
  12280.    "    (parameters\n"
  12281.    "      (declare (in) vec2 c)\n"
  12282.    "      (declare (in) vec2 r))\n"
  12283.    "    ())\n"
  12284.    "  (signature mat3\n"
  12285.    "    (parameters\n"
  12286.    "      (declare (in) vec3 c)\n"
  12287.    "      (declare (in) vec3 r))\n"
  12288.    "    ())\n"
  12289.    "  (signature mat4\n"
  12290.    "    (parameters\n"
  12291.    "      (declare (in) vec4 c)\n"
  12292.    "      (declare (in) vec4 r))\n"
  12293.    "    ())\n"
  12294.    "  (signature mat2x3\n"
  12295.    "    (parameters\n"
  12296.    "      (declare (in) vec3 c)\n"
  12297.    "      (declare (in) vec2 r))\n"
  12298.    "    ())\n"
  12299.    "  (signature mat3x2\n"
  12300.    "    (parameters\n"
  12301.    "      (declare (in) vec2 c)\n"
  12302.    "      (declare (in) vec3 r))\n"
  12303.    "    ())\n"
  12304.    "  (signature mat2x4\n"
  12305.    "    (parameters\n"
  12306.    "      (declare (in) vec4 c)\n"
  12307.    "      (declare (in) vec2 r))\n"
  12308.    "    ())\n"
  12309.    "  (signature mat4x2\n"
  12310.    "    (parameters\n"
  12311.    "      (declare (in) vec2 c)\n"
  12312.    "      (declare (in) vec4 r))\n"
  12313.    "    ())\n"
  12314.    "  (signature mat3x4\n"
  12315.    "    (parameters\n"
  12316.    "      (declare (in) vec4 c)\n"
  12317.    "      (declare (in) vec3 r))\n"
  12318.    "    ())\n"
  12319.    "  (signature mat4x3\n"
  12320.    "    (parameters\n"
  12321.    "      (declare (in) vec3 c)\n"
  12322.    "      (declare (in) vec4 r))\n"
  12323.    "    ()))\n"
  12324.    "(function transpose\n"
  12325.    "  (signature mat2\n"
  12326.    "    (parameters\n"
  12327.    "      (declare (in) mat2 m))\n"
  12328.    "    ())\n"
  12329.    "  (signature mat3\n"
  12330.    "    (parameters\n"
  12331.    "      (declare (in) mat3 m))\n"
  12332.    "    ())\n"
  12333.    "  (signature mat4\n"
  12334.    "    (parameters\n"
  12335.    "      (declare (in) mat4 m))\n"
  12336.    "    ())\n"
  12337.    "  (signature mat2x3\n"
  12338.    "    (parameters\n"
  12339.    "      (declare (in) mat3x2 m))\n"
  12340.    "    ())\n"
  12341.    "  (signature mat3x2\n"
  12342.    "    (parameters\n"
  12343.    "      (declare (in) mat2x3 m))\n"
  12344.    "    ())\n"
  12345.    "  (signature mat2x4\n"
  12346.    "    (parameters\n"
  12347.    "      (declare (in) mat4x2 m))\n"
  12348.    "    ())\n"
  12349.    "  (signature mat4x2\n"
  12350.    "    (parameters\n"
  12351.    "      (declare (in) mat2x4 m))\n"
  12352.    "    ())\n"
  12353.    "  (signature mat3x4\n"
  12354.    "    (parameters\n"
  12355.    "      (declare (in) mat4x3 m))\n"
  12356.    "    ())\n"
  12357.    "  (signature mat4x3\n"
  12358.    "    (parameters\n"
  12359.    "      (declare (in) mat3x4 m))\n"
  12360.    "    ()))\n"
  12361.    "(function lessThan\n"
  12362.    "  (signature bvec2\n"
  12363.    "    (parameters\n"
  12364.    "      (declare (in) vec2 x)\n"
  12365.    "      (declare (in) vec2 y))\n"
  12366.    "    ())\n"
  12367.    "  (signature bvec3\n"
  12368.    "    (parameters\n"
  12369.    "      (declare (in) vec3 x)\n"
  12370.    "      (declare (in) vec3 y))\n"
  12371.    "    ())\n"
  12372.    "  (signature bvec4\n"
  12373.    "    (parameters\n"
  12374.    "      (declare (in) vec4 x)\n"
  12375.    "      (declare (in) vec4 y))\n"
  12376.    "    ())\n"
  12377.    "  (signature bvec2\n"
  12378.    "    (parameters\n"
  12379.    "      (declare (in) ivec2 x)\n"
  12380.    "      (declare (in) ivec2 y))\n"
  12381.    "    ())\n"
  12382.    "  (signature bvec3\n"
  12383.    "    (parameters\n"
  12384.    "      (declare (in) ivec3 x)\n"
  12385.    "      (declare (in) ivec3 y))\n"
  12386.    "    ())\n"
  12387.    "  (signature bvec4\n"
  12388.    "    (parameters\n"
  12389.    "      (declare (in) ivec4 x)\n"
  12390.    "      (declare (in) ivec4 y))\n"
  12391.    "    ()))\n"
  12392.    "(function lessThanEqual\n"
  12393.    "  (signature bvec2\n"
  12394.    "    (parameters\n"
  12395.    "      (declare (in) vec2 x)\n"
  12396.    "      (declare (in) vec2 y))\n"
  12397.    "    ())\n"
  12398.    "  (signature bvec3\n"
  12399.    "    (parameters\n"
  12400.    "      (declare (in) vec3 x)\n"
  12401.    "      (declare (in) vec3 y))\n"
  12402.    "    ())\n"
  12403.    "  (signature bvec4\n"
  12404.    "    (parameters\n"
  12405.    "      (declare (in) vec4 x)\n"
  12406.    "      (declare (in) vec4 y))\n"
  12407.    "    ())\n"
  12408.    "  (signature bvec2\n"
  12409.    "    (parameters\n"
  12410.    "      (declare (in) ivec2 x)\n"
  12411.    "      (declare (in) ivec2 y))\n"
  12412.    "    ())\n"
  12413.    "  (signature bvec3\n"
  12414.    "    (parameters\n"
  12415.    "      (declare (in) ivec3 x)\n"
  12416.    "      (declare (in) ivec3 y))\n"
  12417.    "    ())\n"
  12418.    "  (signature bvec4\n"
  12419.    "    (parameters\n"
  12420.    "      (declare (in) ivec4 x)\n"
  12421.    "      (declare (in) ivec4 y))\n"
  12422.    "    ()))\n"
  12423.    "(function greaterThan\n"
  12424.    "  (signature bvec2\n"
  12425.    "    (parameters\n"
  12426.    "      (declare (in) vec2 x)\n"
  12427.    "      (declare (in) vec2 y))\n"
  12428.    "    ())\n"
  12429.    "  (signature bvec3\n"
  12430.    "    (parameters\n"
  12431.    "      (declare (in) vec3 x)\n"
  12432.    "      (declare (in) vec3 y))\n"
  12433.    "    ())\n"
  12434.    "  (signature bvec4\n"
  12435.    "    (parameters\n"
  12436.    "      (declare (in) vec4 x)\n"
  12437.    "      (declare (in) vec4 y))\n"
  12438.    "    ())\n"
  12439.    "  (signature bvec2\n"
  12440.    "    (parameters\n"
  12441.    "      (declare (in) ivec2 x)\n"
  12442.    "      (declare (in) ivec2 y))\n"
  12443.    "    ())\n"
  12444.    "  (signature bvec3\n"
  12445.    "    (parameters\n"
  12446.    "      (declare (in) ivec3 x)\n"
  12447.    "      (declare (in) ivec3 y))\n"
  12448.    "    ())\n"
  12449.    "  (signature bvec4\n"
  12450.    "    (parameters\n"
  12451.    "      (declare (in) ivec4 x)\n"
  12452.    "      (declare (in) ivec4 y))\n"
  12453.    "    ()))\n"
  12454.    "(function greaterThanEqual\n"
  12455.    "  (signature bvec2\n"
  12456.    "    (parameters\n"
  12457.    "      (declare (in) vec2 x)\n"
  12458.    "      (declare (in) vec2 y))\n"
  12459.    "    ())\n"
  12460.    "  (signature bvec3\n"
  12461.    "    (parameters\n"
  12462.    "      (declare (in) vec3 x)\n"
  12463.    "      (declare (in) vec3 y))\n"
  12464.    "    ())\n"
  12465.    "  (signature bvec4\n"
  12466.    "    (parameters\n"
  12467.    "      (declare (in) vec4 x)\n"
  12468.    "      (declare (in) vec4 y))\n"
  12469.    "    ())\n"
  12470.    "  (signature bvec2\n"
  12471.    "    (parameters\n"
  12472.    "      (declare (in) ivec2 x)\n"
  12473.    "      (declare (in) ivec2 y))\n"
  12474.    "    ())\n"
  12475.    "  (signature bvec3\n"
  12476.    "    (parameters\n"
  12477.    "      (declare (in) ivec3 x)\n"
  12478.    "      (declare (in) ivec3 y))\n"
  12479.    "    ())\n"
  12480.    "  (signature bvec4\n"
  12481.    "    (parameters\n"
  12482.    "      (declare (in) ivec4 x)\n"
  12483.    "      (declare (in) ivec4 y))\n"
  12484.    "    ()))\n"
  12485.    "(function equal\n"
  12486.    "  (signature bvec2\n"
  12487.    "    (parameters\n"
  12488.    "      (declare (in) vec2 x)\n"
  12489.    "      (declare (in) vec2 y))\n"
  12490.    "    ())\n"
  12491.    "  (signature bvec3\n"
  12492.    "    (parameters\n"
  12493.    "      (declare (in) vec3 x)\n"
  12494.    "      (declare (in) vec3 y))\n"
  12495.    "    ())\n"
  12496.    "  (signature bvec4\n"
  12497.    "    (parameters\n"
  12498.    "      (declare (in) vec4 x)\n"
  12499.    "      (declare (in) vec4 y))\n"
  12500.    "    ())\n"
  12501.    "  (signature bvec2\n"
  12502.    "    (parameters\n"
  12503.    "      (declare (in) ivec2 x)\n"
  12504.    "      (declare (in) ivec2 y))\n"
  12505.    "    ())\n"
  12506.    "  (signature bvec3\n"
  12507.    "    (parameters\n"
  12508.    "      (declare (in) ivec3 x)\n"
  12509.    "      (declare (in) ivec3 y))\n"
  12510.    "    ())\n"
  12511.    "  (signature bvec4\n"
  12512.    "    (parameters\n"
  12513.    "      (declare (in) ivec4 x)\n"
  12514.    "      (declare (in) ivec4 y))\n"
  12515.    "    ())\n"
  12516.    "  (signature bvec2\n"
  12517.    "    (parameters\n"
  12518.    "      (declare (in) bvec2 x)\n"
  12519.    "      (declare (in) bvec2 y))\n"
  12520.    "    ())\n"
  12521.    "  (signature bvec3\n"
  12522.    "    (parameters\n"
  12523.    "      (declare (in) bvec3 x)\n"
  12524.    "      (declare (in) bvec3 y))\n"
  12525.    "    ())\n"
  12526.    "  (signature bvec4\n"
  12527.    "    (parameters\n"
  12528.    "      (declare (in) bvec4 x)\n"
  12529.    "      (declare (in) bvec4 y))\n"
  12530.    "    ()))\n"
  12531.    "(function notEqual\n"
  12532.    "  (signature bvec2\n"
  12533.    "    (parameters\n"
  12534.    "      (declare (in) vec2 x)\n"
  12535.    "      (declare (in) vec2 y))\n"
  12536.    "    ())\n"
  12537.    "  (signature bvec3\n"
  12538.    "    (parameters\n"
  12539.    "      (declare (in) vec3 x)\n"
  12540.    "      (declare (in) vec3 y))\n"
  12541.    "    ())\n"
  12542.    "  (signature bvec4\n"
  12543.    "    (parameters\n"
  12544.    "      (declare (in) vec4 x)\n"
  12545.    "      (declare (in) vec4 y))\n"
  12546.    "    ())\n"
  12547.    "  (signature bvec2\n"
  12548.    "    (parameters\n"
  12549.    "      (declare (in) ivec2 x)\n"
  12550.    "      (declare (in) ivec2 y))\n"
  12551.    "    ())\n"
  12552.    "  (signature bvec3\n"
  12553.    "    (parameters\n"
  12554.    "      (declare (in) ivec3 x)\n"
  12555.    "      (declare (in) ivec3 y))\n"
  12556.    "    ())\n"
  12557.    "  (signature bvec4\n"
  12558.    "    (parameters\n"
  12559.    "      (declare (in) ivec4 x)\n"
  12560.    "      (declare (in) ivec4 y))\n"
  12561.    "    ())\n"
  12562.    "  (signature bvec2\n"
  12563.    "    (parameters\n"
  12564.    "      (declare (in) bvec2 x)\n"
  12565.    "      (declare (in) bvec2 y))\n"
  12566.    "    ())\n"
  12567.    "  (signature bvec3\n"
  12568.    "    (parameters\n"
  12569.    "      (declare (in) bvec3 x)\n"
  12570.    "      (declare (in) bvec3 y))\n"
  12571.    "    ())\n"
  12572.    "  (signature bvec4\n"
  12573.    "    (parameters\n"
  12574.    "      (declare (in) bvec4 x)\n"
  12575.    "      (declare (in) bvec4 y))\n"
  12576.    "    ()))\n"
  12577.    "(function any\n"
  12578.    "  (signature bool\n"
  12579.    "    (parameters\n"
  12580.    "      (declare (in) bvec2 x))\n"
  12581.    "    ())\n"
  12582.    "  (signature bool\n"
  12583.    "    (parameters\n"
  12584.    "      (declare (in) bvec3 x))\n"
  12585.    "    ())\n"
  12586.    "  (signature bool\n"
  12587.    "    (parameters\n"
  12588.    "      (declare (in) bvec4 x))\n"
  12589.    "    ()))\n"
  12590.    "(function all\n"
  12591.    "  (signature bool\n"
  12592.    "    (parameters\n"
  12593.    "      (declare (in) bvec2 x))\n"
  12594.    "    ())\n"
  12595.    "  (signature bool\n"
  12596.    "    (parameters\n"
  12597.    "      (declare (in) bvec3 x))\n"
  12598.    "    ())\n"
  12599.    "  (signature bool\n"
  12600.    "    (parameters\n"
  12601.    "      (declare (in) bvec4 x))\n"
  12602.    "    ()))\n"
  12603.    "(function not\n"
  12604.    "  (signature bvec2\n"
  12605.    "    (parameters\n"
  12606.    "      (declare (in) bvec2 x))\n"
  12607.    "    ())\n"
  12608.    "  (signature bvec3\n"
  12609.    "    (parameters\n"
  12610.    "      (declare (in) bvec3 x))\n"
  12611.    "    ())\n"
  12612.    "  (signature bvec4\n"
  12613.    "    (parameters\n"
  12614.    "      (declare (in) bvec4 x))\n"
  12615.    "    ()))\n"
  12616.    "(function texture1D\n"
  12617.    "  (signature vec4\n"
  12618.    "    (parameters\n"
  12619.    "      (declare (in) sampler1D sampler)\n"
  12620.    "      (declare (in) float coord))\n"
  12621.    "    ()))\n"
  12622.    "(function texture1DProj\n"
  12623.    "  (signature vec4\n"
  12624.    "    (parameters\n"
  12625.    "      (declare (in) sampler1D sampler)\n"
  12626.    "      (declare (in) vec2 coord))\n"
  12627.    "    ())\n"
  12628.    "  (signature vec4\n"
  12629.    "    (parameters\n"
  12630.    "      (declare (in) sampler1D sampler)\n"
  12631.    "      (declare (in) vec4 coord))\n"
  12632.    "    ()))\n"
  12633.    "(function texture2D\n"
  12634.    "  (signature vec4\n"
  12635.    "    (parameters\n"
  12636.    "      (declare (in) sampler2D sampler)\n"
  12637.    "      (declare (in) vec2 coord))\n"
  12638.    "    ()))\n"
  12639.    "(function texture2DProj\n"
  12640.    "  (signature vec4\n"
  12641.    "    (parameters\n"
  12642.    "      (declare (in) sampler2D sampler)\n"
  12643.    "      (declare (in) vec3 coord))\n"
  12644.    "    ())\n"
  12645.    "  (signature vec4\n"
  12646.    "    (parameters\n"
  12647.    "      (declare (in) sampler2D sampler)\n"
  12648.    "      (declare (in) vec4 coord))\n"
  12649.    "    ()))\n"
  12650.    "(function texture3D\n"
  12651.    "  (signature vec4\n"
  12652.    "    (parameters\n"
  12653.    "      (declare (in) sampler3D sampler)\n"
  12654.    "      (declare (in) vec3 coord))\n"
  12655.    "    ()))\n"
  12656.    "(function texture3DProj\n"
  12657.    "  (signature vec4\n"
  12658.    "    (parameters\n"
  12659.    "      (declare (in) sampler3D sampler)\n"
  12660.    "      (declare (in) vec4 coord))\n"
  12661.    "    ()))\n"
  12662.    "(function textureCube\n"
  12663.    "  (signature vec4\n"
  12664.    "    (parameters\n"
  12665.    "      (declare (in) samplerCube sampler)\n"
  12666.    "      (declare (in) vec3 coord))\n"
  12667.    "    ()))\n"
  12668.    "(function shadow1D\n"
  12669.    "  (signature vec4\n"
  12670.    "    (parameters\n"
  12671.    "      (declare (in) sampler1DShadow sampler)\n"
  12672.    "      (declare (in) vec3 coord))\n"
  12673.    "    ()))\n"
  12674.    "(function shadow2D\n"
  12675.    "  (signature vec4\n"
  12676.    "    (parameters\n"
  12677.    "      (declare (in) sampler2DShadow sampler)\n"
  12678.    "      (declare (in) vec3 coord))\n"
  12679.    "    ()))\n"
  12680.    "(function shadow1DProj\n"
  12681.    "  (signature vec4\n"
  12682.    "    (parameters\n"
  12683.    "      (declare (in) sampler1DShadow sampler)\n"
  12684.    "      (declare (in) vec4 coord))\n"
  12685.    "    ()))\n"
  12686.    "(function shadow2DProj\n"
  12687.    "  (signature vec4\n"
  12688.    "    (parameters\n"
  12689.    "      (declare (in) sampler2DShadow sampler)\n"
  12690.    "      (declare (in) vec4 coord))\n"
  12691.    "    ()))\n"
  12692.    "(function noise1\n"
  12693.    "  (signature float\n"
  12694.    "    (parameters\n"
  12695.    "      (declare (in) float x))\n"
  12696.    "    ())\n"
  12697.    "  (signature float\n"
  12698.    "    (parameters\n"
  12699.    "      (declare (in) vec2 x))\n"
  12700.    "    ())\n"
  12701.    "  (signature float\n"
  12702.    "    (parameters\n"
  12703.    "      (declare (in) vec3 x))\n"
  12704.    "    ())\n"
  12705.    "  (signature float\n"
  12706.    "    (parameters\n"
  12707.    "      (declare (in) vec4 x))\n"
  12708.    "    ()))\n"
  12709.    "(function noise2\n"
  12710.    "  (signature vec2\n"
  12711.    "    (parameters\n"
  12712.    "      (declare (in) float x))\n"
  12713.    "    ())\n"
  12714.    "  (signature vec2\n"
  12715.    "    (parameters\n"
  12716.    "      (declare (in) vec2 x))\n"
  12717.    "    ())\n"
  12718.    "  (signature vec2\n"
  12719.    "    (parameters\n"
  12720.    "      (declare (in) vec3 x))\n"
  12721.    "    ())\n"
  12722.    "  (signature vec2\n"
  12723.    "    (parameters\n"
  12724.    "      (declare (in) vec4 x))\n"
  12725.    "    ()))\n"
  12726.    "(function noise3\n"
  12727.    "  (signature vec3\n"
  12728.    "    (parameters\n"
  12729.    "      (declare (in) float x))\n"
  12730.    "    ())\n"
  12731.    "  (signature vec3\n"
  12732.    "    (parameters\n"
  12733.    "      (declare (in) vec2 x))\n"
  12734.    "    ())\n"
  12735.    "  (signature vec3\n"
  12736.    "    (parameters\n"
  12737.    "      (declare (in) vec3 x))\n"
  12738.    "    ())\n"
  12739.    "  (signature vec3\n"
  12740.    "    (parameters\n"
  12741.    "      (declare (in) vec4 x))\n"
  12742.    "    ()))\n"
  12743.    "(function noise4\n"
  12744.    "  (signature vec4\n"
  12745.    "    (parameters\n"
  12746.    "      (declare (in) float x))\n"
  12747.    "    ())\n"
  12748.    "  (signature vec4\n"
  12749.    "    (parameters\n"
  12750.    "      (declare (in) vec2 x))\n"
  12751.    "    ())\n"
  12752.    "  (signature vec4\n"
  12753.    "    (parameters\n"
  12754.    "      (declare (in) vec3 x))\n"
  12755.    "    ())\n"
  12756.    "  (signature vec4\n"
  12757.    "    (parameters\n"
  12758.    "      (declare (in) vec4 x))\n"
  12759.    "    ())))"
  12760. ;
  12761. static const char *functions_for_120_glsl [] = {
  12762.    builtin_abs,
  12763.    builtin_acos,
  12764.    builtin_all,
  12765.    builtin_any,
  12766.    builtin_asin,
  12767.    builtin_atan,
  12768.    builtin_ceil,
  12769.    builtin_clamp,
  12770.    builtin_cos,
  12771.    builtin_cross,
  12772.    builtin_degrees,
  12773.    builtin_distance,
  12774.    builtin_dot,
  12775.    builtin_equal,
  12776.    builtin_exp,
  12777.    builtin_exp2,
  12778.    builtin_faceforward,
  12779.    builtin_floor,
  12780.    builtin_fract,
  12781.    builtin_greaterThan,
  12782.    builtin_greaterThanEqual,
  12783.    builtin_inversesqrt,
  12784.    builtin_length,
  12785.    builtin_lessThan,
  12786.    builtin_lessThanEqual,
  12787.    builtin_log,
  12788.    builtin_log2,
  12789.    builtin_matrixCompMult,
  12790.    builtin_max,
  12791.    builtin_min,
  12792.    builtin_mix,
  12793.    builtin_mod,
  12794.    builtin_noise1,
  12795.    builtin_noise2,
  12796.    builtin_noise3,
  12797.    builtin_noise4,
  12798.    builtin_normalize,
  12799.    builtin_not,
  12800.    builtin_notEqual,
  12801.    builtin_outerProduct,
  12802.    builtin_pow,
  12803.    builtin_radians,
  12804.    builtin_reflect,
  12805.    builtin_refract,
  12806.    builtin_shadow1D,
  12807.    builtin_shadow1DProj,
  12808.    builtin_shadow2D,
  12809.    builtin_shadow2DProj,
  12810.    builtin_sign,
  12811.    builtin_sin,
  12812.    builtin_smoothstep,
  12813.    builtin_sqrt,
  12814.    builtin_step,
  12815.    builtin_tan,
  12816.    builtin_texture1D,
  12817.    builtin_texture1DProj,
  12818.    builtin_texture2D,
  12819.    builtin_texture2DProj,
  12820.    builtin_texture3D,
  12821.    builtin_texture3DProj,
  12822.    builtin_textureCube,
  12823.    builtin_transpose,
  12824. };
  12825. static const char prototypes_for_120_vert[] =
  12826.    "(\n"
  12827.    "(function ftransform\n"
  12828.    "  (signature vec4\n"
  12829.    "    (parameters)\n"
  12830.    "    ()))\n"
  12831.    "(function texture1DLod\n"
  12832.    "  (signature vec4\n"
  12833.    "    (parameters\n"
  12834.    "      (declare (in) sampler1D sampler)\n"
  12835.    "      (declare (in) float coord)\n"
  12836.    "      (declare (in) float lod))\n"
  12837.    "    ()))\n"
  12838.    "(function texture1DProjLod\n"
  12839.    "  (signature vec4\n"
  12840.    "    (parameters\n"
  12841.    "      (declare (in) sampler1D sampler)\n"
  12842.    "      (declare (in) vec2 coord)\n"
  12843.    "      (declare (in) float lod))\n"
  12844.    "    ())\n"
  12845.    "  (signature vec4\n"
  12846.    "    (parameters\n"
  12847.    "      (declare (in) sampler1D sampler)\n"
  12848.    "      (declare (in) vec4 coord)\n"
  12849.    "      (declare (in) float lod))\n"
  12850.    "    ()))\n"
  12851.    "(function texture2DLod\n"
  12852.    "  (signature vec4\n"
  12853.    "    (parameters\n"
  12854.    "      (declare (in) sampler2D sampler)\n"
  12855.    "      (declare (in) vec2 coord)\n"
  12856.    "      (declare (in) float lod))\n"
  12857.    "    ()))\n"
  12858.    "(function texture2DProjLod\n"
  12859.    "  (signature vec4\n"
  12860.    "    (parameters\n"
  12861.    "      (declare (in) sampler2D sampler)\n"
  12862.    "      (declare (in) vec3 coord)\n"
  12863.    "      (declare (in) float lod))\n"
  12864.    "    ())\n"
  12865.    "  (signature vec4\n"
  12866.    "    (parameters\n"
  12867.    "      (declare (in) sampler2D sampler)\n"
  12868.    "      (declare (in) vec4 coord)\n"
  12869.    "      (declare (in) float lod))\n"
  12870.    "    ()))\n"
  12871.    "(function texture3DLod\n"
  12872.    "  (signature vec4\n"
  12873.    "    (parameters\n"
  12874.    "      (declare (in) sampler3D sampler)\n"
  12875.    "      (declare (in) vec3 coord)\n"
  12876.    "      (declare (in) float lod))\n"
  12877.    "    ()))\n"
  12878.    "(function texture3DProjLod\n"
  12879.    "  (signature vec4\n"
  12880.    "    (parameters\n"
  12881.    "      (declare (in) sampler3D sampler)\n"
  12882.    "      (declare (in) vec4 coord)\n"
  12883.    "      (declare (in) float lod))\n"
  12884.    "    ()))\n"
  12885.    "(function textureCubeLod\n"
  12886.    "  (signature vec4\n"
  12887.    "    (parameters\n"
  12888.    "      (declare (in) samplerCube sampler)\n"
  12889.    "      (declare (in) vec3 coord)\n"
  12890.    "      (declare (in) float lod))\n"
  12891.    "    ()))\n"
  12892.    "(function shadow1DLod\n"
  12893.    "  (signature vec4\n"
  12894.    "    (parameters\n"
  12895.    "      (declare (in) sampler1DShadow sampler)\n"
  12896.    "      (declare (in) vec3 coord)\n"
  12897.    "      (declare (in) float lod))\n"
  12898.    "    ()))\n"
  12899.    "(function shadow2DLod\n"
  12900.    "  (signature vec4\n"
  12901.    "    (parameters\n"
  12902.    "      (declare (in) sampler2DShadow sampler)\n"
  12903.    "      (declare (in) vec3 coord)\n"
  12904.    "      (declare (in) float lod))\n"
  12905.    "    ()))\n"
  12906.    "(function shadow1DProjLod\n"
  12907.    "  (signature vec4\n"
  12908.    "    (parameters\n"
  12909.    "      (declare (in) sampler1DShadow sampler)\n"
  12910.    "      (declare (in) vec4 coord)\n"
  12911.    "      (declare (in) float lod))\n"
  12912.    "    ()))\n"
  12913.    "(function shadow2DProjLod\n"
  12914.    "  (signature vec4\n"
  12915.    "    (parameters\n"
  12916.    "      (declare (in) sampler2DShadow sampler)\n"
  12917.    "      (declare (in) vec4 coord)\n"
  12918.    "      (declare (in) float lod))\n"
  12919.    "    ())))"
  12920. ;
  12921. static const char *functions_for_120_vert [] = {
  12922.    builtin_ftransform,
  12923.    builtin_shadow1DLod,
  12924.    builtin_shadow1DProjLod,
  12925.    builtin_shadow2DLod,
  12926.    builtin_shadow2DProjLod,
  12927.    builtin_texture1DLod,
  12928.    builtin_texture1DProjLod,
  12929.    builtin_texture2DLod,
  12930.    builtin_texture2DProjLod,
  12931.    builtin_texture3DLod,
  12932.    builtin_texture3DProjLod,
  12933.    builtin_textureCubeLod,
  12934. };
  12935. static const char prototypes_for_130_frag[] =
  12936.    "(\n"
  12937.    "(function texture\n"
  12938.    "  (signature vec4\n"
  12939.    "    (parameters\n"
  12940.    "      (declare (in) sampler1D sampler)\n"
  12941.    "      (declare (in) float P)\n"
  12942.    "      (declare (in) float bias))\n"
  12943.    "    ())\n"
  12944.    "  (signature ivec4\n"
  12945.    "    (parameters\n"
  12946.    "      (declare (in) isampler1D sampler)\n"
  12947.    "      (declare (in) float P)\n"
  12948.    "      (declare (in) float bias))\n"
  12949.    "    ())\n"
  12950.    "  (signature uvec4\n"
  12951.    "    (parameters\n"
  12952.    "      (declare (in) usampler1D sampler)\n"
  12953.    "      (declare (in) float P)\n"
  12954.    "      (declare (in) float bias))\n"
  12955.    "    ())\n"
  12956.    "  (signature vec4\n"
  12957.    "    (parameters\n"
  12958.    "      (declare (in) sampler2D sampler)\n"
  12959.    "      (declare (in) vec2 P)\n"
  12960.    "      (declare (in) float bias))\n"
  12961.    "    ())\n"
  12962.    "  (signature ivec4\n"
  12963.    "    (parameters\n"
  12964.    "      (declare (in) isampler2D sampler)\n"
  12965.    "      (declare (in) vec2 P)\n"
  12966.    "      (declare (in) float bias))\n"
  12967.    "    ())\n"
  12968.    "  (signature uvec4\n"
  12969.    "    (parameters\n"
  12970.    "      (declare (in) usampler2D sampler)\n"
  12971.    "      (declare (in) vec2 P)\n"
  12972.    "      (declare (in) float bias))\n"
  12973.    "    ())\n"
  12974.    "  (signature vec4\n"
  12975.    "    (parameters\n"
  12976.    "      (declare (in) sampler3D sampler)\n"
  12977.    "      (declare (in) vec3 P)\n"
  12978.    "      (declare (in) float bias))\n"
  12979.    "    ())\n"
  12980.    "  (signature ivec4\n"
  12981.    "    (parameters\n"
  12982.    "      (declare (in) isampler3D sampler)\n"
  12983.    "      (declare (in) vec3 P)\n"
  12984.    "      (declare (in) float bias))\n"
  12985.    "    ())\n"
  12986.    "  (signature uvec4\n"
  12987.    "    (parameters\n"
  12988.    "      (declare (in) usampler3D sampler)\n"
  12989.    "      (declare (in) vec3 P)\n"
  12990.    "      (declare (in) float bias))\n"
  12991.    "    ())\n"
  12992.    "  (signature vec4\n"
  12993.    "    (parameters\n"
  12994.    "      (declare (in) samplerCube sampler)\n"
  12995.    "      (declare (in) vec3 P)\n"
  12996.    "      (declare (in) float bias))\n"
  12997.    "    ())\n"
  12998.    "  (signature ivec4\n"
  12999.    "    (parameters\n"
  13000.    "      (declare (in) isamplerCube sampler)\n"
  13001.    "      (declare (in) vec3 P)\n"
  13002.    "      (declare (in) float bias))\n"
  13003.    "    ())\n"
  13004.    "  (signature uvec4\n"
  13005.    "    (parameters\n"
  13006.    "      (declare (in) usamplerCube sampler)\n"
  13007.    "      (declare (in) vec3 P)\n"
  13008.    "      (declare (in) float bias))\n"
  13009.    "    ())\n"
  13010.    "  (signature float\n"
  13011.    "    (parameters\n"
  13012.    "      (declare (in) sampler1DShadow sampler)\n"
  13013.    "      (declare (in) vec3 P)\n"
  13014.    "      (declare (in) float bias))\n"
  13015.    "    ())\n"
  13016.    "  (signature float\n"
  13017.    "    (parameters\n"
  13018.    "      (declare (in) sampler2DShadow sampler)\n"
  13019.    "      (declare (in) vec3 P)\n"
  13020.    "      (declare (in) float bias))\n"
  13021.    "    ())\n"
  13022.    "  (signature float\n"
  13023.    "    (parameters\n"
  13024.    "      (declare (in) samplerCubeShadow sampler)\n"
  13025.    "      (declare (in) vec4 P)\n"
  13026.    "      (declare (in) float bias))\n"
  13027.    "    ())\n"
  13028.    "  (signature vec4\n"
  13029.    "    (parameters\n"
  13030.    "      (declare (in) sampler1DArray sampler)\n"
  13031.    "      (declare (in) vec2 P)\n"
  13032.    "      (declare (in) float bias))\n"
  13033.    "    ())\n"
  13034.    "  (signature ivec4\n"
  13035.    "    (parameters\n"
  13036.    "      (declare (in) isampler1DArray sampler)\n"
  13037.    "      (declare (in) vec2 P)\n"
  13038.    "      (declare (in) float bias))\n"
  13039.    "    ())\n"
  13040.    "  (signature uvec4\n"
  13041.    "    (parameters\n"
  13042.    "      (declare (in) usampler1DArray sampler)\n"
  13043.    "      (declare (in) vec2 P)\n"
  13044.    "      (declare (in) float bias))\n"
  13045.    "    ())\n"
  13046.    "  (signature vec4\n"
  13047.    "    (parameters\n"
  13048.    "      (declare (in) sampler2DArray sampler)\n"
  13049.    "      (declare (in) vec3 P)\n"
  13050.    "      (declare (in) float bias))\n"
  13051.    "    ())\n"
  13052.    "  (signature ivec4\n"
  13053.    "    (parameters\n"
  13054.    "      (declare (in) isampler2DArray sampler)\n"
  13055.    "      (declare (in) vec3 P)\n"
  13056.    "      (declare (in) float bias))\n"
  13057.    "    ())\n"
  13058.    "  (signature uvec4\n"
  13059.    "    (parameters\n"
  13060.    "      (declare (in) usampler2DArray sampler)\n"
  13061.    "      (declare (in) vec3 P)\n"
  13062.    "      (declare (in) float bias))\n"
  13063.    "    ())\n"
  13064.    "  (signature float\n"
  13065.    "    (parameters\n"
  13066.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  13067.    "      (declare (in) vec3 P)\n"
  13068.    "      (declare (in) float bias))\n"
  13069.    "    ()))\n"
  13070.    "(function textureProj\n"
  13071.    "  (signature vec4\n"
  13072.    "    (parameters\n"
  13073.    "      (declare (in) sampler1D sampler)\n"
  13074.    "      (declare (in) vec2 P)\n"
  13075.    "      (declare (in) float bias))\n"
  13076.    "    ())\n"
  13077.    "  (signature ivec4\n"
  13078.    "    (parameters\n"
  13079.    "      (declare (in) isampler1D sampler)\n"
  13080.    "      (declare (in) vec2 P)\n"
  13081.    "      (declare (in) float bias))\n"
  13082.    "    ())\n"
  13083.    "  (signature uvec4\n"
  13084.    "    (parameters\n"
  13085.    "      (declare (in) usampler1D sampler)\n"
  13086.    "      (declare (in) vec2 P)\n"
  13087.    "      (declare (in) float bias))\n"
  13088.    "    ())\n"
  13089.    "  (signature vec4\n"
  13090.    "    (parameters\n"
  13091.    "      (declare (in) sampler1D sampler)\n"
  13092.    "      (declare (in) vec4 P)\n"
  13093.    "      (declare (in) float bias))\n"
  13094.    "    ())\n"
  13095.    "  (signature ivec4\n"
  13096.    "    (parameters\n"
  13097.    "      (declare (in) isampler1D sampler)\n"
  13098.    "      (declare (in) vec4 P)\n"
  13099.    "      (declare (in) float bias))\n"
  13100.    "    ())\n"
  13101.    "  (signature uvec4\n"
  13102.    "    (parameters\n"
  13103.    "      (declare (in) usampler1D sampler)\n"
  13104.    "      (declare (in) vec4 P)\n"
  13105.    "      (declare (in) float bias))\n"
  13106.    "    ())\n"
  13107.    "  (signature vec4\n"
  13108.    "    (parameters\n"
  13109.    "      (declare (in) sampler2D sampler)\n"
  13110.    "      (declare (in) vec3 P)\n"
  13111.    "      (declare (in) float bias))\n"
  13112.    "    ())\n"
  13113.    "  (signature ivec4\n"
  13114.    "    (parameters\n"
  13115.    "      (declare (in) isampler2D sampler)\n"
  13116.    "      (declare (in) vec3 P)\n"
  13117.    "      (declare (in) float bias))\n"
  13118.    "    ())\n"
  13119.    "  (signature uvec4\n"
  13120.    "    (parameters\n"
  13121.    "      (declare (in) usampler2D sampler)\n"
  13122.    "      (declare (in) vec3 P)\n"
  13123.    "      (declare (in) float bias))\n"
  13124.    "    ())\n"
  13125.    "  (signature vec4\n"
  13126.    "    (parameters\n"
  13127.    "      (declare (in) sampler2D sampler)\n"
  13128.    "      (declare (in) vec4 P)\n"
  13129.    "      (declare (in) float bias))\n"
  13130.    "    ())\n"
  13131.    "  (signature ivec4\n"
  13132.    "    (parameters\n"
  13133.    "      (declare (in) isampler2D sampler)\n"
  13134.    "      (declare (in) vec4 P)\n"
  13135.    "      (declare (in) float bias))\n"
  13136.    "    ())\n"
  13137.    "  (signature uvec4\n"
  13138.    "    (parameters\n"
  13139.    "      (declare (in) usampler2D sampler)\n"
  13140.    "      (declare (in) vec4 P)\n"
  13141.    "      (declare (in) float bias))\n"
  13142.    "    ())\n"
  13143.    "  (signature vec4\n"
  13144.    "    (parameters\n"
  13145.    "      (declare (in) sampler3D sampler)\n"
  13146.    "      (declare (in) vec4 P)\n"
  13147.    "      (declare (in) float bias))\n"
  13148.    "    ())\n"
  13149.    "  (signature ivec4\n"
  13150.    "    (parameters\n"
  13151.    "      (declare (in) isampler3D sampler)\n"
  13152.    "      (declare (in) vec4 P)\n"
  13153.    "      (declare (in) float bias))\n"
  13154.    "    ())\n"
  13155.    "  (signature uvec4\n"
  13156.    "    (parameters\n"
  13157.    "      (declare (in) usampler3D sampler)\n"
  13158.    "      (declare (in) vec4 P)\n"
  13159.    "      (declare (in) float bias))\n"
  13160.    "    ())\n"
  13161.    "  (signature float\n"
  13162.    "    (parameters\n"
  13163.    "      (declare (in) sampler1DShadow sampler)\n"
  13164.    "      (declare (in) vec4 P)\n"
  13165.    "      (declare (in) float bias))\n"
  13166.    "    ())\n"
  13167.    "  (signature float\n"
  13168.    "    (parameters\n"
  13169.    "      (declare (in) sampler2DShadow sampler)\n"
  13170.    "      (declare (in) vec4 P)\n"
  13171.    "      (declare (in) float bias))\n"
  13172.    "    ()))\n"
  13173.    "(function textureOffset\n"
  13174.    "  (signature vec4\n"
  13175.    "    (parameters\n"
  13176.    "      (declare (in) sampler1D sampler)\n"
  13177.    "      (declare (in) float P)\n"
  13178.    "      (declare (in) int offset)\n"
  13179.    "      (declare (in) float bias))\n"
  13180.    "    ())\n"
  13181.    "  (signature ivec4\n"
  13182.    "    (parameters\n"
  13183.    "      (declare (in) isampler1D sampler)\n"
  13184.    "      (declare (in) float P)\n"
  13185.    "      (declare (in) int offset)\n"
  13186.    "      (declare (in) float bias))\n"
  13187.    "    ())\n"
  13188.    "  (signature uvec4\n"
  13189.    "    (parameters\n"
  13190.    "      (declare (in) usampler1D sampler)\n"
  13191.    "      (declare (in) float P)\n"
  13192.    "      (declare (in) int offset)\n"
  13193.    "      (declare (in) float bias))\n"
  13194.    "    ())\n"
  13195.    "  (signature vec4\n"
  13196.    "    (parameters\n"
  13197.    "      (declare (in) sampler2D sampler)\n"
  13198.    "      (declare (in) vec2 P)\n"
  13199.    "      (declare (in) ivec2 offset)\n"
  13200.    "      (declare (in) float bias))\n"
  13201.    "    ())\n"
  13202.    "  (signature ivec4\n"
  13203.    "    (parameters\n"
  13204.    "      (declare (in) isampler2D sampler)\n"
  13205.    "      (declare (in) vec2 P)\n"
  13206.    "      (declare (in) ivec2 offset)\n"
  13207.    "      (declare (in) float bias))\n"
  13208.    "    ())\n"
  13209.    "  (signature uvec4\n"
  13210.    "    (parameters\n"
  13211.    "      (declare (in) usampler2D sampler)\n"
  13212.    "      (declare (in) vec2 P)\n"
  13213.    "      (declare (in) ivec2 offset)\n"
  13214.    "      (declare (in) float bias))\n"
  13215.    "    ())\n"
  13216.    "  (signature vec4\n"
  13217.    "    (parameters\n"
  13218.    "      (declare (in) sampler3D sampler)\n"
  13219.    "      (declare (in) vec3 P)\n"
  13220.    "      (declare (in) ivec3 offset)\n"
  13221.    "      (declare (in) float bias))\n"
  13222.    "    ())\n"
  13223.    "  (signature ivec4\n"
  13224.    "    (parameters\n"
  13225.    "      (declare (in) isampler3D sampler)\n"
  13226.    "      (declare (in) vec3 P)\n"
  13227.    "      (declare (in) ivec3 offset)\n"
  13228.    "      (declare (in) float bias))\n"
  13229.    "    ())\n"
  13230.    "  (signature uvec4\n"
  13231.    "    (parameters\n"
  13232.    "      (declare (in) usampler3D sampler)\n"
  13233.    "      (declare (in) vec3 P)\n"
  13234.    "      (declare (in) ivec3 offset)\n"
  13235.    "      (declare (in) float bias))\n"
  13236.    "    ())\n"
  13237.    "  (signature float\n"
  13238.    "    (parameters\n"
  13239.    "      (declare (in) sampler1DShadow sampler)\n"
  13240.    "      (declare (in) vec3 P)\n"
  13241.    "      (declare (in) int offset)\n"
  13242.    "      (declare (in) float bias))\n"
  13243.    "    ())\n"
  13244.    "  (signature float\n"
  13245.    "    (parameters\n"
  13246.    "      (declare (in) sampler2DShadow sampler)\n"
  13247.    "      (declare (in) vec3 P)\n"
  13248.    "      (declare (in) ivec2 offset)\n"
  13249.    "      (declare (in) float bias))\n"
  13250.    "    ())\n"
  13251.    "  (signature vec4\n"
  13252.    "    (parameters\n"
  13253.    "      (declare (in) sampler1DArray sampler)\n"
  13254.    "      (declare (in) vec2 P)\n"
  13255.    "      (declare (in) int offset)\n"
  13256.    "      (declare (in) float bias))\n"
  13257.    "    ())\n"
  13258.    "  (signature ivec4\n"
  13259.    "    (parameters\n"
  13260.    "      (declare (in) isampler1DArray sampler)\n"
  13261.    "      (declare (in) vec2 P)\n"
  13262.    "      (declare (in) int offset)\n"
  13263.    "      (declare (in) float bias))\n"
  13264.    "    ())\n"
  13265.    "  (signature uvec4\n"
  13266.    "    (parameters\n"
  13267.    "      (declare (in) usampler1DArray sampler)\n"
  13268.    "      (declare (in) vec2 P)\n"
  13269.    "      (declare (in) int offset)\n"
  13270.    "      (declare (in) float bias))\n"
  13271.    "    ())\n"
  13272.    "  (signature vec4\n"
  13273.    "    (parameters\n"
  13274.    "      (declare (in) sampler2DArray sampler)\n"
  13275.    "      (declare (in) vec3 P)\n"
  13276.    "      (declare (in) ivec2 offset)\n"
  13277.    "      (declare (in) float bias))\n"
  13278.    "    ())\n"
  13279.    "  (signature ivec4\n"
  13280.    "    (parameters\n"
  13281.    "      (declare (in) isampler2DArray sampler)\n"
  13282.    "      (declare (in) vec3 P)\n"
  13283.    "      (declare (in) ivec2 offset)\n"
  13284.    "      (declare (in) float bias))\n"
  13285.    "    ())\n"
  13286.    "  (signature uvec4\n"
  13287.    "    (parameters\n"
  13288.    "      (declare (in) usampler2DArray sampler)\n"
  13289.    "      (declare (in) vec3 P)\n"
  13290.    "      (declare (in) ivec2 offset)\n"
  13291.    "      (declare (in) float bias))\n"
  13292.    "    ())\n"
  13293.    "  (signature float\n"
  13294.    "    (parameters\n"
  13295.    "      (declare (in) sampler1DArrayShadow samp)\n"
  13296.    "      (declare (in) vec3 P)\n"
  13297.    "      (declare (in) int offset)\n"
  13298.    "      (declare (in) float bias))\n"
  13299.    "    ()))\n"
  13300.    "(function textureProjOffset\n"
  13301.    "  (signature vec4\n"
  13302.    "    (parameters\n"
  13303.    "      (declare (in) sampler1D sampler)\n"
  13304.    "      (declare (in) vec2 P)\n"
  13305.    "      (declare (in) int offset)\n"
  13306.    "      (declare (in) float bias))\n"
  13307.    "    ())\n"
  13308.    "  (signature ivec4\n"
  13309.    "    (parameters\n"
  13310.    "      (declare (in) isampler1D sampler)\n"
  13311.    "      (declare (in) vec2 P)\n"
  13312.    "      (declare (in) int offset)\n"
  13313.    "      (declare (in) float bias))\n"
  13314.    "    ())\n"
  13315.    "  (signature uvec4\n"
  13316.    "    (parameters\n"
  13317.    "      (declare (in) usampler1D sampler)\n"
  13318.    "      (declare (in) vec2 P)\n"
  13319.    "      (declare (in) int offset)\n"
  13320.    "      (declare (in) float bias))\n"
  13321.    "    ())\n"
  13322.    "  (signature vec4\n"
  13323.    "    (parameters\n"
  13324.    "      (declare (in) sampler1D sampler)\n"
  13325.    "      (declare (in) vec4 P)\n"
  13326.    "      (declare (in) int offset)\n"
  13327.    "      (declare (in) float bias))\n"
  13328.    "    ())\n"
  13329.    "  (signature ivec4\n"
  13330.    "    (parameters\n"
  13331.    "      (declare (in) isampler1D sampler)\n"
  13332.    "      (declare (in) vec4 P)\n"
  13333.    "      (declare (in) int offset)\n"
  13334.    "      (declare (in) float bias))\n"
  13335.    "    ())\n"
  13336.    "  (signature uvec4\n"
  13337.    "    (parameters\n"
  13338.    "      (declare (in) usampler1D sampler)\n"
  13339.    "      (declare (in) vec4 P)\n"
  13340.    "      (declare (in) int offset)\n"
  13341.    "      (declare (in) float bias))\n"
  13342.    "    ())\n"
  13343.    "  (signature vec4\n"
  13344.    "    (parameters\n"
  13345.    "      (declare (in) sampler2D sampler)\n"
  13346.    "      (declare (in) vec3 P)\n"
  13347.    "      (declare (in) ivec2 offset)\n"
  13348.    "      (declare (in) float bias))\n"
  13349.    "    ())\n"
  13350.    "  (signature ivec4\n"
  13351.    "    (parameters\n"
  13352.    "      (declare (in) isampler2D sampler)\n"
  13353.    "      (declare (in) vec3 P)\n"
  13354.    "      (declare (in) ivec2 offset)\n"
  13355.    "      (declare (in) float bias))\n"
  13356.    "    ())\n"
  13357.    "  (signature uvec4\n"
  13358.    "    (parameters\n"
  13359.    "      (declare (in) usampler2D sampler)\n"
  13360.    "      (declare (in) vec3 P)\n"
  13361.    "      (declare (in) ivec2 offset)\n"
  13362.    "      (declare (in) float bias))\n"
  13363.    "    ())\n"
  13364.    "  (signature vec4\n"
  13365.    "    (parameters\n"
  13366.    "      (declare (in) sampler2D sampler)\n"
  13367.    "      (declare (in) vec4 P)\n"
  13368.    "      (declare (in) ivec2 offset)\n"
  13369.    "      (declare (in) float bias))\n"
  13370.    "    ())\n"
  13371.    "  (signature ivec4\n"
  13372.    "    (parameters\n"
  13373.    "      (declare (in) isampler2D sampler)\n"
  13374.    "      (declare (in) vec4 P)\n"
  13375.    "      (declare (in) ivec2 offset)\n"
  13376.    "      (declare (in) float bias))\n"
  13377.    "    ())\n"
  13378.    "  (signature uvec4\n"
  13379.    "    (parameters\n"
  13380.    "      (declare (in) usampler2D sampler)\n"
  13381.    "      (declare (in) vec4 P)\n"
  13382.    "      (declare (in) ivec2 offset)\n"
  13383.    "      (declare (in) float bias))\n"
  13384.    "    ())\n"
  13385.    "  (signature vec4\n"
  13386.    "    (parameters\n"
  13387.    "      (declare (in) sampler3D sampler)\n"
  13388.    "      (declare (in) vec4 P)\n"
  13389.    "      (declare (in) ivec3 offset)\n"
  13390.    "      (declare (in) float bias))\n"
  13391.    "    ())\n"
  13392.    "  (signature ivec4\n"
  13393.    "    (parameters\n"
  13394.    "      (declare (in) isampler3D sampler)\n"
  13395.    "      (declare (in) vec4 P)\n"
  13396.    "      (declare (in) ivec3 offset)\n"
  13397.    "      (declare (in) float bias))\n"
  13398.    "    ())\n"
  13399.    "  (signature uvec4\n"
  13400.    "    (parameters\n"
  13401.    "      (declare (in) usampler3D sampler)\n"
  13402.    "      (declare (in) vec4 P)\n"
  13403.    "      (declare (in) ivec3 offset)\n"
  13404.    "      (declare (in) float bias))\n"
  13405.    "    ())\n"
  13406.    "  (signature float\n"
  13407.    "    (parameters\n"
  13408.    "      (declare (in) sampler1DShadow s)\n"
  13409.    "      (declare (in) vec4 P)\n"
  13410.    "      (declare (in) int offset)\n"
  13411.    "      (declare (in) float bias))\n"
  13412.    "    ())\n"
  13413.    "  (signature float\n"
  13414.    "    (parameters\n"
  13415.    "      (declare (in) sampler2DShadow s)\n"
  13416.    "      (declare (in) vec4 P)\n"
  13417.    "      (declare (in) ivec2 offset)\n"
  13418.    "      (declare (in) float bias))\n"
  13419.    "    ()))\n"
  13420.    "(function texture1D\n"
  13421.    "  (signature vec4\n"
  13422.    "    (parameters\n"
  13423.    "      (declare (in) sampler1D sampler)\n"
  13424.    "      (declare (in) float coord)\n"
  13425.    "      (declare (in) float bias))\n"
  13426.    "    ()))\n"
  13427.    "(function texture1DProj\n"
  13428.    "  (signature vec4\n"
  13429.    "    (parameters\n"
  13430.    "      (declare (in) sampler1D sampler)\n"
  13431.    "      (declare (in) vec2 coord)\n"
  13432.    "      (declare (in) float bias))\n"
  13433.    "    ())\n"
  13434.    "  (signature vec4\n"
  13435.    "    (parameters\n"
  13436.    "      (declare (in) sampler1D sampler)\n"
  13437.    "      (declare (in) vec4 coord)\n"
  13438.    "      (declare (in) float bias))\n"
  13439.    "    ()))\n"
  13440.    "(function texture2D\n"
  13441.    "  (signature vec4\n"
  13442.    "    (parameters\n"
  13443.    "      (declare (in) sampler2D sampler)\n"
  13444.    "      (declare (in) vec2 coord)\n"
  13445.    "      (declare (in) float bias))\n"
  13446.    "    ()))\n"
  13447.    "(function texture2DProj\n"
  13448.    "  (signature vec4\n"
  13449.    "    (parameters\n"
  13450.    "      (declare (in) sampler2D sampler)\n"
  13451.    "      (declare (in) vec3 coord)\n"
  13452.    "      (declare (in) float bias))\n"
  13453.    "    ())\n"
  13454.    "  (signature vec4\n"
  13455.    "    (parameters\n"
  13456.    "      (declare (in) sampler2D sampler)\n"
  13457.    "      (declare (in) vec4 coord)\n"
  13458.    "      (declare (in) float bias))\n"
  13459.    "    ()))\n"
  13460.    "(function texture3D\n"
  13461.    "  (signature vec4\n"
  13462.    "    (parameters\n"
  13463.    "      (declare (in) sampler3D sampler)\n"
  13464.    "      (declare (in) vec3 coord)\n"
  13465.    "      (declare (in) float bias))\n"
  13466.    "    ()))\n"
  13467.    "(function texture3DProj\n"
  13468.    "  (signature vec4\n"
  13469.    "    (parameters\n"
  13470.    "      (declare (in) sampler3D sampler)\n"
  13471.    "      (declare (in) vec4 coord)\n"
  13472.    "      (declare (in) float bias))\n"
  13473.    "    ()))\n"
  13474.    "(function textureCube\n"
  13475.    "  (signature vec4\n"
  13476.    "    (parameters\n"
  13477.    "      (declare (in) samplerCube sampler)\n"
  13478.    "      (declare (in) vec3 coord)\n"
  13479.    "      (declare (in) float bias))\n"
  13480.    "    ()))\n"
  13481.    "(function shadow1D\n"
  13482.    "  (signature vec4\n"
  13483.    "    (parameters\n"
  13484.    "      (declare (in) sampler1DShadow sampler)\n"
  13485.    "      (declare (in) vec3 coord)\n"
  13486.    "      (declare (in) float bias))\n"
  13487.    "    ()))\n"
  13488.    "(function shadow2D\n"
  13489.    "  (signature vec4\n"
  13490.    "    (parameters\n"
  13491.    "      (declare (in) sampler2DShadow sampler)\n"
  13492.    "      (declare (in) vec3 coord)\n"
  13493.    "      (declare (in) float bias))\n"
  13494.    "    ()))\n"
  13495.    "(function shadow1DProj\n"
  13496.    "  (signature vec4\n"
  13497.    "    (parameters\n"
  13498.    "      (declare (in) sampler1DShadow sampler)\n"
  13499.    "      (declare (in) vec4 coord)\n"
  13500.    "      (declare (in) float bias))\n"
  13501.    "    ()))\n"
  13502.    "(function shadow2DProj\n"
  13503.    "  (signature vec4\n"
  13504.    "    (parameters\n"
  13505.    "      (declare (in) sampler2DShadow sampler)\n"
  13506.    "      (declare (in) vec4 coord)\n"
  13507.    "      (declare (in) float bias))\n"
  13508.    "    ()))\n"
  13509.    "(function dFdx\n"
  13510.    "  (signature float\n"
  13511.    "    (parameters\n"
  13512.    "      (declare (in) float p))\n"
  13513.    "    ())\n"
  13514.    "  (signature vec2\n"
  13515.    "    (parameters\n"
  13516.    "      (declare (in) vec2 p))\n"
  13517.    "    ())\n"
  13518.    "  (signature vec3\n"
  13519.    "    (parameters\n"
  13520.    "      (declare (in) vec3 p))\n"
  13521.    "    ())\n"
  13522.    "  (signature vec4\n"
  13523.    "    (parameters\n"
  13524.    "      (declare (in) vec4 p))\n"
  13525.    "    ()))\n"
  13526.    "(function dFdy\n"
  13527.    "  (signature float\n"
  13528.    "    (parameters\n"
  13529.    "      (declare (in) float p))\n"
  13530.    "    ())\n"
  13531.    "  (signature vec2\n"
  13532.    "    (parameters\n"
  13533.    "      (declare (in) vec2 p))\n"
  13534.    "    ())\n"
  13535.    "  (signature vec3\n"
  13536.    "    (parameters\n"
  13537.    "      (declare (in) vec3 p))\n"
  13538.    "    ())\n"
  13539.    "  (signature vec4\n"
  13540.    "    (parameters\n"
  13541.    "      (declare (in) vec4 p))\n"
  13542.    "    ()))\n"
  13543.    "(function fwidth\n"
  13544.    "  (signature float\n"
  13545.    "    (parameters\n"
  13546.    "      (declare (in) float p))\n"
  13547.    "    ())\n"
  13548.    "  (signature vec2\n"
  13549.    "    (parameters\n"
  13550.    "      (declare (in) vec2 p))\n"
  13551.    "    ())\n"
  13552.    "  (signature vec3\n"
  13553.    "    (parameters\n"
  13554.    "      (declare (in) vec3 p))\n"
  13555.    "    ())\n"
  13556.    "  (signature vec4\n"
  13557.    "    (parameters\n"
  13558.    "      (declare (in) vec4 p))\n"
  13559.    "    ())))"
  13560. ;
  13561. static const char *functions_for_130_frag [] = {
  13562.    builtin_dFdx,
  13563.    builtin_dFdy,
  13564.    builtin_fwidth,
  13565.    builtin_shadow1D,
  13566.    builtin_shadow1DProj,
  13567.    builtin_shadow2D,
  13568.    builtin_shadow2DProj,
  13569.    builtin_texture,
  13570.    builtin_texture1D,
  13571.    builtin_texture1DProj,
  13572.    builtin_texture2D,
  13573.    builtin_texture2DProj,
  13574.    builtin_texture3D,
  13575.    builtin_texture3DProj,
  13576.    builtin_textureCube,
  13577.    builtin_textureOffset,
  13578.    builtin_textureProj,
  13579.    builtin_textureProjOffset,
  13580. };
  13581. static const char prototypes_for_130_glsl[] =
  13582. {'(',
  13583. '(','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',')',')',' ','(',')',')',')',
  13584. '(','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',')',')',' ','(',')',')',')',
  13585. '(','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',')',')',' ','(',')',')',')',
  13586. '(','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',')',')',' ','(',')',')',')',
  13587. '(','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',')',')',' ','(',')',')',')',
  13588. '(','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',')',')',' ','(',')',')',')',
  13589. '(','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',')',')',' ','(',')',')',')',
  13590. '(','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',')',')',' ','(',')',')',')',
  13591. '(','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',')',')',' ','(',')',')',')',
  13592. '(','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',')',')',' ','(',')',')',')',
  13593. '(','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',')',')',' ','(',')',')',')',
  13594. '(','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',')',')',' ','(',')',')',')',
  13595. '(','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',')',')',' ','(',')',')',')',
  13596. '(','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',')',')',' ','(',')',')',')',
  13597. '(','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',')',')',' ','(',')',')',')',
  13598. '(','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',')',')',' ','(',')',')',')',
  13599. '(','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',')',')',' ','(',')',')',')',
  13600. '(','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',')',')',' ','(',')',')',')',
  13601. '(','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',')',')',' ','(',')',')',')',
  13602. '(','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',')',')',' ','(',')',')',')',
  13603. '(','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',')',')',' ','(',')',')',')',
  13604. '(','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',')',')',' ','(',')',')',')',
  13605. '(','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',')',')',' ','(',')',')',')',
  13606. '(','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',')',')',' ','(',')',')',')',
  13607. '(','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',')',')',' ','(',')',')',')',
  13608. '(','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',')',')',' ','(',')',')',')',
  13609. '(','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',')',')',' ','(',')',')',')',
  13610. '(','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',')',')',' ','(',')',')',')',
  13611. '(','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',')',')',' ','(',')',')',')',
  13612. '(','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',')',')',' ','(',')',')',')',
  13613. '(','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',')',')',' ','(',')',')',')',
  13614. '(','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',')',')',' ','(',')',')',')',
  13615. '(','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',')',')',' ','(',')',')',')',
  13616. '(','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',')',')',' ','(',')',')',')',
  13617. '(','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',')',')',' ','(',')',')',' ','(','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',')',' ','b','o','o','l',' ','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',')',' ','b','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',')',' ','b','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',')',' ','b','v','e','c','4',' ','a',')',')',' ','(',')',')',')',
  13618. '(','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',')',')',' ','(',')',')',')',
  13619. '(','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',')',')',' ','(',')',')',')',
  13620. '(','f','u','n','c','t','i','o','n',' ','i','s','n','a','n',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  13621. '(','f','u','n','c','t','i','o','n',' ','i','s','i','n','f',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  13622. '(','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',')',')',' ','(',')',')',')',
  13623. '(','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',')',')',' ','(',')',')',')',
  13624. '(','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',')',')',' ','(',')',')',')',
  13625. '(','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',')',')',' ','(',')',')',')',
  13626. '(','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',')',')',' ','(',')',')',')',
  13627. '(','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',')',')',' ','(',')',')',')',
  13628. '(','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',')',')',' ','(',')',')',')',
  13629. '(','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',')',')',' ','(',')',')',')',
  13630. '(','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',')',')',' ','(',')',')',')',
  13631. '(','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',')',')',' ','(',')',')',')',
  13632. '(','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',')',')',' ','(',')',')',')',
  13633. '(','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',')',')',' ','(',')',')',')',
  13634. '(','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',')',')',' ','(',')',')',')',
  13635. '(','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',')',')',' ','(',')',')',')',
  13636. '(','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',')',')',' ','(',')',')',')',
  13637. '(','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',')',')',' ','(',')',')',')',
  13638. '(','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',')',')',' ','(',')',')',')',
  13639. '(','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',')',')',' ','(',')',')',')',
  13640. '(','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',')',')',' ','(',')',')',')',
  13641. '(','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',')',')',' ','(',')',')',')',
  13642. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','S','i','z','e',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',')',
  13643. '(','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',')',')',' ','(',')',')',')',
  13644. '(','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',')',')',' ','(',')',')',')',
  13645. '(','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',')',')',' ','(',')',')',')',
  13646. '(','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',')',')',' ','(',')',')',')',
  13647. '(','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',')',')',' ','(',')',')',')',
  13648. '(','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',')',')',' ','(',')',')',')',
  13649. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  13650. '(','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',')',')',' ','(',')',')',')',
  13651. '(','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',')',')',' ','(',')',')',')',
  13652. '(','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',')',')',' ','(',')',')',')',
  13653. '(','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',')',')',' ','(',')',')',')',
  13654. '(','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',' ','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',')',')',' ','(',')',')',')',
  13655. '(','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',')',')',' ','(',')',')',')',
  13656. '(','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',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
  13657. '(','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',')',')',' ','(',')',')',')',
  13658. '(','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',')',')',' ','(',')',')',')',
  13659. '(','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',')',')',' ','(',')',')',')',
  13660. '(','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',')',')',' ','(',')',')',')',
  13661. '(','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',')',')',' ','(',')',')',')',
  13662. '(','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',')',')',' ','(',')',')',')',
  13663. '(','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',')',')',' ','(',')',')',')',
  13664. '(','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',')',')',' ','(',')',')',')',
  13665. '(','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',')',')',' ','(',')',')',')',
  13666. '(','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',')',')',' ','(',')',')',')',
  13667. '(','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',')',')',' ','(',')',')',')',
  13668. '(','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',')',')',' ','(',')',')',')',
  13669. '(','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',')',')',' ','(',')',')',')',
  13670. '(','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',')',')',' ','(',')',')',')',
  13671. '(','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',')',')',' ','(',')',')',')',
  13672. '(','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',')',')',' ','(',')',')',')',
  13673. '(','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',')',')',' ','(',')',')',')',
  13674. '(','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',')',')',' ','(',')',')',')',
  13675. '(','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',')',')',' ','(',')',')',')',
  13676. '(','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',')',')',' ','(',')',')',')',
  13677. '(','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',')',')',' ','(',')',')',')',
  13678. '(','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',')',')',' ','(',')',')',')',
  13679. '(','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',')',')',' ','(',')',')',')',
  13680. '(','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',')',')',' ','(',')',')',')',
  13681. '(','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',')',')',' ','(',')',')',')',
  13682. '(','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',')',')',' ','(',')',')',')',')'} ;
  13683. static const char *functions_for_130_glsl [] = {
  13684.    builtin_abs,
  13685.    builtin_acos,
  13686.    builtin_acosh,
  13687.    builtin_all,
  13688.    builtin_any,
  13689.    builtin_asin,
  13690.    builtin_asinh,
  13691.    builtin_atan,
  13692.    builtin_atanh,
  13693.    builtin_ceil,
  13694.    builtin_clamp,
  13695.    builtin_cos,
  13696.    builtin_cosh,
  13697.    builtin_cross,
  13698.    builtin_degrees,
  13699.    builtin_distance,
  13700.    builtin_dot,
  13701.    builtin_equal,
  13702.    builtin_exp,
  13703.    builtin_exp2,
  13704.    builtin_faceforward,
  13705.    builtin_floor,
  13706.    builtin_fract,
  13707.    builtin_greaterThan,
  13708.    builtin_greaterThanEqual,
  13709.    builtin_inversesqrt,
  13710.    builtin_isinf,
  13711.    builtin_isnan,
  13712.    builtin_length,
  13713.    builtin_lessThan,
  13714.    builtin_lessThanEqual,
  13715.    builtin_log,
  13716.    builtin_log2,
  13717.    builtin_matrixCompMult,
  13718.    builtin_max,
  13719.    builtin_min,
  13720.    builtin_mix,
  13721.    builtin_mod,
  13722.    builtin_modf,
  13723.    builtin_noise1,
  13724.    builtin_noise2,
  13725.    builtin_noise3,
  13726.    builtin_noise4,
  13727.    builtin_normalize,
  13728.    builtin_not,
  13729.    builtin_notEqual,
  13730.    builtin_outerProduct,
  13731.    builtin_pow,
  13732.    builtin_radians,
  13733.    builtin_reflect,
  13734.    builtin_refract,
  13735.    builtin_round,
  13736.    builtin_roundEven,
  13737.    builtin_shadow1D,
  13738.    builtin_shadow1DLod,
  13739.    builtin_shadow1DProj,
  13740.    builtin_shadow1DProjLod,
  13741.    builtin_shadow2D,
  13742.    builtin_shadow2DLod,
  13743.    builtin_shadow2DProj,
  13744.    builtin_shadow2DProjLod,
  13745.    builtin_sign,
  13746.    builtin_sin,
  13747.    builtin_sinh,
  13748.    builtin_smoothstep,
  13749.    builtin_sqrt,
  13750.    builtin_step,
  13751.    builtin_tan,
  13752.    builtin_tanh,
  13753.    builtin_texelFetch,
  13754.    builtin_texelFetchOffset,
  13755.    builtin_texture,
  13756.    builtin_texture1D,
  13757.    builtin_texture1DLod,
  13758.    builtin_texture1DProj,
  13759.    builtin_texture1DProjLod,
  13760.    builtin_texture2D,
  13761.    builtin_texture2DLod,
  13762.    builtin_texture2DProj,
  13763.    builtin_texture2DProjLod,
  13764.    builtin_texture3D,
  13765.    builtin_texture3DLod,
  13766.    builtin_texture3DProj,
  13767.    builtin_texture3DProjLod,
  13768.    builtin_textureCube,
  13769.    builtin_textureCubeLod,
  13770.    builtin_textureGrad,
  13771.    builtin_textureGradOffset,
  13772.    builtin_textureLod,
  13773.    builtin_textureLodOffset,
  13774.    builtin_textureOffset,
  13775.    builtin_textureProj,
  13776.    builtin_textureProjGrad,
  13777.    builtin_textureProjGradOffset,
  13778.    builtin_textureProjLod,
  13779.    builtin_textureProjLodOffset,
  13780.    builtin_textureProjOffset,
  13781.    builtin_textureSize,
  13782.    builtin_transpose,
  13783.    builtin_trunc,
  13784. };
  13785. static const char prototypes_for_130_vert[] =
  13786.    "(\n"
  13787.    "(function ftransform\n"
  13788.    "  (signature vec4\n"
  13789.    "    (parameters)\n"
  13790.    "    ())))"
  13791. ;
  13792. static const char *functions_for_130_vert [] = {
  13793.    builtin_ftransform,
  13794. };
  13795. static const char prototypes_for_140_frag[] =
  13796.    "(\n"
  13797.    "(function texture\n"
  13798.    "  (signature vec4\n"
  13799.    "    (parameters\n"
  13800.    "      (declare (in) sampler1D sampler)\n"
  13801.    "      (declare (in) float P)\n"
  13802.    "      (declare (in) float bias))\n"
  13803.    "    ())\n"
  13804.    "  (signature ivec4\n"
  13805.    "    (parameters\n"
  13806.    "      (declare (in) isampler1D sampler)\n"
  13807.    "      (declare (in) float P)\n"
  13808.    "      (declare (in) float bias))\n"
  13809.    "    ())\n"
  13810.    "  (signature uvec4\n"
  13811.    "    (parameters\n"
  13812.    "      (declare (in) usampler1D sampler)\n"
  13813.    "      (declare (in) float P)\n"
  13814.    "      (declare (in) float bias))\n"
  13815.    "    ())\n"
  13816.    "  (signature vec4\n"
  13817.    "    (parameters\n"
  13818.    "      (declare (in) sampler2D sampler)\n"
  13819.    "      (declare (in) vec2 P)\n"
  13820.    "      (declare (in) float bias))\n"
  13821.    "    ())\n"
  13822.    "  (signature ivec4\n"
  13823.    "    (parameters\n"
  13824.    "      (declare (in) isampler2D sampler)\n"
  13825.    "      (declare (in) vec2 P)\n"
  13826.    "      (declare (in) float bias))\n"
  13827.    "    ())\n"
  13828.    "  (signature uvec4\n"
  13829.    "    (parameters\n"
  13830.    "      (declare (in) usampler2D sampler)\n"
  13831.    "      (declare (in) vec2 P)\n"
  13832.    "      (declare (in) float bias))\n"
  13833.    "    ())\n"
  13834.    "  (signature vec4\n"
  13835.    "    (parameters\n"
  13836.    "      (declare (in) sampler3D sampler)\n"
  13837.    "      (declare (in) vec3 P)\n"
  13838.    "      (declare (in) float bias))\n"
  13839.    "    ())\n"
  13840.    "  (signature ivec4\n"
  13841.    "    (parameters\n"
  13842.    "      (declare (in) isampler3D sampler)\n"
  13843.    "      (declare (in) vec3 P)\n"
  13844.    "      (declare (in) float bias))\n"
  13845.    "    ())\n"
  13846.    "  (signature uvec4\n"
  13847.    "    (parameters\n"
  13848.    "      (declare (in) usampler3D sampler)\n"
  13849.    "      (declare (in) vec3 P)\n"
  13850.    "      (declare (in) float bias))\n"
  13851.    "    ())\n"
  13852.    "  (signature vec4\n"
  13853.    "    (parameters\n"
  13854.    "      (declare (in) samplerCube sampler)\n"
  13855.    "      (declare (in) vec3 P)\n"
  13856.    "      (declare (in) float bias))\n"
  13857.    "    ())\n"
  13858.    "  (signature ivec4\n"
  13859.    "    (parameters\n"
  13860.    "      (declare (in) isamplerCube sampler)\n"
  13861.    "      (declare (in) vec3 P)\n"
  13862.    "      (declare (in) float bias))\n"
  13863.    "    ())\n"
  13864.    "  (signature uvec4\n"
  13865.    "    (parameters\n"
  13866.    "      (declare (in) usamplerCube sampler)\n"
  13867.    "      (declare (in) vec3 P)\n"
  13868.    "      (declare (in) float bias))\n"
  13869.    "    ())\n"
  13870.    "  (signature float\n"
  13871.    "    (parameters\n"
  13872.    "      (declare (in) sampler1DShadow sampler)\n"
  13873.    "      (declare (in) vec3 P)\n"
  13874.    "      (declare (in) float bias))\n"
  13875.    "    ())\n"
  13876.    "  (signature float\n"
  13877.    "    (parameters\n"
  13878.    "      (declare (in) sampler2DShadow sampler)\n"
  13879.    "      (declare (in) vec3 P)\n"
  13880.    "      (declare (in) float bias))\n"
  13881.    "    ())\n"
  13882.    "  (signature float\n"
  13883.    "    (parameters\n"
  13884.    "      (declare (in) samplerCubeShadow sampler)\n"
  13885.    "      (declare (in) vec4 P)\n"
  13886.    "      (declare (in) float bias))\n"
  13887.    "    ())\n"
  13888.    "  (signature vec4\n"
  13889.    "    (parameters\n"
  13890.    "      (declare (in) sampler1DArray sampler)\n"
  13891.    "      (declare (in) vec2 P)\n"
  13892.    "      (declare (in) float bias))\n"
  13893.    "    ())\n"
  13894.    "  (signature ivec4\n"
  13895.    "    (parameters\n"
  13896.    "      (declare (in) isampler1DArray sampler)\n"
  13897.    "      (declare (in) vec2 P)\n"
  13898.    "      (declare (in) float bias))\n"
  13899.    "    ())\n"
  13900.    "  (signature uvec4\n"
  13901.    "    (parameters\n"
  13902.    "      (declare (in) usampler1DArray sampler)\n"
  13903.    "      (declare (in) vec2 P)\n"
  13904.    "      (declare (in) float bias))\n"
  13905.    "    ())\n"
  13906.    "  (signature vec4\n"
  13907.    "    (parameters\n"
  13908.    "      (declare (in) sampler2DArray sampler)\n"
  13909.    "      (declare (in) vec3 P)\n"
  13910.    "      (declare (in) float bias))\n"
  13911.    "    ())\n"
  13912.    "  (signature ivec4\n"
  13913.    "    (parameters\n"
  13914.    "      (declare (in) isampler2DArray sampler)\n"
  13915.    "      (declare (in) vec3 P)\n"
  13916.    "      (declare (in) float bias))\n"
  13917.    "    ())\n"
  13918.    "  (signature uvec4\n"
  13919.    "    (parameters\n"
  13920.    "      (declare (in) usampler2DArray sampler)\n"
  13921.    "      (declare (in) vec3 P)\n"
  13922.    "      (declare (in) float bias))\n"
  13923.    "    ())\n"
  13924.    "  (signature float\n"
  13925.    "    (parameters\n"
  13926.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  13927.    "      (declare (in) vec3 P)\n"
  13928.    "      (declare (in) float bias))\n"
  13929.    "    ()))\n"
  13930.    "(function textureProj\n"
  13931.    "  (signature vec4\n"
  13932.    "    (parameters\n"
  13933.    "      (declare (in) sampler1D sampler)\n"
  13934.    "      (declare (in) vec2 P)\n"
  13935.    "      (declare (in) float bias))\n"
  13936.    "    ())\n"
  13937.    "  (signature ivec4\n"
  13938.    "    (parameters\n"
  13939.    "      (declare (in) isampler1D sampler)\n"
  13940.    "      (declare (in) vec2 P)\n"
  13941.    "      (declare (in) float bias))\n"
  13942.    "    ())\n"
  13943.    "  (signature uvec4\n"
  13944.    "    (parameters\n"
  13945.    "      (declare (in) usampler1D sampler)\n"
  13946.    "      (declare (in) vec2 P)\n"
  13947.    "      (declare (in) float bias))\n"
  13948.    "    ())\n"
  13949.    "  (signature vec4\n"
  13950.    "    (parameters\n"
  13951.    "      (declare (in) sampler1D sampler)\n"
  13952.    "      (declare (in) vec4 P)\n"
  13953.    "      (declare (in) float bias))\n"
  13954.    "    ())\n"
  13955.    "  (signature ivec4\n"
  13956.    "    (parameters\n"
  13957.    "      (declare (in) isampler1D sampler)\n"
  13958.    "      (declare (in) vec4 P)\n"
  13959.    "      (declare (in) float bias))\n"
  13960.    "    ())\n"
  13961.    "  (signature uvec4\n"
  13962.    "    (parameters\n"
  13963.    "      (declare (in) usampler1D sampler)\n"
  13964.    "      (declare (in) vec4 P)\n"
  13965.    "      (declare (in) float bias))\n"
  13966.    "    ())\n"
  13967.    "  (signature vec4\n"
  13968.    "    (parameters\n"
  13969.    "      (declare (in) sampler2D sampler)\n"
  13970.    "      (declare (in) vec3 P)\n"
  13971.    "      (declare (in) float bias))\n"
  13972.    "    ())\n"
  13973.    "  (signature ivec4\n"
  13974.    "    (parameters\n"
  13975.    "      (declare (in) isampler2D sampler)\n"
  13976.    "      (declare (in) vec3 P)\n"
  13977.    "      (declare (in) float bias))\n"
  13978.    "    ())\n"
  13979.    "  (signature uvec4\n"
  13980.    "    (parameters\n"
  13981.    "      (declare (in) usampler2D sampler)\n"
  13982.    "      (declare (in) vec3 P)\n"
  13983.    "      (declare (in) float bias))\n"
  13984.    "    ())\n"
  13985.    "  (signature vec4\n"
  13986.    "    (parameters\n"
  13987.    "      (declare (in) sampler2D sampler)\n"
  13988.    "      (declare (in) vec4 P)\n"
  13989.    "      (declare (in) float bias))\n"
  13990.    "    ())\n"
  13991.    "  (signature ivec4\n"
  13992.    "    (parameters\n"
  13993.    "      (declare (in) isampler2D sampler)\n"
  13994.    "      (declare (in) vec4 P)\n"
  13995.    "      (declare (in) float bias))\n"
  13996.    "    ())\n"
  13997.    "  (signature uvec4\n"
  13998.    "    (parameters\n"
  13999.    "      (declare (in) usampler2D sampler)\n"
  14000.    "      (declare (in) vec4 P)\n"
  14001.    "      (declare (in) float bias))\n"
  14002.    "    ())\n"
  14003.    "  (signature vec4\n"
  14004.    "    (parameters\n"
  14005.    "      (declare (in) sampler3D sampler)\n"
  14006.    "      (declare (in) vec4 P)\n"
  14007.    "      (declare (in) float bias))\n"
  14008.    "    ())\n"
  14009.    "  (signature ivec4\n"
  14010.    "    (parameters\n"
  14011.    "      (declare (in) isampler3D sampler)\n"
  14012.    "      (declare (in) vec4 P)\n"
  14013.    "      (declare (in) float bias))\n"
  14014.    "    ())\n"
  14015.    "  (signature uvec4\n"
  14016.    "    (parameters\n"
  14017.    "      (declare (in) usampler3D sampler)\n"
  14018.    "      (declare (in) vec4 P)\n"
  14019.    "      (declare (in) float bias))\n"
  14020.    "    ())\n"
  14021.    "  (signature float\n"
  14022.    "    (parameters\n"
  14023.    "      (declare (in) sampler1DShadow sampler)\n"
  14024.    "      (declare (in) vec4 P)\n"
  14025.    "      (declare (in) float bias))\n"
  14026.    "    ())\n"
  14027.    "  (signature float\n"
  14028.    "    (parameters\n"
  14029.    "      (declare (in) sampler2DShadow sampler)\n"
  14030.    "      (declare (in) vec4 P)\n"
  14031.    "      (declare (in) float bias))\n"
  14032.    "    ()))\n"
  14033.    "(function textureOffset\n"
  14034.    "  (signature vec4\n"
  14035.    "    (parameters\n"
  14036.    "      (declare (in) sampler1D sampler)\n"
  14037.    "      (declare (in) float P)\n"
  14038.    "      (declare (in) int offset)\n"
  14039.    "      (declare (in) float bias))\n"
  14040.    "    ())\n"
  14041.    "  (signature ivec4\n"
  14042.    "    (parameters\n"
  14043.    "      (declare (in) isampler1D sampler)\n"
  14044.    "      (declare (in) float P)\n"
  14045.    "      (declare (in) int offset)\n"
  14046.    "      (declare (in) float bias))\n"
  14047.    "    ())\n"
  14048.    "  (signature uvec4\n"
  14049.    "    (parameters\n"
  14050.    "      (declare (in) usampler1D sampler)\n"
  14051.    "      (declare (in) float P)\n"
  14052.    "      (declare (in) int offset)\n"
  14053.    "      (declare (in) float bias))\n"
  14054.    "    ())\n"
  14055.    "  (signature vec4\n"
  14056.    "    (parameters\n"
  14057.    "      (declare (in) sampler2D sampler)\n"
  14058.    "      (declare (in) vec2 P)\n"
  14059.    "      (declare (in) ivec2 offset)\n"
  14060.    "      (declare (in) float bias))\n"
  14061.    "    ())\n"
  14062.    "  (signature ivec4\n"
  14063.    "    (parameters\n"
  14064.    "      (declare (in) isampler2D sampler)\n"
  14065.    "      (declare (in) vec2 P)\n"
  14066.    "      (declare (in) ivec2 offset)\n"
  14067.    "      (declare (in) float bias))\n"
  14068.    "    ())\n"
  14069.    "  (signature uvec4\n"
  14070.    "    (parameters\n"
  14071.    "      (declare (in) usampler2D sampler)\n"
  14072.    "      (declare (in) vec2 P)\n"
  14073.    "      (declare (in) ivec2 offset)\n"
  14074.    "      (declare (in) float bias))\n"
  14075.    "    ())\n"
  14076.    "  (signature vec4\n"
  14077.    "    (parameters\n"
  14078.    "      (declare (in) sampler3D sampler)\n"
  14079.    "      (declare (in) vec3 P)\n"
  14080.    "      (declare (in) ivec3 offset)\n"
  14081.    "      (declare (in) float bias))\n"
  14082.    "    ())\n"
  14083.    "  (signature ivec4\n"
  14084.    "    (parameters\n"
  14085.    "      (declare (in) isampler3D sampler)\n"
  14086.    "      (declare (in) vec3 P)\n"
  14087.    "      (declare (in) ivec3 offset)\n"
  14088.    "      (declare (in) float bias))\n"
  14089.    "    ())\n"
  14090.    "  (signature uvec4\n"
  14091.    "    (parameters\n"
  14092.    "      (declare (in) usampler3D sampler)\n"
  14093.    "      (declare (in) vec3 P)\n"
  14094.    "      (declare (in) ivec3 offset)\n"
  14095.    "      (declare (in) float bias))\n"
  14096.    "    ())\n"
  14097.    "  (signature float\n"
  14098.    "    (parameters\n"
  14099.    "      (declare (in) sampler1DShadow sampler)\n"
  14100.    "      (declare (in) vec3 P)\n"
  14101.    "      (declare (in) int offset)\n"
  14102.    "      (declare (in) float bias))\n"
  14103.    "    ())\n"
  14104.    "  (signature float\n"
  14105.    "    (parameters\n"
  14106.    "      (declare (in) sampler2DShadow sampler)\n"
  14107.    "      (declare (in) vec3 P)\n"
  14108.    "      (declare (in) ivec2 offset)\n"
  14109.    "      (declare (in) float bias))\n"
  14110.    "    ())\n"
  14111.    "  (signature vec4\n"
  14112.    "    (parameters\n"
  14113.    "      (declare (in) sampler1DArray sampler)\n"
  14114.    "      (declare (in) vec2 P)\n"
  14115.    "      (declare (in) int offset)\n"
  14116.    "      (declare (in) float bias))\n"
  14117.    "    ())\n"
  14118.    "  (signature ivec4\n"
  14119.    "    (parameters\n"
  14120.    "      (declare (in) isampler1DArray sampler)\n"
  14121.    "      (declare (in) vec2 P)\n"
  14122.    "      (declare (in) int offset)\n"
  14123.    "      (declare (in) float bias))\n"
  14124.    "    ())\n"
  14125.    "  (signature uvec4\n"
  14126.    "    (parameters\n"
  14127.    "      (declare (in) usampler1DArray sampler)\n"
  14128.    "      (declare (in) vec2 P)\n"
  14129.    "      (declare (in) int offset)\n"
  14130.    "      (declare (in) float bias))\n"
  14131.    "    ())\n"
  14132.    "  (signature vec4\n"
  14133.    "    (parameters\n"
  14134.    "      (declare (in) sampler2DArray sampler)\n"
  14135.    "      (declare (in) vec3 P)\n"
  14136.    "      (declare (in) ivec2 offset)\n"
  14137.    "      (declare (in) float bias))\n"
  14138.    "    ())\n"
  14139.    "  (signature ivec4\n"
  14140.    "    (parameters\n"
  14141.    "      (declare (in) isampler2DArray sampler)\n"
  14142.    "      (declare (in) vec3 P)\n"
  14143.    "      (declare (in) ivec2 offset)\n"
  14144.    "      (declare (in) float bias))\n"
  14145.    "    ())\n"
  14146.    "  (signature uvec4\n"
  14147.    "    (parameters\n"
  14148.    "      (declare (in) usampler2DArray sampler)\n"
  14149.    "      (declare (in) vec3 P)\n"
  14150.    "      (declare (in) ivec2 offset)\n"
  14151.    "      (declare (in) float bias))\n"
  14152.    "    ())\n"
  14153.    "  (signature float\n"
  14154.    "    (parameters\n"
  14155.    "      (declare (in) sampler1DArrayShadow samp)\n"
  14156.    "      (declare (in) vec3 P)\n"
  14157.    "      (declare (in) int offset)\n"
  14158.    "      (declare (in) float bias))\n"
  14159.    "    ()))\n"
  14160.    "(function textureProjOffset\n"
  14161.    "  (signature vec4\n"
  14162.    "    (parameters\n"
  14163.    "      (declare (in) sampler1D sampler)\n"
  14164.    "      (declare (in) vec2 P)\n"
  14165.    "      (declare (in) int offset)\n"
  14166.    "      (declare (in) float bias))\n"
  14167.    "    ())\n"
  14168.    "  (signature ivec4\n"
  14169.    "    (parameters\n"
  14170.    "      (declare (in) isampler1D sampler)\n"
  14171.    "      (declare (in) vec2 P)\n"
  14172.    "      (declare (in) int offset)\n"
  14173.    "      (declare (in) float bias))\n"
  14174.    "    ())\n"
  14175.    "  (signature uvec4\n"
  14176.    "    (parameters\n"
  14177.    "      (declare (in) usampler1D sampler)\n"
  14178.    "      (declare (in) vec2 P)\n"
  14179.    "      (declare (in) int offset)\n"
  14180.    "      (declare (in) float bias))\n"
  14181.    "    ())\n"
  14182.    "  (signature vec4\n"
  14183.    "    (parameters\n"
  14184.    "      (declare (in) sampler1D sampler)\n"
  14185.    "      (declare (in) vec4 P)\n"
  14186.    "      (declare (in) int offset)\n"
  14187.    "      (declare (in) float bias))\n"
  14188.    "    ())\n"
  14189.    "  (signature ivec4\n"
  14190.    "    (parameters\n"
  14191.    "      (declare (in) isampler1D sampler)\n"
  14192.    "      (declare (in) vec4 P)\n"
  14193.    "      (declare (in) int offset)\n"
  14194.    "      (declare (in) float bias))\n"
  14195.    "    ())\n"
  14196.    "  (signature uvec4\n"
  14197.    "    (parameters\n"
  14198.    "      (declare (in) usampler1D sampler)\n"
  14199.    "      (declare (in) vec4 P)\n"
  14200.    "      (declare (in) int offset)\n"
  14201.    "      (declare (in) float bias))\n"
  14202.    "    ())\n"
  14203.    "  (signature vec4\n"
  14204.    "    (parameters\n"
  14205.    "      (declare (in) sampler2D sampler)\n"
  14206.    "      (declare (in) vec3 P)\n"
  14207.    "      (declare (in) ivec2 offset)\n"
  14208.    "      (declare (in) float bias))\n"
  14209.    "    ())\n"
  14210.    "  (signature ivec4\n"
  14211.    "    (parameters\n"
  14212.    "      (declare (in) isampler2D sampler)\n"
  14213.    "      (declare (in) vec3 P)\n"
  14214.    "      (declare (in) ivec2 offset)\n"
  14215.    "      (declare (in) float bias))\n"
  14216.    "    ())\n"
  14217.    "  (signature uvec4\n"
  14218.    "    (parameters\n"
  14219.    "      (declare (in) usampler2D sampler)\n"
  14220.    "      (declare (in) vec3 P)\n"
  14221.    "      (declare (in) ivec2 offset)\n"
  14222.    "      (declare (in) float bias))\n"
  14223.    "    ())\n"
  14224.    "  (signature vec4\n"
  14225.    "    (parameters\n"
  14226.    "      (declare (in) sampler2D sampler)\n"
  14227.    "      (declare (in) vec4 P)\n"
  14228.    "      (declare (in) ivec2 offset)\n"
  14229.    "      (declare (in) float bias))\n"
  14230.    "    ())\n"
  14231.    "  (signature ivec4\n"
  14232.    "    (parameters\n"
  14233.    "      (declare (in) isampler2D sampler)\n"
  14234.    "      (declare (in) vec4 P)\n"
  14235.    "      (declare (in) ivec2 offset)\n"
  14236.    "      (declare (in) float bias))\n"
  14237.    "    ())\n"
  14238.    "  (signature uvec4\n"
  14239.    "    (parameters\n"
  14240.    "      (declare (in) usampler2D sampler)\n"
  14241.    "      (declare (in) vec4 P)\n"
  14242.    "      (declare (in) ivec2 offset)\n"
  14243.    "      (declare (in) float bias))\n"
  14244.    "    ())\n"
  14245.    "  (signature vec4\n"
  14246.    "    (parameters\n"
  14247.    "      (declare (in) sampler3D sampler)\n"
  14248.    "      (declare (in) vec4 P)\n"
  14249.    "      (declare (in) ivec3 offset)\n"
  14250.    "      (declare (in) float bias))\n"
  14251.    "    ())\n"
  14252.    "  (signature ivec4\n"
  14253.    "    (parameters\n"
  14254.    "      (declare (in) isampler3D sampler)\n"
  14255.    "      (declare (in) vec4 P)\n"
  14256.    "      (declare (in) ivec3 offset)\n"
  14257.    "      (declare (in) float bias))\n"
  14258.    "    ())\n"
  14259.    "  (signature uvec4\n"
  14260.    "    (parameters\n"
  14261.    "      (declare (in) usampler3D sampler)\n"
  14262.    "      (declare (in) vec4 P)\n"
  14263.    "      (declare (in) ivec3 offset)\n"
  14264.    "      (declare (in) float bias))\n"
  14265.    "    ())\n"
  14266.    "  (signature float\n"
  14267.    "    (parameters\n"
  14268.    "      (declare (in) sampler1DShadow s)\n"
  14269.    "      (declare (in) vec4 P)\n"
  14270.    "      (declare (in) int offset)\n"
  14271.    "      (declare (in) float bias))\n"
  14272.    "    ())\n"
  14273.    "  (signature float\n"
  14274.    "    (parameters\n"
  14275.    "      (declare (in) sampler2DShadow s)\n"
  14276.    "      (declare (in) vec4 P)\n"
  14277.    "      (declare (in) ivec2 offset)\n"
  14278.    "      (declare (in) float bias))\n"
  14279.    "    ()))\n"
  14280.    "(function texture1D\n"
  14281.    "  (signature vec4\n"
  14282.    "    (parameters\n"
  14283.    "      (declare (in) sampler1D sampler)\n"
  14284.    "      (declare (in) float coord)\n"
  14285.    "      (declare (in) float bias))\n"
  14286.    "    ()))\n"
  14287.    "(function texture1DProj\n"
  14288.    "  (signature vec4\n"
  14289.    "    (parameters\n"
  14290.    "      (declare (in) sampler1D sampler)\n"
  14291.    "      (declare (in) vec2 coord)\n"
  14292.    "      (declare (in) float bias))\n"
  14293.    "    ())\n"
  14294.    "  (signature vec4\n"
  14295.    "    (parameters\n"
  14296.    "      (declare (in) sampler1D sampler)\n"
  14297.    "      (declare (in) vec4 coord)\n"
  14298.    "      (declare (in) float bias))\n"
  14299.    "    ()))\n"
  14300.    "(function texture2D\n"
  14301.    "  (signature vec4\n"
  14302.    "    (parameters\n"
  14303.    "      (declare (in) sampler2D sampler)\n"
  14304.    "      (declare (in) vec2 coord)\n"
  14305.    "      (declare (in) float bias))\n"
  14306.    "    ()))\n"
  14307.    "(function texture2DProj\n"
  14308.    "  (signature vec4\n"
  14309.    "    (parameters\n"
  14310.    "      (declare (in) sampler2D sampler)\n"
  14311.    "      (declare (in) vec3 coord)\n"
  14312.    "      (declare (in) float bias))\n"
  14313.    "    ())\n"
  14314.    "  (signature vec4\n"
  14315.    "    (parameters\n"
  14316.    "      (declare (in) sampler2D sampler)\n"
  14317.    "      (declare (in) vec4 coord)\n"
  14318.    "      (declare (in) float bias))\n"
  14319.    "    ()))\n"
  14320.    "(function texture3D\n"
  14321.    "  (signature vec4\n"
  14322.    "    (parameters\n"
  14323.    "      (declare (in) sampler3D sampler)\n"
  14324.    "      (declare (in) vec3 coord)\n"
  14325.    "      (declare (in) float bias))\n"
  14326.    "    ()))\n"
  14327.    "(function texture3DProj\n"
  14328.    "  (signature vec4\n"
  14329.    "    (parameters\n"
  14330.    "      (declare (in) sampler3D sampler)\n"
  14331.    "      (declare (in) vec4 coord)\n"
  14332.    "      (declare (in) float bias))\n"
  14333.    "    ()))\n"
  14334.    "(function textureCube\n"
  14335.    "  (signature vec4\n"
  14336.    "    (parameters\n"
  14337.    "      (declare (in) samplerCube sampler)\n"
  14338.    "      (declare (in) vec3 coord)\n"
  14339.    "      (declare (in) float bias))\n"
  14340.    "    ()))\n"
  14341.    "(function shadow1D\n"
  14342.    "  (signature vec4\n"
  14343.    "    (parameters\n"
  14344.    "      (declare (in) sampler1DShadow sampler)\n"
  14345.    "      (declare (in) vec3 coord)\n"
  14346.    "      (declare (in) float bias))\n"
  14347.    "    ()))\n"
  14348.    "(function shadow2D\n"
  14349.    "  (signature vec4\n"
  14350.    "    (parameters\n"
  14351.    "      (declare (in) sampler2DShadow sampler)\n"
  14352.    "      (declare (in) vec3 coord)\n"
  14353.    "      (declare (in) float bias))\n"
  14354.    "    ()))\n"
  14355.    "(function shadow1DProj\n"
  14356.    "  (signature vec4\n"
  14357.    "    (parameters\n"
  14358.    "      (declare (in) sampler1DShadow sampler)\n"
  14359.    "      (declare (in) vec4 coord)\n"
  14360.    "      (declare (in) float bias))\n"
  14361.    "    ()))\n"
  14362.    "(function shadow2DProj\n"
  14363.    "  (signature vec4\n"
  14364.    "    (parameters\n"
  14365.    "      (declare (in) sampler2DShadow sampler)\n"
  14366.    "      (declare (in) vec4 coord)\n"
  14367.    "      (declare (in) float bias))\n"
  14368.    "    ()))\n"
  14369.    "(function dFdx\n"
  14370.    "  (signature float\n"
  14371.    "    (parameters\n"
  14372.    "      (declare (in) float p))\n"
  14373.    "    ())\n"
  14374.    "  (signature vec2\n"
  14375.    "    (parameters\n"
  14376.    "      (declare (in) vec2 p))\n"
  14377.    "    ())\n"
  14378.    "  (signature vec3\n"
  14379.    "    (parameters\n"
  14380.    "      (declare (in) vec3 p))\n"
  14381.    "    ())\n"
  14382.    "  (signature vec4\n"
  14383.    "    (parameters\n"
  14384.    "      (declare (in) vec4 p))\n"
  14385.    "    ()))\n"
  14386.    "(function dFdy\n"
  14387.    "  (signature float\n"
  14388.    "    (parameters\n"
  14389.    "      (declare (in) float p))\n"
  14390.    "    ())\n"
  14391.    "  (signature vec2\n"
  14392.    "    (parameters\n"
  14393.    "      (declare (in) vec2 p))\n"
  14394.    "    ())\n"
  14395.    "  (signature vec3\n"
  14396.    "    (parameters\n"
  14397.    "      (declare (in) vec3 p))\n"
  14398.    "    ())\n"
  14399.    "  (signature vec4\n"
  14400.    "    (parameters\n"
  14401.    "      (declare (in) vec4 p))\n"
  14402.    "    ()))\n"
  14403.    "(function fwidth\n"
  14404.    "  (signature float\n"
  14405.    "    (parameters\n"
  14406.    "      (declare (in) float p))\n"
  14407.    "    ())\n"
  14408.    "  (signature vec2\n"
  14409.    "    (parameters\n"
  14410.    "      (declare (in) vec2 p))\n"
  14411.    "    ())\n"
  14412.    "  (signature vec3\n"
  14413.    "    (parameters\n"
  14414.    "      (declare (in) vec3 p))\n"
  14415.    "    ())\n"
  14416.    "  (signature vec4\n"
  14417.    "    (parameters\n"
  14418.    "      (declare (in) vec4 p))\n"
  14419.    "    ())))"
  14420. ;
  14421. static const char *functions_for_140_frag [] = {
  14422.    builtin_dFdx,
  14423.    builtin_dFdy,
  14424.    builtin_fwidth,
  14425.    builtin_shadow1D,
  14426.    builtin_shadow1DProj,
  14427.    builtin_shadow2D,
  14428.    builtin_shadow2DProj,
  14429.    builtin_texture,
  14430.    builtin_texture1D,
  14431.    builtin_texture1DProj,
  14432.    builtin_texture2D,
  14433.    builtin_texture2DProj,
  14434.    builtin_texture3D,
  14435.    builtin_texture3DProj,
  14436.    builtin_textureCube,
  14437.    builtin_textureOffset,
  14438.    builtin_textureProj,
  14439.    builtin_textureProjOffset,
  14440. };
  14441. static const char prototypes_for_140_glsl[] =
  14442. {'(',
  14443. '(','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',')',')',' ','(',')',')',')',
  14444. '(','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',')',')',' ','(',')',')',')',
  14445. '(','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',')',')',' ','(',')',')',')',
  14446. '(','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',')',')',' ','(',')',')',')',
  14447. '(','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',')',')',' ','(',')',')',')',
  14448. '(','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',')',')',' ','(',')',')',')',
  14449. '(','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',')',')',' ','(',')',')',')',
  14450. '(','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',')',')',' ','(',')',')',')',
  14451. '(','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',')',')',' ','(',')',')',')',
  14452. '(','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',')',')',' ','(',')',')',')',
  14453. '(','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',')',')',' ','(',')',')',')',
  14454. '(','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',')',')',' ','(',')',')',')',
  14455. '(','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',')',')',' ','(',')',')',')',
  14456. '(','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',')',')',' ','(',')',')',')',
  14457. '(','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',')',')',' ','(',')',')',')',
  14458. '(','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',')',')',' ','(',')',')',')',
  14459. '(','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',')',')',' ','(',')',')',')',
  14460. '(','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',')',')',' ','(',')',')',')',
  14461. '(','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',')',')',' ','(',')',')',')',
  14462. '(','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',')',')',' ','(',')',')',')',
  14463. '(','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',')',')',' ','(',')',')',')',
  14464. '(','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',')',')',' ','(',')',')',')',
  14465. '(','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',')',')',' ','(',')',')',')',
  14466. '(','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',')',')',' ','(',')',')',')',
  14467. '(','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',')',')',' ','(',')',')',')',
  14468. '(','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',')',')',' ','(',')',')',')',
  14469. '(','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',')',')',' ','(',')',')',')',
  14470. '(','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',')',')',' ','(',')',')',')',
  14471. '(','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',')',')',' ','(',')',')',')',
  14472. '(','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',')',')',' ','(',')',')',')',
  14473. '(','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',')',')',' ','(',')',')',')',
  14474. '(','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',')',')',' ','(',')',')',')',
  14475. '(','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',')',')',' ','(',')',')',')',
  14476. '(','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',')',')',' ','(',')',')',')',
  14477. '(','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',')',')',' ','(',')',')',' ','(','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',')',' ','b','o','o','l',' ','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',')',' ','b','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',')',' ','b','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',')',' ','b','v','e','c','4',' ','a',')',')',' ','(',')',')',')',
  14478. '(','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',')',')',' ','(',')',')',')',
  14479. '(','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',')',')',' ','(',')',')',')',
  14480. '(','f','u','n','c','t','i','o','n',' ','i','s','n','a','n',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  14481. '(','f','u','n','c','t','i','o','n',' ','i','s','i','n','f',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  14482. '(','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',')',')',' ','(',')',')',')',
  14483. '(','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',')',')',' ','(',')',')',')',
  14484. '(','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',')',')',' ','(',')',')',')',
  14485. '(','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',')',')',' ','(',')',')',')',
  14486. '(','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',')',')',' ','(',')',')',')',
  14487. '(','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',')',')',' ','(',')',')',')',
  14488. '(','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',')',')',' ','(',')',')',')',
  14489. '(','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',')',')',' ','(',')',')',')',
  14490. '(','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',')',')',' ','(',')',')',')',
  14491. '(','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',')',')',' ','(',')',')',')',
  14492. '(','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',')',')',' ','(',')',')',')',
  14493. '(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','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',')',')',' ','(',')',')',')',
  14494. '(','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',')',')',' ','(',')',')',')',
  14495. '(','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',')',')',' ','(',')',')',')',
  14496. '(','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',')',')',' ','(',')',')',')',
  14497. '(','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',')',')',' ','(',')',')',')',
  14498. '(','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',')',')',' ','(',')',')',')',
  14499. '(','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',')',')',' ','(',')',')',')',
  14500. '(','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',')',')',' ','(',')',')',')',
  14501. '(','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',')',')',' ','(',')',')',')',
  14502. '(','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',')',')',' ','(',')',')',')',
  14503. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','S','i','z','e',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',')',
  14504. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',')',
  14505. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t','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',')',')',' ','(',')',')',')',
  14506. '(','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',')',')',' ','(',')',')',')',
  14507. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  14508. '(','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','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','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',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','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','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','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','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',')',' ','(',')',')',')',
  14509. '(','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','2','D','R','e','c','t',' ','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','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','R','e','c','t',' ','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','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','R','e','c','t',' ','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','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',')',' ','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',')',')',' ','(',')',')',')',
  14510. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','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',')',')',' ','(',')',')',' ','(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  14511. '(','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',')',')',' ','(',')',')',')',
  14512. '(','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',')',')',' ','(',')',')',')',
  14513. '(','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',')',')',' ','(',')',')',')',
  14514. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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','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',')',')',' ','(',')',')',')',
  14515. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  14516. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  14517. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','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',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
  14518. '(','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',')',')',' ','(',')',')',')',
  14519. '(','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',')',')',' ','(',')',')',')',
  14520. '(','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',')',')',' ','(',')',')',')',
  14521. '(','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',')',')',' ','(',')',')',')',
  14522. '(','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',')',')',' ','(',')',')',')',
  14523. '(','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',')',')',' ','(',')',')',')',
  14524. '(','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',')',')',' ','(',')',')',')',
  14525. '(','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',')',')',' ','(',')',')',')',
  14526. '(','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',')',')',' ','(',')',')',')',
  14527. '(','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',')',')',' ','(',')',')',')',
  14528. '(','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',')',')',' ','(',')',')',')',
  14529. '(','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',')',')',' ','(',')',')',')',
  14530. '(','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',')',')',' ','(',')',')',')',
  14531. '(','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',')',')',' ','(',')',')',')',
  14532. '(','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',')',')',' ','(',')',')',')',
  14533. '(','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',')',')',' ','(',')',')',')',
  14534. '(','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',')',')',' ','(',')',')',')',
  14535. '(','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',')',')',' ','(',')',')',')',
  14536. '(','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',')',')',' ','(',')',')',')',
  14537. '(','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',')',')',' ','(',')',')',')',
  14538. '(','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',')',')',' ','(',')',')',')',
  14539. '(','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',')',')',' ','(',')',')',')',
  14540. '(','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',')',')',' ','(',')',')',')',
  14541. '(','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',')',')',' ','(',')',')',')',
  14542. '(','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',')',')',' ','(',')',')',')',
  14543. '(','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',')',')',' ','(',')',')',')',')'} ;
  14544. static const char *functions_for_140_glsl [] = {
  14545.    builtin_abs,
  14546.    builtin_acos,
  14547.    builtin_acosh,
  14548.    builtin_all,
  14549.    builtin_any,
  14550.    builtin_asin,
  14551.    builtin_asinh,
  14552.    builtin_atan,
  14553.    builtin_atanh,
  14554.    builtin_ceil,
  14555.    builtin_clamp,
  14556.    builtin_cos,
  14557.    builtin_cosh,
  14558.    builtin_cross,
  14559.    builtin_degrees,
  14560.    builtin_distance,
  14561.    builtin_dot,
  14562.    builtin_equal,
  14563.    builtin_exp,
  14564.    builtin_exp2,
  14565.    builtin_faceforward,
  14566.    builtin_floor,
  14567.    builtin_fract,
  14568.    builtin_greaterThan,
  14569.    builtin_greaterThanEqual,
  14570.    builtin_inverse,
  14571.    builtin_inversesqrt,
  14572.    builtin_isinf,
  14573.    builtin_isnan,
  14574.    builtin_length,
  14575.    builtin_lessThan,
  14576.    builtin_lessThanEqual,
  14577.    builtin_log,
  14578.    builtin_log2,
  14579.    builtin_matrixCompMult,
  14580.    builtin_max,
  14581.    builtin_min,
  14582.    builtin_mix,
  14583.    builtin_mod,
  14584.    builtin_modf,
  14585.    builtin_noise1,
  14586.    builtin_noise2,
  14587.    builtin_noise3,
  14588.    builtin_noise4,
  14589.    builtin_normalize,
  14590.    builtin_not,
  14591.    builtin_notEqual,
  14592.    builtin_outerProduct,
  14593.    builtin_pow,
  14594.    builtin_radians,
  14595.    builtin_reflect,
  14596.    builtin_refract,
  14597.    builtin_round,
  14598.    builtin_roundEven,
  14599.    builtin_shadow1D,
  14600.    builtin_shadow1DLod,
  14601.    builtin_shadow1DProj,
  14602.    builtin_shadow1DProjLod,
  14603.    builtin_shadow2D,
  14604.    builtin_shadow2DLod,
  14605.    builtin_shadow2DProj,
  14606.    builtin_shadow2DProjLod,
  14607.    builtin_sign,
  14608.    builtin_sin,
  14609.    builtin_sinh,
  14610.    builtin_smoothstep,
  14611.    builtin_sqrt,
  14612.    builtin_step,
  14613.    builtin_tan,
  14614.    builtin_tanh,
  14615.    builtin_texelFetch,
  14616.    builtin_texelFetchOffset,
  14617.    builtin_texture,
  14618.    builtin_texture1D,
  14619.    builtin_texture1DLod,
  14620.    builtin_texture1DProj,
  14621.    builtin_texture1DProjLod,
  14622.    builtin_texture2D,
  14623.    builtin_texture2DLod,
  14624.    builtin_texture2DProj,
  14625.    builtin_texture2DProjLod,
  14626.    builtin_texture3D,
  14627.    builtin_texture3DLod,
  14628.    builtin_texture3DProj,
  14629.    builtin_texture3DProjLod,
  14630.    builtin_textureCube,
  14631.    builtin_textureCubeLod,
  14632.    builtin_textureGrad,
  14633.    builtin_textureGradOffset,
  14634.    builtin_textureLod,
  14635.    builtin_textureLodOffset,
  14636.    builtin_textureOffset,
  14637.    builtin_textureProj,
  14638.    builtin_textureProjGrad,
  14639.    builtin_textureProjGradOffset,
  14640.    builtin_textureProjLod,
  14641.    builtin_textureProjLodOffset,
  14642.    builtin_textureProjOffset,
  14643.    builtin_textureSize,
  14644.    builtin_transpose,
  14645.    builtin_trunc,
  14646. };
  14647. static const char prototypes_for_150_frag[] =
  14648.    "(\n"
  14649.    "(function texture\n"
  14650.    "  (signature vec4\n"
  14651.    "    (parameters\n"
  14652.    "      (declare (in) sampler1D sampler)\n"
  14653.    "      (declare (in) float P)\n"
  14654.    "      (declare (in) float bias))\n"
  14655.    "    ())\n"
  14656.    "  (signature ivec4\n"
  14657.    "    (parameters\n"
  14658.    "      (declare (in) isampler1D sampler)\n"
  14659.    "      (declare (in) float P)\n"
  14660.    "      (declare (in) float bias))\n"
  14661.    "    ())\n"
  14662.    "  (signature uvec4\n"
  14663.    "    (parameters\n"
  14664.    "      (declare (in) usampler1D sampler)\n"
  14665.    "      (declare (in) float P)\n"
  14666.    "      (declare (in) float bias))\n"
  14667.    "    ())\n"
  14668.    "  (signature vec4\n"
  14669.    "    (parameters\n"
  14670.    "      (declare (in) sampler2D sampler)\n"
  14671.    "      (declare (in) vec2 P)\n"
  14672.    "      (declare (in) float bias))\n"
  14673.    "    ())\n"
  14674.    "  (signature ivec4\n"
  14675.    "    (parameters\n"
  14676.    "      (declare (in) isampler2D sampler)\n"
  14677.    "      (declare (in) vec2 P)\n"
  14678.    "      (declare (in) float bias))\n"
  14679.    "    ())\n"
  14680.    "  (signature uvec4\n"
  14681.    "    (parameters\n"
  14682.    "      (declare (in) usampler2D sampler)\n"
  14683.    "      (declare (in) vec2 P)\n"
  14684.    "      (declare (in) float bias))\n"
  14685.    "    ())\n"
  14686.    "  (signature vec4\n"
  14687.    "    (parameters\n"
  14688.    "      (declare (in) sampler3D sampler)\n"
  14689.    "      (declare (in) vec3 P)\n"
  14690.    "      (declare (in) float bias))\n"
  14691.    "    ())\n"
  14692.    "  (signature ivec4\n"
  14693.    "    (parameters\n"
  14694.    "      (declare (in) isampler3D sampler)\n"
  14695.    "      (declare (in) vec3 P)\n"
  14696.    "      (declare (in) float bias))\n"
  14697.    "    ())\n"
  14698.    "  (signature uvec4\n"
  14699.    "    (parameters\n"
  14700.    "      (declare (in) usampler3D sampler)\n"
  14701.    "      (declare (in) vec3 P)\n"
  14702.    "      (declare (in) float bias))\n"
  14703.    "    ())\n"
  14704.    "  (signature vec4\n"
  14705.    "    (parameters\n"
  14706.    "      (declare (in) samplerCube sampler)\n"
  14707.    "      (declare (in) vec3 P)\n"
  14708.    "      (declare (in) float bias))\n"
  14709.    "    ())\n"
  14710.    "  (signature ivec4\n"
  14711.    "    (parameters\n"
  14712.    "      (declare (in) isamplerCube sampler)\n"
  14713.    "      (declare (in) vec3 P)\n"
  14714.    "      (declare (in) float bias))\n"
  14715.    "    ())\n"
  14716.    "  (signature uvec4\n"
  14717.    "    (parameters\n"
  14718.    "      (declare (in) usamplerCube sampler)\n"
  14719.    "      (declare (in) vec3 P)\n"
  14720.    "      (declare (in) float bias))\n"
  14721.    "    ())\n"
  14722.    "  (signature float\n"
  14723.    "    (parameters\n"
  14724.    "      (declare (in) sampler1DShadow sampler)\n"
  14725.    "      (declare (in) vec3 P)\n"
  14726.    "      (declare (in) float bias))\n"
  14727.    "    ())\n"
  14728.    "  (signature float\n"
  14729.    "    (parameters\n"
  14730.    "      (declare (in) sampler2DShadow sampler)\n"
  14731.    "      (declare (in) vec3 P)\n"
  14732.    "      (declare (in) float bias))\n"
  14733.    "    ())\n"
  14734.    "  (signature float\n"
  14735.    "    (parameters\n"
  14736.    "      (declare (in) samplerCubeShadow sampler)\n"
  14737.    "      (declare (in) vec4 P)\n"
  14738.    "      (declare (in) float bias))\n"
  14739.    "    ())\n"
  14740.    "  (signature vec4\n"
  14741.    "    (parameters\n"
  14742.    "      (declare (in) sampler1DArray sampler)\n"
  14743.    "      (declare (in) vec2 P)\n"
  14744.    "      (declare (in) float bias))\n"
  14745.    "    ())\n"
  14746.    "  (signature ivec4\n"
  14747.    "    (parameters\n"
  14748.    "      (declare (in) isampler1DArray sampler)\n"
  14749.    "      (declare (in) vec2 P)\n"
  14750.    "      (declare (in) float bias))\n"
  14751.    "    ())\n"
  14752.    "  (signature uvec4\n"
  14753.    "    (parameters\n"
  14754.    "      (declare (in) usampler1DArray sampler)\n"
  14755.    "      (declare (in) vec2 P)\n"
  14756.    "      (declare (in) float bias))\n"
  14757.    "    ())\n"
  14758.    "  (signature vec4\n"
  14759.    "    (parameters\n"
  14760.    "      (declare (in) sampler2DArray sampler)\n"
  14761.    "      (declare (in) vec3 P)\n"
  14762.    "      (declare (in) float bias))\n"
  14763.    "    ())\n"
  14764.    "  (signature ivec4\n"
  14765.    "    (parameters\n"
  14766.    "      (declare (in) isampler2DArray sampler)\n"
  14767.    "      (declare (in) vec3 P)\n"
  14768.    "      (declare (in) float bias))\n"
  14769.    "    ())\n"
  14770.    "  (signature uvec4\n"
  14771.    "    (parameters\n"
  14772.    "      (declare (in) usampler2DArray sampler)\n"
  14773.    "      (declare (in) vec3 P)\n"
  14774.    "      (declare (in) float bias))\n"
  14775.    "    ())\n"
  14776.    "  (signature float\n"
  14777.    "    (parameters\n"
  14778.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  14779.    "      (declare (in) vec3 P)\n"
  14780.    "      (declare (in) float bias))\n"
  14781.    "    ()))\n"
  14782.    "(function textureProj\n"
  14783.    "  (signature vec4\n"
  14784.    "    (parameters\n"
  14785.    "      (declare (in) sampler1D sampler)\n"
  14786.    "      (declare (in) vec2 P)\n"
  14787.    "      (declare (in) float bias))\n"
  14788.    "    ())\n"
  14789.    "  (signature ivec4\n"
  14790.    "    (parameters\n"
  14791.    "      (declare (in) isampler1D sampler)\n"
  14792.    "      (declare (in) vec2 P)\n"
  14793.    "      (declare (in) float bias))\n"
  14794.    "    ())\n"
  14795.    "  (signature uvec4\n"
  14796.    "    (parameters\n"
  14797.    "      (declare (in) usampler1D sampler)\n"
  14798.    "      (declare (in) vec2 P)\n"
  14799.    "      (declare (in) float bias))\n"
  14800.    "    ())\n"
  14801.    "  (signature vec4\n"
  14802.    "    (parameters\n"
  14803.    "      (declare (in) sampler1D sampler)\n"
  14804.    "      (declare (in) vec4 P)\n"
  14805.    "      (declare (in) float bias))\n"
  14806.    "    ())\n"
  14807.    "  (signature ivec4\n"
  14808.    "    (parameters\n"
  14809.    "      (declare (in) isampler1D sampler)\n"
  14810.    "      (declare (in) vec4 P)\n"
  14811.    "      (declare (in) float bias))\n"
  14812.    "    ())\n"
  14813.    "  (signature uvec4\n"
  14814.    "    (parameters\n"
  14815.    "      (declare (in) usampler1D sampler)\n"
  14816.    "      (declare (in) vec4 P)\n"
  14817.    "      (declare (in) float bias))\n"
  14818.    "    ())\n"
  14819.    "  (signature vec4\n"
  14820.    "    (parameters\n"
  14821.    "      (declare (in) sampler2D sampler)\n"
  14822.    "      (declare (in) vec3 P)\n"
  14823.    "      (declare (in) float bias))\n"
  14824.    "    ())\n"
  14825.    "  (signature ivec4\n"
  14826.    "    (parameters\n"
  14827.    "      (declare (in) isampler2D sampler)\n"
  14828.    "      (declare (in) vec3 P)\n"
  14829.    "      (declare (in) float bias))\n"
  14830.    "    ())\n"
  14831.    "  (signature uvec4\n"
  14832.    "    (parameters\n"
  14833.    "      (declare (in) usampler2D sampler)\n"
  14834.    "      (declare (in) vec3 P)\n"
  14835.    "      (declare (in) float bias))\n"
  14836.    "    ())\n"
  14837.    "  (signature vec4\n"
  14838.    "    (parameters\n"
  14839.    "      (declare (in) sampler2D sampler)\n"
  14840.    "      (declare (in) vec4 P)\n"
  14841.    "      (declare (in) float bias))\n"
  14842.    "    ())\n"
  14843.    "  (signature ivec4\n"
  14844.    "    (parameters\n"
  14845.    "      (declare (in) isampler2D sampler)\n"
  14846.    "      (declare (in) vec4 P)\n"
  14847.    "      (declare (in) float bias))\n"
  14848.    "    ())\n"
  14849.    "  (signature uvec4\n"
  14850.    "    (parameters\n"
  14851.    "      (declare (in) usampler2D sampler)\n"
  14852.    "      (declare (in) vec4 P)\n"
  14853.    "      (declare (in) float bias))\n"
  14854.    "    ())\n"
  14855.    "  (signature vec4\n"
  14856.    "    (parameters\n"
  14857.    "      (declare (in) sampler3D sampler)\n"
  14858.    "      (declare (in) vec4 P)\n"
  14859.    "      (declare (in) float bias))\n"
  14860.    "    ())\n"
  14861.    "  (signature ivec4\n"
  14862.    "    (parameters\n"
  14863.    "      (declare (in) isampler3D sampler)\n"
  14864.    "      (declare (in) vec4 P)\n"
  14865.    "      (declare (in) float bias))\n"
  14866.    "    ())\n"
  14867.    "  (signature uvec4\n"
  14868.    "    (parameters\n"
  14869.    "      (declare (in) usampler3D sampler)\n"
  14870.    "      (declare (in) vec4 P)\n"
  14871.    "      (declare (in) float bias))\n"
  14872.    "    ())\n"
  14873.    "  (signature float\n"
  14874.    "    (parameters\n"
  14875.    "      (declare (in) sampler1DShadow sampler)\n"
  14876.    "      (declare (in) vec4 P)\n"
  14877.    "      (declare (in) float bias))\n"
  14878.    "    ())\n"
  14879.    "  (signature float\n"
  14880.    "    (parameters\n"
  14881.    "      (declare (in) sampler2DShadow sampler)\n"
  14882.    "      (declare (in) vec4 P)\n"
  14883.    "      (declare (in) float bias))\n"
  14884.    "    ()))\n"
  14885.    "(function textureOffset\n"
  14886.    "  (signature vec4\n"
  14887.    "    (parameters\n"
  14888.    "      (declare (in) sampler1D sampler)\n"
  14889.    "      (declare (in) float P)\n"
  14890.    "      (declare (in) int offset)\n"
  14891.    "      (declare (in) float bias))\n"
  14892.    "    ())\n"
  14893.    "  (signature ivec4\n"
  14894.    "    (parameters\n"
  14895.    "      (declare (in) isampler1D sampler)\n"
  14896.    "      (declare (in) float P)\n"
  14897.    "      (declare (in) int offset)\n"
  14898.    "      (declare (in) float bias))\n"
  14899.    "    ())\n"
  14900.    "  (signature uvec4\n"
  14901.    "    (parameters\n"
  14902.    "      (declare (in) usampler1D sampler)\n"
  14903.    "      (declare (in) float P)\n"
  14904.    "      (declare (in) int offset)\n"
  14905.    "      (declare (in) float bias))\n"
  14906.    "    ())\n"
  14907.    "  (signature vec4\n"
  14908.    "    (parameters\n"
  14909.    "      (declare (in) sampler2D sampler)\n"
  14910.    "      (declare (in) vec2 P)\n"
  14911.    "      (declare (in) ivec2 offset)\n"
  14912.    "      (declare (in) float bias))\n"
  14913.    "    ())\n"
  14914.    "  (signature ivec4\n"
  14915.    "    (parameters\n"
  14916.    "      (declare (in) isampler2D sampler)\n"
  14917.    "      (declare (in) vec2 P)\n"
  14918.    "      (declare (in) ivec2 offset)\n"
  14919.    "      (declare (in) float bias))\n"
  14920.    "    ())\n"
  14921.    "  (signature uvec4\n"
  14922.    "    (parameters\n"
  14923.    "      (declare (in) usampler2D sampler)\n"
  14924.    "      (declare (in) vec2 P)\n"
  14925.    "      (declare (in) ivec2 offset)\n"
  14926.    "      (declare (in) float bias))\n"
  14927.    "    ())\n"
  14928.    "  (signature vec4\n"
  14929.    "    (parameters\n"
  14930.    "      (declare (in) sampler3D sampler)\n"
  14931.    "      (declare (in) vec3 P)\n"
  14932.    "      (declare (in) ivec3 offset)\n"
  14933.    "      (declare (in) float bias))\n"
  14934.    "    ())\n"
  14935.    "  (signature ivec4\n"
  14936.    "    (parameters\n"
  14937.    "      (declare (in) isampler3D sampler)\n"
  14938.    "      (declare (in) vec3 P)\n"
  14939.    "      (declare (in) ivec3 offset)\n"
  14940.    "      (declare (in) float bias))\n"
  14941.    "    ())\n"
  14942.    "  (signature uvec4\n"
  14943.    "    (parameters\n"
  14944.    "      (declare (in) usampler3D sampler)\n"
  14945.    "      (declare (in) vec3 P)\n"
  14946.    "      (declare (in) ivec3 offset)\n"
  14947.    "      (declare (in) float bias))\n"
  14948.    "    ())\n"
  14949.    "  (signature float\n"
  14950.    "    (parameters\n"
  14951.    "      (declare (in) sampler1DShadow sampler)\n"
  14952.    "      (declare (in) vec3 P)\n"
  14953.    "      (declare (in) int offset)\n"
  14954.    "      (declare (in) float bias))\n"
  14955.    "    ())\n"
  14956.    "  (signature float\n"
  14957.    "    (parameters\n"
  14958.    "      (declare (in) sampler2DShadow sampler)\n"
  14959.    "      (declare (in) vec3 P)\n"
  14960.    "      (declare (in) ivec2 offset)\n"
  14961.    "      (declare (in) float bias))\n"
  14962.    "    ())\n"
  14963.    "  (signature vec4\n"
  14964.    "    (parameters\n"
  14965.    "      (declare (in) sampler1DArray sampler)\n"
  14966.    "      (declare (in) vec2 P)\n"
  14967.    "      (declare (in) int offset)\n"
  14968.    "      (declare (in) float bias))\n"
  14969.    "    ())\n"
  14970.    "  (signature ivec4\n"
  14971.    "    (parameters\n"
  14972.    "      (declare (in) isampler1DArray sampler)\n"
  14973.    "      (declare (in) vec2 P)\n"
  14974.    "      (declare (in) int offset)\n"
  14975.    "      (declare (in) float bias))\n"
  14976.    "    ())\n"
  14977.    "  (signature uvec4\n"
  14978.    "    (parameters\n"
  14979.    "      (declare (in) usampler1DArray sampler)\n"
  14980.    "      (declare (in) vec2 P)\n"
  14981.    "      (declare (in) int offset)\n"
  14982.    "      (declare (in) float bias))\n"
  14983.    "    ())\n"
  14984.    "  (signature vec4\n"
  14985.    "    (parameters\n"
  14986.    "      (declare (in) sampler2DArray sampler)\n"
  14987.    "      (declare (in) vec3 P)\n"
  14988.    "      (declare (in) ivec2 offset)\n"
  14989.    "      (declare (in) float bias))\n"
  14990.    "    ())\n"
  14991.    "  (signature ivec4\n"
  14992.    "    (parameters\n"
  14993.    "      (declare (in) isampler2DArray sampler)\n"
  14994.    "      (declare (in) vec3 P)\n"
  14995.    "      (declare (in) ivec2 offset)\n"
  14996.    "      (declare (in) float bias))\n"
  14997.    "    ())\n"
  14998.    "  (signature uvec4\n"
  14999.    "    (parameters\n"
  15000.    "      (declare (in) usampler2DArray sampler)\n"
  15001.    "      (declare (in) vec3 P)\n"
  15002.    "      (declare (in) ivec2 offset)\n"
  15003.    "      (declare (in) float bias))\n"
  15004.    "    ())\n"
  15005.    "  (signature float\n"
  15006.    "    (parameters\n"
  15007.    "      (declare (in) sampler1DArrayShadow samp)\n"
  15008.    "      (declare (in) vec3 P)\n"
  15009.    "      (declare (in) int offset)\n"
  15010.    "      (declare (in) float bias))\n"
  15011.    "    ()))\n"
  15012.    "(function textureProjOffset\n"
  15013.    "  (signature vec4\n"
  15014.    "    (parameters\n"
  15015.    "      (declare (in) sampler1D sampler)\n"
  15016.    "      (declare (in) vec2 P)\n"
  15017.    "      (declare (in) int offset)\n"
  15018.    "      (declare (in) float bias))\n"
  15019.    "    ())\n"
  15020.    "  (signature ivec4\n"
  15021.    "    (parameters\n"
  15022.    "      (declare (in) isampler1D sampler)\n"
  15023.    "      (declare (in) vec2 P)\n"
  15024.    "      (declare (in) int offset)\n"
  15025.    "      (declare (in) float bias))\n"
  15026.    "    ())\n"
  15027.    "  (signature uvec4\n"
  15028.    "    (parameters\n"
  15029.    "      (declare (in) usampler1D sampler)\n"
  15030.    "      (declare (in) vec2 P)\n"
  15031.    "      (declare (in) int offset)\n"
  15032.    "      (declare (in) float bias))\n"
  15033.    "    ())\n"
  15034.    "  (signature vec4\n"
  15035.    "    (parameters\n"
  15036.    "      (declare (in) sampler1D sampler)\n"
  15037.    "      (declare (in) vec4 P)\n"
  15038.    "      (declare (in) int offset)\n"
  15039.    "      (declare (in) float bias))\n"
  15040.    "    ())\n"
  15041.    "  (signature ivec4\n"
  15042.    "    (parameters\n"
  15043.    "      (declare (in) isampler1D sampler)\n"
  15044.    "      (declare (in) vec4 P)\n"
  15045.    "      (declare (in) int offset)\n"
  15046.    "      (declare (in) float bias))\n"
  15047.    "    ())\n"
  15048.    "  (signature uvec4\n"
  15049.    "    (parameters\n"
  15050.    "      (declare (in) usampler1D sampler)\n"
  15051.    "      (declare (in) vec4 P)\n"
  15052.    "      (declare (in) int offset)\n"
  15053.    "      (declare (in) float bias))\n"
  15054.    "    ())\n"
  15055.    "  (signature vec4\n"
  15056.    "    (parameters\n"
  15057.    "      (declare (in) sampler2D sampler)\n"
  15058.    "      (declare (in) vec3 P)\n"
  15059.    "      (declare (in) ivec2 offset)\n"
  15060.    "      (declare (in) float bias))\n"
  15061.    "    ())\n"
  15062.    "  (signature ivec4\n"
  15063.    "    (parameters\n"
  15064.    "      (declare (in) isampler2D sampler)\n"
  15065.    "      (declare (in) vec3 P)\n"
  15066.    "      (declare (in) ivec2 offset)\n"
  15067.    "      (declare (in) float bias))\n"
  15068.    "    ())\n"
  15069.    "  (signature uvec4\n"
  15070.    "    (parameters\n"
  15071.    "      (declare (in) usampler2D sampler)\n"
  15072.    "      (declare (in) vec3 P)\n"
  15073.    "      (declare (in) ivec2 offset)\n"
  15074.    "      (declare (in) float bias))\n"
  15075.    "    ())\n"
  15076.    "  (signature vec4\n"
  15077.    "    (parameters\n"
  15078.    "      (declare (in) sampler2D sampler)\n"
  15079.    "      (declare (in) vec4 P)\n"
  15080.    "      (declare (in) ivec2 offset)\n"
  15081.    "      (declare (in) float bias))\n"
  15082.    "    ())\n"
  15083.    "  (signature ivec4\n"
  15084.    "    (parameters\n"
  15085.    "      (declare (in) isampler2D sampler)\n"
  15086.    "      (declare (in) vec4 P)\n"
  15087.    "      (declare (in) ivec2 offset)\n"
  15088.    "      (declare (in) float bias))\n"
  15089.    "    ())\n"
  15090.    "  (signature uvec4\n"
  15091.    "    (parameters\n"
  15092.    "      (declare (in) usampler2D sampler)\n"
  15093.    "      (declare (in) vec4 P)\n"
  15094.    "      (declare (in) ivec2 offset)\n"
  15095.    "      (declare (in) float bias))\n"
  15096.    "    ())\n"
  15097.    "  (signature vec4\n"
  15098.    "    (parameters\n"
  15099.    "      (declare (in) sampler3D sampler)\n"
  15100.    "      (declare (in) vec4 P)\n"
  15101.    "      (declare (in) ivec3 offset)\n"
  15102.    "      (declare (in) float bias))\n"
  15103.    "    ())\n"
  15104.    "  (signature ivec4\n"
  15105.    "    (parameters\n"
  15106.    "      (declare (in) isampler3D sampler)\n"
  15107.    "      (declare (in) vec4 P)\n"
  15108.    "      (declare (in) ivec3 offset)\n"
  15109.    "      (declare (in) float bias))\n"
  15110.    "    ())\n"
  15111.    "  (signature uvec4\n"
  15112.    "    (parameters\n"
  15113.    "      (declare (in) usampler3D sampler)\n"
  15114.    "      (declare (in) vec4 P)\n"
  15115.    "      (declare (in) ivec3 offset)\n"
  15116.    "      (declare (in) float bias))\n"
  15117.    "    ())\n"
  15118.    "  (signature float\n"
  15119.    "    (parameters\n"
  15120.    "      (declare (in) sampler1DShadow s)\n"
  15121.    "      (declare (in) vec4 P)\n"
  15122.    "      (declare (in) int offset)\n"
  15123.    "      (declare (in) float bias))\n"
  15124.    "    ())\n"
  15125.    "  (signature float\n"
  15126.    "    (parameters\n"
  15127.    "      (declare (in) sampler2DShadow s)\n"
  15128.    "      (declare (in) vec4 P)\n"
  15129.    "      (declare (in) ivec2 offset)\n"
  15130.    "      (declare (in) float bias))\n"
  15131.    "    ()))\n"
  15132.    "(function texture1D\n"
  15133.    "  (signature vec4\n"
  15134.    "    (parameters\n"
  15135.    "      (declare (in) sampler1D sampler)\n"
  15136.    "      (declare (in) float coord)\n"
  15137.    "      (declare (in) float bias))\n"
  15138.    "    ()))\n"
  15139.    "(function texture1DProj\n"
  15140.    "  (signature vec4\n"
  15141.    "    (parameters\n"
  15142.    "      (declare (in) sampler1D sampler)\n"
  15143.    "      (declare (in) vec2 coord)\n"
  15144.    "      (declare (in) float bias))\n"
  15145.    "    ())\n"
  15146.    "  (signature vec4\n"
  15147.    "    (parameters\n"
  15148.    "      (declare (in) sampler1D sampler)\n"
  15149.    "      (declare (in) vec4 coord)\n"
  15150.    "      (declare (in) float bias))\n"
  15151.    "    ()))\n"
  15152.    "(function texture2D\n"
  15153.    "  (signature vec4\n"
  15154.    "    (parameters\n"
  15155.    "      (declare (in) sampler2D sampler)\n"
  15156.    "      (declare (in) vec2 coord)\n"
  15157.    "      (declare (in) float bias))\n"
  15158.    "    ()))\n"
  15159.    "(function texture2DProj\n"
  15160.    "  (signature vec4\n"
  15161.    "    (parameters\n"
  15162.    "      (declare (in) sampler2D sampler)\n"
  15163.    "      (declare (in) vec3 coord)\n"
  15164.    "      (declare (in) float bias))\n"
  15165.    "    ())\n"
  15166.    "  (signature vec4\n"
  15167.    "    (parameters\n"
  15168.    "      (declare (in) sampler2D sampler)\n"
  15169.    "      (declare (in) vec4 coord)\n"
  15170.    "      (declare (in) float bias))\n"
  15171.    "    ()))\n"
  15172.    "(function texture3D\n"
  15173.    "  (signature vec4\n"
  15174.    "    (parameters\n"
  15175.    "      (declare (in) sampler3D sampler)\n"
  15176.    "      (declare (in) vec3 coord)\n"
  15177.    "      (declare (in) float bias))\n"
  15178.    "    ()))\n"
  15179.    "(function texture3DProj\n"
  15180.    "  (signature vec4\n"
  15181.    "    (parameters\n"
  15182.    "      (declare (in) sampler3D sampler)\n"
  15183.    "      (declare (in) vec4 coord)\n"
  15184.    "      (declare (in) float bias))\n"
  15185.    "    ()))\n"
  15186.    "(function textureCube\n"
  15187.    "  (signature vec4\n"
  15188.    "    (parameters\n"
  15189.    "      (declare (in) samplerCube sampler)\n"
  15190.    "      (declare (in) vec3 coord)\n"
  15191.    "      (declare (in) float bias))\n"
  15192.    "    ()))\n"
  15193.    "(function shadow1D\n"
  15194.    "  (signature vec4\n"
  15195.    "    (parameters\n"
  15196.    "      (declare (in) sampler1DShadow sampler)\n"
  15197.    "      (declare (in) vec3 coord)\n"
  15198.    "      (declare (in) float bias))\n"
  15199.    "    ()))\n"
  15200.    "(function shadow2D\n"
  15201.    "  (signature vec4\n"
  15202.    "    (parameters\n"
  15203.    "      (declare (in) sampler2DShadow sampler)\n"
  15204.    "      (declare (in) vec3 coord)\n"
  15205.    "      (declare (in) float bias))\n"
  15206.    "    ()))\n"
  15207.    "(function shadow1DProj\n"
  15208.    "  (signature vec4\n"
  15209.    "    (parameters\n"
  15210.    "      (declare (in) sampler1DShadow sampler)\n"
  15211.    "      (declare (in) vec4 coord)\n"
  15212.    "      (declare (in) float bias))\n"
  15213.    "    ()))\n"
  15214.    "(function shadow2DProj\n"
  15215.    "  (signature vec4\n"
  15216.    "    (parameters\n"
  15217.    "      (declare (in) sampler2DShadow sampler)\n"
  15218.    "      (declare (in) vec4 coord)\n"
  15219.    "      (declare (in) float bias))\n"
  15220.    "    ()))\n"
  15221.    "(function dFdx\n"
  15222.    "  (signature float\n"
  15223.    "    (parameters\n"
  15224.    "      (declare (in) float p))\n"
  15225.    "    ())\n"
  15226.    "  (signature vec2\n"
  15227.    "    (parameters\n"
  15228.    "      (declare (in) vec2 p))\n"
  15229.    "    ())\n"
  15230.    "  (signature vec3\n"
  15231.    "    (parameters\n"
  15232.    "      (declare (in) vec3 p))\n"
  15233.    "    ())\n"
  15234.    "  (signature vec4\n"
  15235.    "    (parameters\n"
  15236.    "      (declare (in) vec4 p))\n"
  15237.    "    ()))\n"
  15238.    "(function dFdy\n"
  15239.    "  (signature float\n"
  15240.    "    (parameters\n"
  15241.    "      (declare (in) float p))\n"
  15242.    "    ())\n"
  15243.    "  (signature vec2\n"
  15244.    "    (parameters\n"
  15245.    "      (declare (in) vec2 p))\n"
  15246.    "    ())\n"
  15247.    "  (signature vec3\n"
  15248.    "    (parameters\n"
  15249.    "      (declare (in) vec3 p))\n"
  15250.    "    ())\n"
  15251.    "  (signature vec4\n"
  15252.    "    (parameters\n"
  15253.    "      (declare (in) vec4 p))\n"
  15254.    "    ()))\n"
  15255.    "(function fwidth\n"
  15256.    "  (signature float\n"
  15257.    "    (parameters\n"
  15258.    "      (declare (in) float p))\n"
  15259.    "    ())\n"
  15260.    "  (signature vec2\n"
  15261.    "    (parameters\n"
  15262.    "      (declare (in) vec2 p))\n"
  15263.    "    ())\n"
  15264.    "  (signature vec3\n"
  15265.    "    (parameters\n"
  15266.    "      (declare (in) vec3 p))\n"
  15267.    "    ())\n"
  15268.    "  (signature vec4\n"
  15269.    "    (parameters\n"
  15270.    "      (declare (in) vec4 p))\n"
  15271.    "    ())))"
  15272. ;
  15273. static const char *functions_for_150_frag [] = {
  15274.    builtin_dFdx,
  15275.    builtin_dFdy,
  15276.    builtin_fwidth,
  15277.    builtin_shadow1D,
  15278.    builtin_shadow1DProj,
  15279.    builtin_shadow2D,
  15280.    builtin_shadow2DProj,
  15281.    builtin_texture,
  15282.    builtin_texture1D,
  15283.    builtin_texture1DProj,
  15284.    builtin_texture2D,
  15285.    builtin_texture2DProj,
  15286.    builtin_texture3D,
  15287.    builtin_texture3DProj,
  15288.    builtin_textureCube,
  15289.    builtin_textureOffset,
  15290.    builtin_textureProj,
  15291.    builtin_textureProjOffset,
  15292. };
  15293. static const char prototypes_for_150_glsl[] =
  15294. {'(',
  15295. '(','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',')',')',' ','(',')',')',')',
  15296. '(','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',')',')',' ','(',')',')',')',
  15297. '(','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',')',')',' ','(',')',')',')',
  15298. '(','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',')',')',' ','(',')',')',')',
  15299. '(','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',')',')',' ','(',')',')',')',
  15300. '(','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',')',')',' ','(',')',')',')',
  15301. '(','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',')',')',' ','(',')',')',')',
  15302. '(','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',')',')',' ','(',')',')',')',
  15303. '(','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',')',')',' ','(',')',')',')',
  15304. '(','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',')',')',' ','(',')',')',')',
  15305. '(','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',')',')',' ','(',')',')',')',
  15306. '(','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',')',')',' ','(',')',')',')',
  15307. '(','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',')',')',' ','(',')',')',')',
  15308. '(','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',')',')',' ','(',')',')',')',
  15309. '(','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',')',')',' ','(',')',')',')',
  15310. '(','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',')',')',' ','(',')',')',')',
  15311. '(','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',')',')',' ','(',')',')',')',
  15312. '(','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',')',')',' ','(',')',')',')',
  15313. '(','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',')',')',' ','(',')',')',')',
  15314. '(','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',')',')',' ','(',')',')',')',
  15315. '(','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',')',')',' ','(',')',')',')',
  15316. '(','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',')',')',' ','(',')',')',')',
  15317. '(','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',')',')',' ','(',')',')',')',
  15318. '(','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',')',')',' ','(',')',')',')',
  15319. '(','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',')',')',' ','(',')',')',')',
  15320. '(','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',')',')',' ','(',')',')',')',
  15321. '(','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',')',')',' ','(',')',')',')',
  15322. '(','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',')',')',' ','(',')',')',')',
  15323. '(','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',')',')',' ','(',')',')',')',
  15324. '(','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',')',')',' ','(',')',')',')',
  15325. '(','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',')',')',' ','(',')',')',')',
  15326. '(','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',')',')',' ','(',')',')',')',
  15327. '(','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',')',')',' ','(',')',')',')',
  15328. '(','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',')',')',' ','(',')',')',')',
  15329. '(','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',')',')',' ','(',')',')',' ','(','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',')',' ','b','o','o','l',' ','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',')',' ','b','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',')',' ','b','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',')',' ','b','v','e','c','4',' ','a',')',')',' ','(',')',')',')',
  15330. '(','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',')',')',' ','(',')',')',')',
  15331. '(','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',')',')',' ','(',')',')',')',
  15332. '(','f','u','n','c','t','i','o','n',' ','i','s','n','a','n',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  15333. '(','f','u','n','c','t','i','o','n',' ','i','s','i','n','f',' ','(','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',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  15334. '(','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',')',')',' ','(',')',')',')',
  15335. '(','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',')',')',' ','(',')',')',')',
  15336. '(','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',')',')',' ','(',')',')',')',
  15337. '(','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',')',')',' ','(',')',')',')',
  15338. '(','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',')',')',' ','(',')',')',')',
  15339. '(','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',')',')',' ','(',')',')',')',
  15340. '(','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',')',')',' ','(',')',')',')',
  15341. '(','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',')',')',' ','(',')',')',')',
  15342. '(','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',')',')',' ','(',')',')',')',
  15343. '(','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',')',')',' ','(',')',')',')',
  15344. '(','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',')',')',' ','(',')',')',')',
  15345. '(','f','u','n','c','t','i','o','n',' ','d','e','t','e','r','m','i','n','a','n','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',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','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',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','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',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',')',
  15346. '(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','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',')',')',' ','(',')',')',')',
  15347. '(','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',')',')',' ','(',')',')',')',
  15348. '(','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',')',')',' ','(',')',')',')',
  15349. '(','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',')',')',' ','(',')',')',')',
  15350. '(','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',')',')',' ','(',')',')',')',
  15351. '(','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',')',')',' ','(',')',')',')',
  15352. '(','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',')',')',' ','(',')',')',')',
  15353. '(','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',')',')',' ','(',')',')',')',
  15354. '(','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',')',')',' ','(',')',')',')',
  15355. '(','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',')',')',' ','(',')',')',')',
  15356. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','S','i','z','e',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','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',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','M','S',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','2','D','M','S',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','2','D','M','S',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','s','a','m','p','l','e','r','2','D','M','S','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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','s','a','m','p','l','e','r','2','D','M','S','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','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',')',' ','u','s','a','m','p','l','e','r','2','D','M','S','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',')',
  15357. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',')',
  15358. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t','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',')',')',' ','(',')',')',')',
  15359. '(','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',')',')',' ','(',')',')',')',
  15360. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  15361. '(','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','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','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','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',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','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','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','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','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','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','M','S',' ','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',' ','s','a','m','p','l','e',')',')',' ','(',')',')',' ','(','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','M','S',' ','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',' ','s','a','m','p','l','e',')',')',' ','(',')',')',' ','(','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','M','S',' ','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',' ','s','a','m','p','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',')',' ','s','a','m','p','l','e','r','2','D','M','S','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',' ','s','a','m','p','l','e',')',')',' ','(',')',')',' ','(','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','M','S','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',' ','s','a','m','p','l','e',')',')',' ','(',')',')',' ','(','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','M','S','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',' ','s','a','m','p','l','e',')',')',' ','(',')',')',')',
  15362. '(','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','2','D','R','e','c','t',' ','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','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','R','e','c','t',' ','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','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','R','e','c','t',' ','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','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',')',' ','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',')',')',' ','(',')',')',')',
  15363. '(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','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',')',')',' ','(',')',')',' ','(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  15364. '(','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',')',')',' ','(',')',')',')',
  15365. '(','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',')',')',' ','(',')',')',')',
  15366. '(','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',')',')',' ','(',')',')',')',
  15367. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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','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',')',')',' ','(',')',')',')',
  15368. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',' ','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',')',')',' ','(',')',')',')',
  15369. '(','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',' ','v','e','c','4',' ','(','p','a','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',' ','(','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',')',')',' ','(',')',')',')',
  15370. '(','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','2','D','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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','R','e','c','t',' ','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',' ','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','R','e','c','t','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',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','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',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')',
  15371. '(','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',')',')',' ','(',')',')',')',
  15372. '(','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',')',')',' ','(',')',')',')',
  15373. '(','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',')',')',' ','(',')',')',')',
  15374. '(','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',')',')',' ','(',')',')',')',
  15375. '(','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',')',')',' ','(',')',')',')',
  15376. '(','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',')',')',' ','(',')',')',')',
  15377. '(','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',')',')',' ','(',')',')',')',
  15378. '(','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',')',')',' ','(',')',')',')',
  15379. '(','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',')',')',' ','(',')',')',')',
  15380. '(','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',')',')',' ','(',')',')',')',
  15381. '(','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',')',')',' ','(',')',')',')',
  15382. '(','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',')',')',' ','(',')',')',')',
  15383. '(','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',')',')',' ','(',')',')',')',
  15384. '(','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',')',')',' ','(',')',')',')',
  15385. '(','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',')',')',' ','(',')',')',')',
  15386. '(','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',')',')',' ','(',')',')',')',
  15387. '(','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',')',')',' ','(',')',')',')',
  15388. '(','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',')',')',' ','(',')',')',')',
  15389. '(','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',')',')',' ','(',')',')',')',
  15390. '(','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',')',')',' ','(',')',')',')',
  15391. '(','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',')',')',' ','(',')',')',')',
  15392. '(','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',')',')',' ','(',')',')',')',
  15393. '(','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',')',')',' ','(',')',')',')',
  15394. '(','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',')',')',' ','(',')',')',')',
  15395. '(','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',')',')',' ','(',')',')',')',
  15396. '(','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',')',')',' ','(',')',')',')',')'} ;
  15397. static const char *functions_for_150_glsl [] = {
  15398.    builtin_abs,
  15399.    builtin_acos,
  15400.    builtin_acosh,
  15401.    builtin_all,
  15402.    builtin_any,
  15403.    builtin_asin,
  15404.    builtin_asinh,
  15405.    builtin_atan,
  15406.    builtin_atanh,
  15407.    builtin_ceil,
  15408.    builtin_clamp,
  15409.    builtin_cos,
  15410.    builtin_cosh,
  15411.    builtin_cross,
  15412.    builtin_degrees,
  15413.    builtin_determinant,
  15414.    builtin_distance,
  15415.    builtin_dot,
  15416.    builtin_equal,
  15417.    builtin_exp,
  15418.    builtin_exp2,
  15419.    builtin_faceforward,
  15420.    builtin_floor,
  15421.    builtin_fract,
  15422.    builtin_greaterThan,
  15423.    builtin_greaterThanEqual,
  15424.    builtin_inverse,
  15425.    builtin_inversesqrt,
  15426.    builtin_isinf,
  15427.    builtin_isnan,
  15428.    builtin_length,
  15429.    builtin_lessThan,
  15430.    builtin_lessThanEqual,
  15431.    builtin_log,
  15432.    builtin_log2,
  15433.    builtin_matrixCompMult,
  15434.    builtin_max,
  15435.    builtin_min,
  15436.    builtin_mix,
  15437.    builtin_mod,
  15438.    builtin_modf,
  15439.    builtin_noise1,
  15440.    builtin_noise2,
  15441.    builtin_noise3,
  15442.    builtin_noise4,
  15443.    builtin_normalize,
  15444.    builtin_not,
  15445.    builtin_notEqual,
  15446.    builtin_outerProduct,
  15447.    builtin_pow,
  15448.    builtin_radians,
  15449.    builtin_reflect,
  15450.    builtin_refract,
  15451.    builtin_round,
  15452.    builtin_roundEven,
  15453.    builtin_shadow1D,
  15454.    builtin_shadow1DLod,
  15455.    builtin_shadow1DProj,
  15456.    builtin_shadow1DProjLod,
  15457.    builtin_shadow2D,
  15458.    builtin_shadow2DLod,
  15459.    builtin_shadow2DProj,
  15460.    builtin_shadow2DProjLod,
  15461.    builtin_sign,
  15462.    builtin_sin,
  15463.    builtin_sinh,
  15464.    builtin_smoothstep,
  15465.    builtin_sqrt,
  15466.    builtin_step,
  15467.    builtin_tan,
  15468.    builtin_tanh,
  15469.    builtin_texelFetch,
  15470.    builtin_texelFetchOffset,
  15471.    builtin_texture,
  15472.    builtin_texture1D,
  15473.    builtin_texture1DLod,
  15474.    builtin_texture1DProj,
  15475.    builtin_texture1DProjLod,
  15476.    builtin_texture2D,
  15477.    builtin_texture2DLod,
  15478.    builtin_texture2DProj,
  15479.    builtin_texture2DProjLod,
  15480.    builtin_texture3D,
  15481.    builtin_texture3DLod,
  15482.    builtin_texture3DProj,
  15483.    builtin_texture3DProjLod,
  15484.    builtin_textureCube,
  15485.    builtin_textureCubeLod,
  15486.    builtin_textureGrad,
  15487.    builtin_textureGradOffset,
  15488.    builtin_textureLod,
  15489.    builtin_textureLodOffset,
  15490.    builtin_textureOffset,
  15491.    builtin_textureProj,
  15492.    builtin_textureProjGrad,
  15493.    builtin_textureProjGradOffset,
  15494.    builtin_textureProjLod,
  15495.    builtin_textureProjLodOffset,
  15496.    builtin_textureProjOffset,
  15497.    builtin_textureSize,
  15498.    builtin_transpose,
  15499.    builtin_trunc,
  15500. };
  15501. static const char prototypes_for_300es_frag[] =
  15502.    "(\n"
  15503.    "(function texture\n"
  15504.    "  (signature vec4\n"
  15505.    "    (parameters\n"
  15506.    "      (declare (in) sampler2D sampler)\n"
  15507.    "      (declare (in) vec2 P)\n"
  15508.    "      (declare (in) float bias))\n"
  15509.    "    ())\n"
  15510.    "  (signature ivec4\n"
  15511.    "    (parameters\n"
  15512.    "      (declare (in) isampler2D sampler)\n"
  15513.    "      (declare (in) vec2 P)\n"
  15514.    "      (declare (in) float bias))\n"
  15515.    "    ())\n"
  15516.    "  (signature uvec4\n"
  15517.    "    (parameters\n"
  15518.    "      (declare (in) usampler2D sampler)\n"
  15519.    "      (declare (in) vec2 P)\n"
  15520.    "      (declare (in) float bias))\n"
  15521.    "    ())\n"
  15522.    "  (signature vec4\n"
  15523.    "    (parameters\n"
  15524.    "      (declare (in) sampler3D sampler)\n"
  15525.    "      (declare (in) vec3 P)\n"
  15526.    "      (declare (in) float bias))\n"
  15527.    "    ())\n"
  15528.    "  (signature ivec4\n"
  15529.    "    (parameters\n"
  15530.    "      (declare (in) isampler3D sampler)\n"
  15531.    "      (declare (in) vec3 P)\n"
  15532.    "      (declare (in) float bias))\n"
  15533.    "    ())\n"
  15534.    "  (signature uvec4\n"
  15535.    "    (parameters\n"
  15536.    "      (declare (in) usampler3D sampler)\n"
  15537.    "      (declare (in) vec3 P)\n"
  15538.    "      (declare (in) float bias))\n"
  15539.    "    ())\n"
  15540.    "  (signature vec4\n"
  15541.    "    (parameters\n"
  15542.    "      (declare (in) samplerCube sampler)\n"
  15543.    "      (declare (in) vec3 P)\n"
  15544.    "      (declare (in) float bias))\n"
  15545.    "    ())\n"
  15546.    "  (signature ivec4\n"
  15547.    "    (parameters\n"
  15548.    "      (declare (in) isamplerCube sampler)\n"
  15549.    "      (declare (in) vec3 P)\n"
  15550.    "      (declare (in) float bias))\n"
  15551.    "    ())\n"
  15552.    "  (signature uvec4\n"
  15553.    "    (parameters\n"
  15554.    "      (declare (in) usamplerCube sampler)\n"
  15555.    "      (declare (in) vec3 P)\n"
  15556.    "      (declare (in) float bias))\n"
  15557.    "    ())\n"
  15558.    "  (signature float\n"
  15559.    "    (parameters\n"
  15560.    "      (declare (in) sampler2DShadow sampler)\n"
  15561.    "      (declare (in) vec3 P)\n"
  15562.    "      (declare (in) float bias))\n"
  15563.    "    ())\n"
  15564.    "  (signature float\n"
  15565.    "    (parameters\n"
  15566.    "      (declare (in) samplerCubeShadow sampler)\n"
  15567.    "      (declare (in) vec4 P)\n"
  15568.    "      (declare (in) float bias))\n"
  15569.    "    ())\n"
  15570.    "  (signature vec4\n"
  15571.    "    (parameters\n"
  15572.    "      (declare (in) sampler2DArray sampler)\n"
  15573.    "      (declare (in) vec3 P)\n"
  15574.    "      (declare (in) float bias))\n"
  15575.    "    ())\n"
  15576.    "  (signature ivec4\n"
  15577.    "    (parameters\n"
  15578.    "      (declare (in) isampler2DArray sampler)\n"
  15579.    "      (declare (in) vec3 P)\n"
  15580.    "      (declare (in) float bias))\n"
  15581.    "    ())\n"
  15582.    "  (signature uvec4\n"
  15583.    "    (parameters\n"
  15584.    "      (declare (in) usampler2DArray sampler)\n"
  15585.    "      (declare (in) vec3 P)\n"
  15586.    "      (declare (in) float bias))\n"
  15587.    "    ())\n"
  15588.    "  (signature float\n"
  15589.    "    (parameters\n"
  15590.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  15591.    "      (declare (in) vec4 P)\n"
  15592.    "      (declare (in) float bias))\n"
  15593.    "    ()))\n"
  15594.    "(function textureProj\n"
  15595.    "  (signature vec4\n"
  15596.    "    (parameters\n"
  15597.    "      (declare (in) sampler2D sampler)\n"
  15598.    "      (declare (in) vec3 P)\n"
  15599.    "      (declare (in) float bias))\n"
  15600.    "    ())\n"
  15601.    "  (signature ivec4\n"
  15602.    "    (parameters\n"
  15603.    "      (declare (in) isampler2D sampler)\n"
  15604.    "      (declare (in) vec3 P)\n"
  15605.    "      (declare (in) float bias))\n"
  15606.    "    ())\n"
  15607.    "  (signature uvec4\n"
  15608.    "    (parameters\n"
  15609.    "      (declare (in) usampler2D sampler)\n"
  15610.    "      (declare (in) vec3 P)\n"
  15611.    "      (declare (in) float bias))\n"
  15612.    "    ())\n"
  15613.    "  (signature vec4\n"
  15614.    "    (parameters\n"
  15615.    "      (declare (in) sampler2D sampler)\n"
  15616.    "      (declare (in) vec4 P)\n"
  15617.    "      (declare (in) float bias))\n"
  15618.    "    ())\n"
  15619.    "  (signature ivec4\n"
  15620.    "    (parameters\n"
  15621.    "      (declare (in) isampler2D sampler)\n"
  15622.    "      (declare (in) vec4 P)\n"
  15623.    "      (declare (in) float bias))\n"
  15624.    "    ())\n"
  15625.    "  (signature uvec4\n"
  15626.    "    (parameters\n"
  15627.    "      (declare (in) usampler2D sampler)\n"
  15628.    "      (declare (in) vec4 P)\n"
  15629.    "      (declare (in) float bias))\n"
  15630.    "    ())\n"
  15631.    "  (signature vec4\n"
  15632.    "    (parameters\n"
  15633.    "      (declare (in) sampler3D sampler)\n"
  15634.    "      (declare (in) vec4 P)\n"
  15635.    "      (declare (in) float bias))\n"
  15636.    "    ())\n"
  15637.    "  (signature ivec4\n"
  15638.    "    (parameters\n"
  15639.    "      (declare (in) isampler3D sampler)\n"
  15640.    "      (declare (in) vec4 P)\n"
  15641.    "      (declare (in) float bias))\n"
  15642.    "    ())\n"
  15643.    "  (signature uvec4\n"
  15644.    "    (parameters\n"
  15645.    "      (declare (in) usampler3D sampler)\n"
  15646.    "      (declare (in) vec4 P)\n"
  15647.    "      (declare (in) float bias))\n"
  15648.    "    ())\n"
  15649.    "  (signature float\n"
  15650.    "    (parameters\n"
  15651.    "      (declare (in) sampler2DShadow sampler)\n"
  15652.    "      (declare (in) vec4 P)\n"
  15653.    "      (declare (in) float bias))\n"
  15654.    "    ()))\n"
  15655.    "(function textureOffset\n"
  15656.    "  (signature vec4\n"
  15657.    "    (parameters\n"
  15658.    "      (declare (in) sampler2D sampler)\n"
  15659.    "      (declare (in) vec2 P)\n"
  15660.    "      (declare (in) ivec2 offset)\n"
  15661.    "      (declare (in) float bias))\n"
  15662.    "    ())\n"
  15663.    "  (signature ivec4\n"
  15664.    "    (parameters\n"
  15665.    "      (declare (in) isampler2D sampler)\n"
  15666.    "      (declare (in) vec2 P)\n"
  15667.    "      (declare (in) ivec2 offset)\n"
  15668.    "      (declare (in) float bias))\n"
  15669.    "    ())\n"
  15670.    "  (signature uvec4\n"
  15671.    "    (parameters\n"
  15672.    "      (declare (in) usampler2D sampler)\n"
  15673.    "      (declare (in) vec2 P)\n"
  15674.    "      (declare (in) ivec2 offset)\n"
  15675.    "      (declare (in) float bias))\n"
  15676.    "    ())\n"
  15677.    "  (signature vec4\n"
  15678.    "    (parameters\n"
  15679.    "      (declare (in) sampler3D sampler)\n"
  15680.    "      (declare (in) vec3 P)\n"
  15681.    "      (declare (in) ivec3 offset)\n"
  15682.    "      (declare (in) float bias))\n"
  15683.    "    ())\n"
  15684.    "  (signature ivec4\n"
  15685.    "    (parameters\n"
  15686.    "      (declare (in) isampler3D sampler)\n"
  15687.    "      (declare (in) vec3 P)\n"
  15688.    "      (declare (in) ivec3 offset)\n"
  15689.    "      (declare (in) float bias))\n"
  15690.    "    ())\n"
  15691.    "  (signature uvec4\n"
  15692.    "    (parameters\n"
  15693.    "      (declare (in) usampler3D sampler)\n"
  15694.    "      (declare (in) vec3 P)\n"
  15695.    "      (declare (in) ivec3 offset)\n"
  15696.    "      (declare (in) float bias))\n"
  15697.    "    ())\n"
  15698.    "  (signature float\n"
  15699.    "    (parameters\n"
  15700.    "      (declare (in) sampler2DShadow sampler)\n"
  15701.    "      (declare (in) vec3 P)\n"
  15702.    "      (declare (in) ivec2 offset)\n"
  15703.    "      (declare (in) float bias))\n"
  15704.    "    ())\n"
  15705.    "  (signature vec4\n"
  15706.    "    (parameters\n"
  15707.    "      (declare (in) sampler2DArray sampler)\n"
  15708.    "      (declare (in) vec3 P)\n"
  15709.    "      (declare (in) ivec2 offset)\n"
  15710.    "      (declare (in) float bias))\n"
  15711.    "    ())\n"
  15712.    "  (signature ivec4\n"
  15713.    "    (parameters\n"
  15714.    "      (declare (in) isampler2DArray sampler)\n"
  15715.    "      (declare (in) vec3 P)\n"
  15716.    "      (declare (in) ivec2 offset)\n"
  15717.    "      (declare (in) float bias))\n"
  15718.    "    ())\n"
  15719.    "  (signature uvec4\n"
  15720.    "    (parameters\n"
  15721.    "      (declare (in) usampler2DArray sampler)\n"
  15722.    "      (declare (in) vec3 P)\n"
  15723.    "      (declare (in) ivec2 offset)\n"
  15724.    "      (declare (in) float bias))\n"
  15725.    "    ()))\n"
  15726.    "(function textureProjOffset\n"
  15727.    "  (signature vec4\n"
  15728.    "    (parameters\n"
  15729.    "      (declare (in) sampler2D sampler)\n"
  15730.    "      (declare (in) vec3 P)\n"
  15731.    "      (declare (in) ivec2 offset)\n"
  15732.    "      (declare (in) float bias))\n"
  15733.    "    ())\n"
  15734.    "  (signature ivec4\n"
  15735.    "    (parameters\n"
  15736.    "      (declare (in) isampler2D sampler)\n"
  15737.    "      (declare (in) vec3 P)\n"
  15738.    "      (declare (in) ivec2 offset)\n"
  15739.    "      (declare (in) float bias))\n"
  15740.    "    ())\n"
  15741.    "  (signature uvec4\n"
  15742.    "    (parameters\n"
  15743.    "      (declare (in) usampler2D sampler)\n"
  15744.    "      (declare (in) vec3 P)\n"
  15745.    "      (declare (in) ivec2 offset)\n"
  15746.    "      (declare (in) float bias))\n"
  15747.    "    ())\n"
  15748.    "  (signature vec4\n"
  15749.    "    (parameters\n"
  15750.    "      (declare (in) sampler2D sampler)\n"
  15751.    "      (declare (in) vec4 P)\n"
  15752.    "      (declare (in) ivec2 offset)\n"
  15753.    "      (declare (in) float bias))\n"
  15754.    "    ())\n"
  15755.    "  (signature ivec4\n"
  15756.    "    (parameters\n"
  15757.    "      (declare (in) isampler2D sampler)\n"
  15758.    "      (declare (in) vec4 P)\n"
  15759.    "      (declare (in) ivec2 offset)\n"
  15760.    "      (declare (in) float bias))\n"
  15761.    "    ())\n"
  15762.    "  (signature uvec4\n"
  15763.    "    (parameters\n"
  15764.    "      (declare (in) usampler2D sampler)\n"
  15765.    "      (declare (in) vec4 P)\n"
  15766.    "      (declare (in) ivec2 offset)\n"
  15767.    "      (declare (in) float bias))\n"
  15768.    "    ())\n"
  15769.    "  (signature vec4\n"
  15770.    "    (parameters\n"
  15771.    "      (declare (in) sampler3D sampler)\n"
  15772.    "      (declare (in) vec4 P)\n"
  15773.    "      (declare (in) ivec3 offset)\n"
  15774.    "      (declare (in) float bias))\n"
  15775.    "    ())\n"
  15776.    "  (signature ivec4\n"
  15777.    "    (parameters\n"
  15778.    "      (declare (in) isampler3D sampler)\n"
  15779.    "      (declare (in) vec4 P)\n"
  15780.    "      (declare (in) ivec3 offset)\n"
  15781.    "      (declare (in) float bias))\n"
  15782.    "    ())\n"
  15783.    "  (signature uvec4\n"
  15784.    "    (parameters\n"
  15785.    "      (declare (in) usampler3D sampler)\n"
  15786.    "      (declare (in) vec4 P)\n"
  15787.    "      (declare (in) ivec3 offset)\n"
  15788.    "      (declare (in) float bias))\n"
  15789.    "    ())\n"
  15790.    "  (signature float\n"
  15791.    "    (parameters\n"
  15792.    "      (declare (in) sampler2DShadow s)\n"
  15793.    "      (declare (in) vec4 P)\n"
  15794.    "      (declare (in) ivec2 offset)\n"
  15795.    "      (declare (in) float bias))\n"
  15796.    "    ()))\n"
  15797.    "(function dFdx\n"
  15798.    "  (signature float\n"
  15799.    "    (parameters\n"
  15800.    "      (declare (in) float p))\n"
  15801.    "    ())\n"
  15802.    "  (signature vec2\n"
  15803.    "    (parameters\n"
  15804.    "      (declare (in) vec2 p))\n"
  15805.    "    ())\n"
  15806.    "  (signature vec3\n"
  15807.    "    (parameters\n"
  15808.    "      (declare (in) vec3 p))\n"
  15809.    "    ())\n"
  15810.    "  (signature vec4\n"
  15811.    "    (parameters\n"
  15812.    "      (declare (in) vec4 p))\n"
  15813.    "    ()))\n"
  15814.    "(function dFdy\n"
  15815.    "  (signature float\n"
  15816.    "    (parameters\n"
  15817.    "      (declare (in) float p))\n"
  15818.    "    ())\n"
  15819.    "  (signature vec2\n"
  15820.    "    (parameters\n"
  15821.    "      (declare (in) vec2 p))\n"
  15822.    "    ())\n"
  15823.    "  (signature vec3\n"
  15824.    "    (parameters\n"
  15825.    "      (declare (in) vec3 p))\n"
  15826.    "    ())\n"
  15827.    "  (signature vec4\n"
  15828.    "    (parameters\n"
  15829.    "      (declare (in) vec4 p))\n"
  15830.    "    ()))\n"
  15831.    "(function fwidth\n"
  15832.    "  (signature float\n"
  15833.    "    (parameters\n"
  15834.    "      (declare (in) float p))\n"
  15835.    "    ())\n"
  15836.    "  (signature vec2\n"
  15837.    "    (parameters\n"
  15838.    "      (declare (in) vec2 p))\n"
  15839.    "    ())\n"
  15840.    "  (signature vec3\n"
  15841.    "    (parameters\n"
  15842.    "      (declare (in) vec3 p))\n"
  15843.    "    ())\n"
  15844.    "  (signature vec4\n"
  15845.    "    (parameters\n"
  15846.    "      (declare (in) vec4 p))\n"
  15847.    "    ())))"
  15848. ;
  15849. static const char *functions_for_300es_frag [] = {
  15850.    builtin_dFdx,
  15851.    builtin_dFdy,
  15852.    builtin_fwidth,
  15853.    builtin_texture,
  15854.    builtin_textureOffset,
  15855.    builtin_textureProj,
  15856.    builtin_textureProjOffset,
  15857. };
  15858. static const char prototypes_for_300es_glsl[] =
  15859.    "(\n"
  15860.    "(function radians\n"
  15861.    "  (signature float\n"
  15862.    "    (parameters\n"
  15863.    "      (declare (in) float degrees))\n"
  15864.    "    ())\n"
  15865.    "  (signature vec2\n"
  15866.    "    (parameters\n"
  15867.    "      (declare (in) vec2 degrees))\n"
  15868.    "    ())\n"
  15869.    "  (signature vec3\n"
  15870.    "    (parameters\n"
  15871.    "      (declare (in) vec3 degrees))\n"
  15872.    "    ())\n"
  15873.    "  (signature vec4\n"
  15874.    "    (parameters\n"
  15875.    "      (declare (in) vec4 degrees))\n"
  15876.    "    ()))\n"
  15877.    "(function degrees\n"
  15878.    "  (signature float\n"
  15879.    "    (parameters\n"
  15880.    "      (declare (in) float radians))\n"
  15881.    "    ())\n"
  15882.    "  (signature vec2\n"
  15883.    "    (parameters\n"
  15884.    "      (declare (in) vec2 radians))\n"
  15885.    "    ())\n"
  15886.    "  (signature vec3\n"
  15887.    "    (parameters\n"
  15888.    "      (declare (in) vec3 radians))\n"
  15889.    "    ())\n"
  15890.    "  (signature vec4\n"
  15891.    "    (parameters\n"
  15892.    "      (declare (in) vec4 radians))\n"
  15893.    "    ()))\n"
  15894.    "(function sin\n"
  15895.    "  (signature float\n"
  15896.    "    (parameters\n"
  15897.    "      (declare (in) float angle))\n"
  15898.    "    ())\n"
  15899.    "  (signature vec2\n"
  15900.    "    (parameters\n"
  15901.    "      (declare (in) vec2 angle))\n"
  15902.    "    ())\n"
  15903.    "  (signature vec3\n"
  15904.    "    (parameters\n"
  15905.    "      (declare (in) vec3 angle))\n"
  15906.    "    ())\n"
  15907.    "  (signature vec4\n"
  15908.    "    (parameters\n"
  15909.    "      (declare (in) vec4 angle))\n"
  15910.    "    ()))\n"
  15911.    "(function cos\n"
  15912.    "  (signature float\n"
  15913.    "    (parameters\n"
  15914.    "      (declare (in) float angle))\n"
  15915.    "    ())\n"
  15916.    "  (signature vec2\n"
  15917.    "    (parameters\n"
  15918.    "      (declare (in) vec2 angle))\n"
  15919.    "    ())\n"
  15920.    "  (signature vec3\n"
  15921.    "    (parameters\n"
  15922.    "      (declare (in) vec3 angle))\n"
  15923.    "    ())\n"
  15924.    "  (signature vec4\n"
  15925.    "    (parameters\n"
  15926.    "      (declare (in) vec4 angle))\n"
  15927.    "    ()))\n"
  15928.    "(function tan\n"
  15929.    "  (signature float\n"
  15930.    "    (parameters\n"
  15931.    "      (declare (in) float angle))\n"
  15932.    "    ())\n"
  15933.    "  (signature vec2\n"
  15934.    "    (parameters\n"
  15935.    "      (declare (in) vec2 angle))\n"
  15936.    "    ())\n"
  15937.    "  (signature vec3\n"
  15938.    "    (parameters\n"
  15939.    "      (declare (in) vec3 angle))\n"
  15940.    "    ())\n"
  15941.    "  (signature vec4\n"
  15942.    "    (parameters\n"
  15943.    "      (declare (in) vec4 angle))\n"
  15944.    "    ()))\n"
  15945.    "(function asin\n"
  15946.    "  (signature float\n"
  15947.    "    (parameters\n"
  15948.    "      (declare (in) float angle))\n"
  15949.    "    ())\n"
  15950.    "  (signature vec2\n"
  15951.    "    (parameters\n"
  15952.    "      (declare (in) vec2 angle))\n"
  15953.    "    ())\n"
  15954.    "  (signature vec3\n"
  15955.    "    (parameters\n"
  15956.    "      (declare (in) vec3 angle))\n"
  15957.    "    ())\n"
  15958.    "  (signature vec4\n"
  15959.    "    (parameters\n"
  15960.    "      (declare (in) vec4 angle))\n"
  15961.    "    ()))\n"
  15962.    "(function acos\n"
  15963.    "  (signature float\n"
  15964.    "    (parameters\n"
  15965.    "      (declare (in) float angle))\n"
  15966.    "    ())\n"
  15967.    "  (signature vec2\n"
  15968.    "    (parameters\n"
  15969.    "      (declare (in) vec2 angle))\n"
  15970.    "    ())\n"
  15971.    "  (signature vec3\n"
  15972.    "    (parameters\n"
  15973.    "      (declare (in) vec3 angle))\n"
  15974.    "    ())\n"
  15975.    "  (signature vec4\n"
  15976.    "    (parameters\n"
  15977.    "      (declare (in) vec4 angle))\n"
  15978.    "    ()))\n"
  15979.    "(function atan\n"
  15980.    "  (signature float\n"
  15981.    "    (parameters\n"
  15982.    "      (declare (in) float y)\n"
  15983.    "      (declare (in) float x))\n"
  15984.    "    ())\n"
  15985.    "  (signature vec2\n"
  15986.    "    (parameters\n"
  15987.    "      (declare (in) vec2 y)\n"
  15988.    "      (declare (in) vec2 x))\n"
  15989.    "    ())\n"
  15990.    "  (signature vec3\n"
  15991.    "    (parameters\n"
  15992.    "      (declare (in) vec3 y)\n"
  15993.    "      (declare (in) vec3 x))\n"
  15994.    "    ())\n"
  15995.    "  (signature vec4\n"
  15996.    "    (parameters\n"
  15997.    "      (declare (in) vec4 y)\n"
  15998.    "      (declare (in) vec4 x))\n"
  15999.    "    ())\n"
  16000.    "  (signature float\n"
  16001.    "    (parameters\n"
  16002.    "      (declare (in) float y_over_x))\n"
  16003.    "    ())\n"
  16004.    "  (signature vec2\n"
  16005.    "    (parameters\n"
  16006.    "      (declare (in) vec2 y_over_x))\n"
  16007.    "    ())\n"
  16008.    "  (signature vec3\n"
  16009.    "    (parameters\n"
  16010.    "      (declare (in) vec3 y_over_x))\n"
  16011.    "    ())\n"
  16012.    "  (signature vec4\n"
  16013.    "    (parameters\n"
  16014.    "      (declare (in) vec4 y_over_x))\n"
  16015.    "    ()))\n"
  16016.    "(function sinh\n"
  16017.    "  (signature float\n"
  16018.    "    (parameters\n"
  16019.    "      (declare (in) float x))\n"
  16020.    "    ())\n"
  16021.    "  (signature vec2\n"
  16022.    "    (parameters\n"
  16023.    "      (declare (in) vec2 x))\n"
  16024.    "    ())\n"
  16025.    "  (signature vec3\n"
  16026.    "    (parameters\n"
  16027.    "      (declare (in) vec3 x))\n"
  16028.    "    ())\n"
  16029.    "  (signature vec4\n"
  16030.    "    (parameters\n"
  16031.    "      (declare (in) vec4 x))\n"
  16032.    "    ()))\n"
  16033.    "(function cosh\n"
  16034.    "  (signature float\n"
  16035.    "    (parameters\n"
  16036.    "      (declare (in) float x))\n"
  16037.    "    ())\n"
  16038.    "  (signature vec2\n"
  16039.    "    (parameters\n"
  16040.    "      (declare (in) vec2 x))\n"
  16041.    "    ())\n"
  16042.    "  (signature vec3\n"
  16043.    "    (parameters\n"
  16044.    "      (declare (in) vec3 x))\n"
  16045.    "    ())\n"
  16046.    "  (signature vec4\n"
  16047.    "    (parameters\n"
  16048.    "      (declare (in) vec4 x))\n"
  16049.    "    ()))\n"
  16050.    "(function tanh\n"
  16051.    "  (signature float\n"
  16052.    "    (parameters\n"
  16053.    "      (declare (in) float x))\n"
  16054.    "    ())\n"
  16055.    "  (signature vec2\n"
  16056.    "    (parameters\n"
  16057.    "      (declare (in) vec2 x))\n"
  16058.    "    ())\n"
  16059.    "  (signature vec3\n"
  16060.    "    (parameters\n"
  16061.    "      (declare (in) vec3 x))\n"
  16062.    "    ())\n"
  16063.    "  (signature vec4\n"
  16064.    "    (parameters\n"
  16065.    "      (declare (in) vec4 x))\n"
  16066.    "    ()))\n"
  16067.    "(function asinh\n"
  16068.    "  (signature float\n"
  16069.    "    (parameters\n"
  16070.    "      (declare (in) float x))\n"
  16071.    "    ())\n"
  16072.    "  (signature vec2\n"
  16073.    "    (parameters\n"
  16074.    "      (declare (in) vec2 x))\n"
  16075.    "    ())\n"
  16076.    "  (signature vec3\n"
  16077.    "    (parameters\n"
  16078.    "      (declare (in) vec3 x))\n"
  16079.    "    ())\n"
  16080.    "  (signature vec4\n"
  16081.    "    (parameters\n"
  16082.    "      (declare (in) vec4 x))\n"
  16083.    "    ()))\n"
  16084.    "(function acosh\n"
  16085.    "  (signature float\n"
  16086.    "    (parameters\n"
  16087.    "      (declare (in) float x))\n"
  16088.    "    ())\n"
  16089.    "  (signature vec2\n"
  16090.    "    (parameters\n"
  16091.    "      (declare (in) vec2 x))\n"
  16092.    "    ())\n"
  16093.    "  (signature vec3\n"
  16094.    "    (parameters\n"
  16095.    "      (declare (in) vec3 x))\n"
  16096.    "    ())\n"
  16097.    "  (signature vec4\n"
  16098.    "    (parameters\n"
  16099.    "      (declare (in) vec4 x))\n"
  16100.    "    ()))\n"
  16101.    "(function atanh\n"
  16102.    "  (signature float\n"
  16103.    "    (parameters\n"
  16104.    "      (declare (in) float x))\n"
  16105.    "    ())\n"
  16106.    "  (signature vec2\n"
  16107.    "    (parameters\n"
  16108.    "      (declare (in) vec2 x))\n"
  16109.    "    ())\n"
  16110.    "  (signature vec3\n"
  16111.    "    (parameters\n"
  16112.    "      (declare (in) vec3 x))\n"
  16113.    "    ())\n"
  16114.    "  (signature vec4\n"
  16115.    "    (parameters\n"
  16116.    "      (declare (in) vec4 x))\n"
  16117.    "    ()))\n"
  16118.    "(function pow\n"
  16119.    "  (signature float\n"
  16120.    "    (parameters\n"
  16121.    "      (declare (in) float x)\n"
  16122.    "      (declare (in) float y))\n"
  16123.    "    ())\n"
  16124.    "  (signature vec2\n"
  16125.    "    (parameters\n"
  16126.    "      (declare (in) vec2 x)\n"
  16127.    "      (declare (in) vec2 y))\n"
  16128.    "    ())\n"
  16129.    "  (signature vec3\n"
  16130.    "    (parameters\n"
  16131.    "      (declare (in) vec3 x)\n"
  16132.    "      (declare (in) vec3 y))\n"
  16133.    "    ())\n"
  16134.    "  (signature vec4\n"
  16135.    "    (parameters\n"
  16136.    "      (declare (in) vec4 x)\n"
  16137.    "      (declare (in) vec4 y))\n"
  16138.    "    ()))\n"
  16139.    "(function exp\n"
  16140.    "  (signature float\n"
  16141.    "    (parameters\n"
  16142.    "      (declare (in) float x))\n"
  16143.    "    ())\n"
  16144.    "  (signature vec2\n"
  16145.    "    (parameters\n"
  16146.    "      (declare (in) vec2 x))\n"
  16147.    "    ())\n"
  16148.    "  (signature vec3\n"
  16149.    "    (parameters\n"
  16150.    "      (declare (in) vec3 x))\n"
  16151.    "    ())\n"
  16152.    "  (signature vec4\n"
  16153.    "    (parameters\n"
  16154.    "      (declare (in) vec4 x))\n"
  16155.    "    ()))\n"
  16156.    "(function log\n"
  16157.    "  (signature float\n"
  16158.    "    (parameters\n"
  16159.    "      (declare (in) float x))\n"
  16160.    "    ())\n"
  16161.    "  (signature vec2\n"
  16162.    "    (parameters\n"
  16163.    "      (declare (in) vec2 x))\n"
  16164.    "    ())\n"
  16165.    "  (signature vec3\n"
  16166.    "    (parameters\n"
  16167.    "      (declare (in) vec3 x))\n"
  16168.    "    ())\n"
  16169.    "  (signature vec4\n"
  16170.    "    (parameters\n"
  16171.    "      (declare (in) vec4 x))\n"
  16172.    "    ()))\n"
  16173.    "(function exp2\n"
  16174.    "  (signature float\n"
  16175.    "    (parameters\n"
  16176.    "      (declare (in) float x))\n"
  16177.    "    ())\n"
  16178.    "  (signature vec2\n"
  16179.    "    (parameters\n"
  16180.    "      (declare (in) vec2 x))\n"
  16181.    "    ())\n"
  16182.    "  (signature vec3\n"
  16183.    "    (parameters\n"
  16184.    "      (declare (in) vec3 x))\n"
  16185.    "    ())\n"
  16186.    "  (signature vec4\n"
  16187.    "    (parameters\n"
  16188.    "      (declare (in) vec4 x))\n"
  16189.    "    ()))\n"
  16190.    "(function log2\n"
  16191.    "  (signature float\n"
  16192.    "    (parameters\n"
  16193.    "      (declare (in) float x))\n"
  16194.    "    ())\n"
  16195.    "  (signature vec2\n"
  16196.    "    (parameters\n"
  16197.    "      (declare (in) vec2 x))\n"
  16198.    "    ())\n"
  16199.    "  (signature vec3\n"
  16200.    "    (parameters\n"
  16201.    "      (declare (in) vec3 x))\n"
  16202.    "    ())\n"
  16203.    "  (signature vec4\n"
  16204.    "    (parameters\n"
  16205.    "      (declare (in) vec4 x))\n"
  16206.    "    ()))\n"
  16207.    "(function sqrt\n"
  16208.    "  (signature float\n"
  16209.    "    (parameters\n"
  16210.    "      (declare (in) float x))\n"
  16211.    "    ())\n"
  16212.    "  (signature vec2\n"
  16213.    "    (parameters\n"
  16214.    "      (declare (in) vec2 x))\n"
  16215.    "    ())\n"
  16216.    "  (signature vec3\n"
  16217.    "    (parameters\n"
  16218.    "      (declare (in) vec3 x))\n"
  16219.    "    ())\n"
  16220.    "  (signature vec4\n"
  16221.    "    (parameters\n"
  16222.    "      (declare (in) vec4 x))\n"
  16223.    "    ()))\n"
  16224.    "(function inversesqrt\n"
  16225.    "  (signature float\n"
  16226.    "    (parameters\n"
  16227.    "      (declare (in) float x))\n"
  16228.    "    ())\n"
  16229.    "  (signature vec2\n"
  16230.    "    (parameters\n"
  16231.    "      (declare (in) vec2 x))\n"
  16232.    "    ())\n"
  16233.    "  (signature vec3\n"
  16234.    "    (parameters\n"
  16235.    "      (declare (in) vec3 x))\n"
  16236.    "    ())\n"
  16237.    "  (signature vec4\n"
  16238.    "    (parameters\n"
  16239.    "      (declare (in) vec4 x))\n"
  16240.    "    ()))\n"
  16241.    "(function abs\n"
  16242.    "  (signature float\n"
  16243.    "    (parameters\n"
  16244.    "      (declare (in) float x))\n"
  16245.    "    ())\n"
  16246.    "  (signature vec2\n"
  16247.    "    (parameters\n"
  16248.    "      (declare (in) vec2 x))\n"
  16249.    "    ())\n"
  16250.    "  (signature vec3\n"
  16251.    "    (parameters\n"
  16252.    "      (declare (in) vec3 x))\n"
  16253.    "    ())\n"
  16254.    "  (signature vec4\n"
  16255.    "    (parameters\n"
  16256.    "      (declare (in) vec4 x))\n"
  16257.    "    ())\n"
  16258.    "  (signature int\n"
  16259.    "    (parameters\n"
  16260.    "      (declare (in) int x))\n"
  16261.    "    ())\n"
  16262.    "  (signature ivec2\n"
  16263.    "    (parameters\n"
  16264.    "      (declare (in) ivec2 x))\n"
  16265.    "    ())\n"
  16266.    "  (signature ivec3\n"
  16267.    "    (parameters\n"
  16268.    "      (declare (in) ivec3 x))\n"
  16269.    "    ())\n"
  16270.    "  (signature ivec4\n"
  16271.    "    (parameters\n"
  16272.    "      (declare (in) ivec4 x))\n"
  16273.    "    ()))\n"
  16274.    "(function sign\n"
  16275.    "  (signature float\n"
  16276.    "    (parameters\n"
  16277.    "      (declare (in) float x))\n"
  16278.    "    ())\n"
  16279.    "  (signature vec2\n"
  16280.    "    (parameters\n"
  16281.    "      (declare (in) vec2 x))\n"
  16282.    "    ())\n"
  16283.    "  (signature vec3\n"
  16284.    "    (parameters\n"
  16285.    "      (declare (in) vec3 x))\n"
  16286.    "    ())\n"
  16287.    "  (signature vec4\n"
  16288.    "    (parameters\n"
  16289.    "      (declare (in) vec4 x))\n"
  16290.    "    ())\n"
  16291.    "  (signature int\n"
  16292.    "    (parameters\n"
  16293.    "      (declare (in) int x))\n"
  16294.    "    ())\n"
  16295.    "  (signature ivec2\n"
  16296.    "    (parameters\n"
  16297.    "      (declare (in) ivec2 x))\n"
  16298.    "    ())\n"
  16299.    "  (signature ivec3\n"
  16300.    "    (parameters\n"
  16301.    "      (declare (in) ivec3 x))\n"
  16302.    "    ())\n"
  16303.    "  (signature ivec4\n"
  16304.    "    (parameters\n"
  16305.    "      (declare (in) ivec4 x))\n"
  16306.    "    ()))\n"
  16307.    "(function floor\n"
  16308.    "  (signature float\n"
  16309.    "    (parameters\n"
  16310.    "      (declare (in) float x))\n"
  16311.    "    ())\n"
  16312.    "  (signature vec2\n"
  16313.    "    (parameters\n"
  16314.    "      (declare (in) vec2 x))\n"
  16315.    "    ())\n"
  16316.    "  (signature vec3\n"
  16317.    "    (parameters\n"
  16318.    "      (declare (in) vec3 x))\n"
  16319.    "    ())\n"
  16320.    "  (signature vec4\n"
  16321.    "    (parameters\n"
  16322.    "      (declare (in) vec4 x))\n"
  16323.    "    ()))\n"
  16324.    "(function trunc\n"
  16325.    "  (signature float\n"
  16326.    "    (parameters\n"
  16327.    "      (declare (in) float x))\n"
  16328.    "    ())\n"
  16329.    "  (signature vec2\n"
  16330.    "    (parameters\n"
  16331.    "      (declare (in) vec2 x))\n"
  16332.    "    ())\n"
  16333.    "  (signature vec3\n"
  16334.    "    (parameters\n"
  16335.    "      (declare (in) vec3 x))\n"
  16336.    "    ())\n"
  16337.    "  (signature vec4\n"
  16338.    "    (parameters\n"
  16339.    "      (declare (in) vec4 x))\n"
  16340.    "    ()))\n"
  16341.    "(function round\n"
  16342.    "  (signature float\n"
  16343.    "    (parameters\n"
  16344.    "      (declare (in) float x))\n"
  16345.    "    ())\n"
  16346.    "  (signature vec2\n"
  16347.    "    (parameters\n"
  16348.    "      (declare (in) vec2 x))\n"
  16349.    "    ())\n"
  16350.    "  (signature vec3\n"
  16351.    "    (parameters\n"
  16352.    "      (declare (in) vec3 x))\n"
  16353.    "    ())\n"
  16354.    "  (signature vec4\n"
  16355.    "    (parameters\n"
  16356.    "      (declare (in) vec4 x))\n"
  16357.    "    ()))\n"
  16358.    "(function roundEven\n"
  16359.    "  (signature float\n"
  16360.    "    (parameters\n"
  16361.    "      (declare (in) float x))\n"
  16362.    "    ())\n"
  16363.    "  (signature vec2\n"
  16364.    "    (parameters\n"
  16365.    "      (declare (in) vec2 x))\n"
  16366.    "    ())\n"
  16367.    "  (signature vec3\n"
  16368.    "    (parameters\n"
  16369.    "      (declare (in) vec3 x))\n"
  16370.    "    ())\n"
  16371.    "  (signature vec4\n"
  16372.    "    (parameters\n"
  16373.    "      (declare (in) vec4 x))\n"
  16374.    "    ()))\n"
  16375.    "(function ceil\n"
  16376.    "  (signature float\n"
  16377.    "    (parameters\n"
  16378.    "      (declare (in) float x))\n"
  16379.    "    ())\n"
  16380.    "  (signature vec2\n"
  16381.    "    (parameters\n"
  16382.    "      (declare (in) vec2 x))\n"
  16383.    "    ())\n"
  16384.    "  (signature vec3\n"
  16385.    "    (parameters\n"
  16386.    "      (declare (in) vec3 x))\n"
  16387.    "    ())\n"
  16388.    "  (signature vec4\n"
  16389.    "    (parameters\n"
  16390.    "      (declare (in) vec4 x))\n"
  16391.    "    ()))\n"
  16392.    "(function fract\n"
  16393.    "  (signature float\n"
  16394.    "    (parameters\n"
  16395.    "      (declare (in) float x))\n"
  16396.    "    ())\n"
  16397.    "  (signature vec2\n"
  16398.    "    (parameters\n"
  16399.    "      (declare (in) vec2 x))\n"
  16400.    "    ())\n"
  16401.    "  (signature vec3\n"
  16402.    "    (parameters\n"
  16403.    "      (declare (in) vec3 x))\n"
  16404.    "    ())\n"
  16405.    "  (signature vec4\n"
  16406.    "    (parameters\n"
  16407.    "      (declare (in) vec4 x))\n"
  16408.    "    ()))\n"
  16409.    "(function mod\n"
  16410.    "  (signature float\n"
  16411.    "    (parameters\n"
  16412.    "      (declare (in) float x)\n"
  16413.    "      (declare (in) float y))\n"
  16414.    "    ())\n"
  16415.    "  (signature vec2\n"
  16416.    "    (parameters\n"
  16417.    "      (declare (in) vec2 x)\n"
  16418.    "      (declare (in) float y))\n"
  16419.    "    ())\n"
  16420.    "  (signature vec3\n"
  16421.    "    (parameters\n"
  16422.    "      (declare (in) vec3 x)\n"
  16423.    "      (declare (in) float y))\n"
  16424.    "    ())\n"
  16425.    "  (signature vec4\n"
  16426.    "    (parameters\n"
  16427.    "      (declare (in) vec4 x)\n"
  16428.    "      (declare (in) float y))\n"
  16429.    "    ())\n"
  16430.    "  (signature vec2\n"
  16431.    "    (parameters\n"
  16432.    "      (declare (in) vec2 x)\n"
  16433.    "      (declare (in) vec2 y))\n"
  16434.    "    ())\n"
  16435.    "  (signature vec3\n"
  16436.    "    (parameters\n"
  16437.    "      (declare (in) vec3 x)\n"
  16438.    "      (declare (in) vec3 y))\n"
  16439.    "    ())\n"
  16440.    "  (signature vec4\n"
  16441.    "    (parameters\n"
  16442.    "      (declare (in) vec4 x)\n"
  16443.    "      (declare (in) vec4 y))\n"
  16444.    "    ()))\n"
  16445.    "(function modf\n"
  16446.    "  (signature float\n"
  16447.    "    (parameters\n"
  16448.    "      (declare (in) float x)\n"
  16449.    "      (declare (out) float i))\n"
  16450.    "    ())\n"
  16451.    "  (signature vec2\n"
  16452.    "    (parameters\n"
  16453.    "      (declare (in) vec2 x)\n"
  16454.    "      (declare (out) vec2 i))\n"
  16455.    "    ())\n"
  16456.    "  (signature vec3\n"
  16457.    "    (parameters\n"
  16458.    "      (declare (in) vec3 x)\n"
  16459.    "      (declare (out) vec3 i))\n"
  16460.    "    ())\n"
  16461.    "  (signature vec4\n"
  16462.    "    (parameters\n"
  16463.    "      (declare (in) vec4 x)\n"
  16464.    "      (declare (out) vec4 i))\n"
  16465.    "    ()))\n"
  16466.    "(function min\n"
  16467.    "  (signature float\n"
  16468.    "    (parameters\n"
  16469.    "      (declare (in) float x)\n"
  16470.    "      (declare (in) float y))\n"
  16471.    "    ())\n"
  16472.    "  (signature vec2\n"
  16473.    "    (parameters\n"
  16474.    "      (declare (in) vec2 x)\n"
  16475.    "      (declare (in) vec2 y))\n"
  16476.    "    ())\n"
  16477.    "  (signature vec3\n"
  16478.    "    (parameters\n"
  16479.    "      (declare (in) vec3 x)\n"
  16480.    "      (declare (in) vec3 y))\n"
  16481.    "    ())\n"
  16482.    "  (signature vec4\n"
  16483.    "    (parameters\n"
  16484.    "      (declare (in) vec4 x)\n"
  16485.    "      (declare (in) vec4 y))\n"
  16486.    "    ())\n"
  16487.    "  (signature vec2\n"
  16488.    "    (parameters\n"
  16489.    "      (declare (in) vec2 x)\n"
  16490.    "      (declare (in) float y))\n"
  16491.    "    ())\n"
  16492.    "  (signature vec3\n"
  16493.    "    (parameters\n"
  16494.    "      (declare (in) vec3 x)\n"
  16495.    "      (declare (in) float y))\n"
  16496.    "    ())\n"
  16497.    "  (signature vec4\n"
  16498.    "    (parameters\n"
  16499.    "      (declare (in) vec4 x)\n"
  16500.    "      (declare (in) float y))\n"
  16501.    "    ())\n"
  16502.    "  (signature int\n"
  16503.    "    (parameters\n"
  16504.    "      (declare (in) int x)\n"
  16505.    "      (declare (in) int y))\n"
  16506.    "    ())\n"
  16507.    "  (signature ivec2\n"
  16508.    "    (parameters\n"
  16509.    "      (declare (in) ivec2 x)\n"
  16510.    "      (declare (in) ivec2 y))\n"
  16511.    "    ())\n"
  16512.    "  (signature ivec3\n"
  16513.    "    (parameters\n"
  16514.    "      (declare (in) ivec3 x)\n"
  16515.    "      (declare (in) ivec3 y))\n"
  16516.    "    ())\n"
  16517.    "  (signature ivec4\n"
  16518.    "    (parameters\n"
  16519.    "      (declare (in) ivec4 x)\n"
  16520.    "      (declare (in) ivec4 y))\n"
  16521.    "    ())\n"
  16522.    "  (signature ivec2\n"
  16523.    "    (parameters\n"
  16524.    "      (declare (in) ivec2 x)\n"
  16525.    "      (declare (in) int y))\n"
  16526.    "    ())\n"
  16527.    "  (signature ivec3\n"
  16528.    "    (parameters\n"
  16529.    "      (declare (in) ivec3 x)\n"
  16530.    "      (declare (in) int y))\n"
  16531.    "    ())\n"
  16532.    "  (signature ivec4\n"
  16533.    "    (parameters\n"
  16534.    "      (declare (in) ivec4 x)\n"
  16535.    "      (declare (in) int y))\n"
  16536.    "    ())\n"
  16537.    "  (signature uint\n"
  16538.    "    (parameters\n"
  16539.    "      (declare (in) uint x)\n"
  16540.    "      (declare (in) uint y))\n"
  16541.    "    ())\n"
  16542.    "  (signature uvec2\n"
  16543.    "    (parameters\n"
  16544.    "      (declare (in) uvec2 x)\n"
  16545.    "      (declare (in) uvec2 y))\n"
  16546.    "    ())\n"
  16547.    "  (signature uvec3\n"
  16548.    "    (parameters\n"
  16549.    "      (declare (in) uvec3 x)\n"
  16550.    "      (declare (in) uvec3 y))\n"
  16551.    "    ())\n"
  16552.    "  (signature uvec4\n"
  16553.    "    (parameters\n"
  16554.    "      (declare (in) uvec4 x)\n"
  16555.    "      (declare (in) uvec4 y))\n"
  16556.    "    ())\n"
  16557.    "  (signature uvec2\n"
  16558.    "    (parameters\n"
  16559.    "      (declare (in) uvec2 x)\n"
  16560.    "      (declare (in) uint y))\n"
  16561.    "    ())\n"
  16562.    "  (signature uvec3\n"
  16563.    "    (parameters\n"
  16564.    "      (declare (in) uvec3 x)\n"
  16565.    "      (declare (in) uint y))\n"
  16566.    "    ())\n"
  16567.    "  (signature uvec4\n"
  16568.    "    (parameters\n"
  16569.    "      (declare (in) uvec4 x)\n"
  16570.    "      (declare (in) uint y))\n"
  16571.    "    ()))\n"
  16572.    "(function max\n"
  16573.    "  (signature float\n"
  16574.    "    (parameters\n"
  16575.    "      (declare (in) float x)\n"
  16576.    "      (declare (in) float y))\n"
  16577.    "    ())\n"
  16578.    "  (signature vec2\n"
  16579.    "    (parameters\n"
  16580.    "      (declare (in) vec2 x)\n"
  16581.    "      (declare (in) vec2 y))\n"
  16582.    "    ())\n"
  16583.    "  (signature vec3\n"
  16584.    "    (parameters\n"
  16585.    "      (declare (in) vec3 x)\n"
  16586.    "      (declare (in) vec3 y))\n"
  16587.    "    ())\n"
  16588.    "  (signature vec4\n"
  16589.    "    (parameters\n"
  16590.    "      (declare (in) vec4 x)\n"
  16591.    "      (declare (in) vec4 y))\n"
  16592.    "    ())\n"
  16593.    "  (signature vec2\n"
  16594.    "    (parameters\n"
  16595.    "      (declare (in) vec2 x)\n"
  16596.    "      (declare (in) float y))\n"
  16597.    "    ())\n"
  16598.    "  (signature vec3\n"
  16599.    "    (parameters\n"
  16600.    "      (declare (in) vec3 x)\n"
  16601.    "      (declare (in) float y))\n"
  16602.    "    ())\n"
  16603.    "  (signature vec4\n"
  16604.    "    (parameters\n"
  16605.    "      (declare (in) vec4 x)\n"
  16606.    "      (declare (in) float y))\n"
  16607.    "    ())\n"
  16608.    "  (signature int\n"
  16609.    "    (parameters\n"
  16610.    "      (declare (in) int x)\n"
  16611.    "      (declare (in) int y))\n"
  16612.    "    ())\n"
  16613.    "  (signature ivec2\n"
  16614.    "    (parameters\n"
  16615.    "      (declare (in) ivec2 x)\n"
  16616.    "      (declare (in) ivec2 y))\n"
  16617.    "    ())\n"
  16618.    "  (signature ivec3\n"
  16619.    "    (parameters\n"
  16620.    "      (declare (in) ivec3 x)\n"
  16621.    "      (declare (in) ivec3 y))\n"
  16622.    "    ())\n"
  16623.    "  (signature ivec4\n"
  16624.    "    (parameters\n"
  16625.    "      (declare (in) ivec4 x)\n"
  16626.    "      (declare (in) ivec4 y))\n"
  16627.    "    ())\n"
  16628.    "  (signature ivec2\n"
  16629.    "    (parameters\n"
  16630.    "      (declare (in) ivec2 x)\n"
  16631.    "      (declare (in) int y))\n"
  16632.    "    ())\n"
  16633.    "  (signature ivec3\n"
  16634.    "    (parameters\n"
  16635.    "      (declare (in) ivec3 x)\n"
  16636.    "      (declare (in) int y))\n"
  16637.    "    ())\n"
  16638.    "  (signature ivec4\n"
  16639.    "    (parameters\n"
  16640.    "      (declare (in) ivec4 x)\n"
  16641.    "      (declare (in) int y))\n"
  16642.    "    ())\n"
  16643.    "  (signature uint\n"
  16644.    "    (parameters\n"
  16645.    "      (declare (in) uint x)\n"
  16646.    "      (declare (in) uint y))\n"
  16647.    "    ())\n"
  16648.    "  (signature uvec2\n"
  16649.    "    (parameters\n"
  16650.    "      (declare (in) uvec2 x)\n"
  16651.    "      (declare (in) uvec2 y))\n"
  16652.    "    ())\n"
  16653.    "  (signature uvec3\n"
  16654.    "    (parameters\n"
  16655.    "      (declare (in) uvec3 x)\n"
  16656.    "      (declare (in) uvec3 y))\n"
  16657.    "    ())\n"
  16658.    "  (signature uvec4\n"
  16659.    "    (parameters\n"
  16660.    "      (declare (in) uvec4 x)\n"
  16661.    "      (declare (in) uvec4 y))\n"
  16662.    "    ())\n"
  16663.    "  (signature uvec2\n"
  16664.    "    (parameters\n"
  16665.    "      (declare (in) uvec2 x)\n"
  16666.    "      (declare (in) uint y))\n"
  16667.    "    ())\n"
  16668.    "  (signature uvec3\n"
  16669.    "    (parameters\n"
  16670.    "      (declare (in) uvec3 x)\n"
  16671.    "      (declare (in) uint y))\n"
  16672.    "    ())\n"
  16673.    "  (signature uvec4\n"
  16674.    "    (parameters\n"
  16675.    "      (declare (in) uvec4 x)\n"
  16676.    "      (declare (in) uint y))\n"
  16677.    "    ()))\n"
  16678.    "(function clamp\n"
  16679.    "  (signature float\n"
  16680.    "    (parameters\n"
  16681.    "      (declare (in) float x)\n"
  16682.    "      (declare (in) float minVal)\n"
  16683.    "      (declare (in) float maxVal))\n"
  16684.    "    ())\n"
  16685.    "  (signature vec2\n"
  16686.    "    (parameters\n"
  16687.    "      (declare (in) vec2 x)\n"
  16688.    "      (declare (in) vec2 minVal)\n"
  16689.    "      (declare (in) vec2 maxVal))\n"
  16690.    "    ())\n"
  16691.    "  (signature vec3\n"
  16692.    "    (parameters\n"
  16693.    "      (declare (in) vec3 x)\n"
  16694.    "      (declare (in) vec3 minVal)\n"
  16695.    "      (declare (in) vec3 maxVal))\n"
  16696.    "    ())\n"
  16697.    "  (signature vec4\n"
  16698.    "    (parameters\n"
  16699.    "      (declare (in) vec4 x)\n"
  16700.    "      (declare (in) vec4 minVal)\n"
  16701.    "      (declare (in) vec4 maxVal))\n"
  16702.    "    ())\n"
  16703.    "  (signature vec2\n"
  16704.    "    (parameters\n"
  16705.    "      (declare (in) vec2 x)\n"
  16706.    "      (declare (in) float minVal)\n"
  16707.    "      (declare (in) float maxVal))\n"
  16708.    "    ())\n"
  16709.    "  (signature vec3\n"
  16710.    "    (parameters\n"
  16711.    "      (declare (in) vec3 x)\n"
  16712.    "      (declare (in) float minVal)\n"
  16713.    "      (declare (in) float maxVal))\n"
  16714.    "    ())\n"
  16715.    "  (signature vec4\n"
  16716.    "    (parameters\n"
  16717.    "      (declare (in) vec4 x)\n"
  16718.    "      (declare (in) float minVal)\n"
  16719.    "      (declare (in) float maxVal))\n"
  16720.    "    ())\n"
  16721.    "  (signature int\n"
  16722.    "    (parameters\n"
  16723.    "      (declare (in) int x)\n"
  16724.    "      (declare (in) int minVal)\n"
  16725.    "      (declare (in) int maxVal))\n"
  16726.    "    ())\n"
  16727.    "  (signature ivec2\n"
  16728.    "    (parameters\n"
  16729.    "      (declare (in) ivec2 x)\n"
  16730.    "      (declare (in) ivec2 minVal)\n"
  16731.    "      (declare (in) ivec2 maxVal))\n"
  16732.    "    ())\n"
  16733.    "  (signature ivec3\n"
  16734.    "    (parameters\n"
  16735.    "      (declare (in) ivec3 x)\n"
  16736.    "      (declare (in) ivec3 minVal)\n"
  16737.    "      (declare (in) ivec3 maxVal))\n"
  16738.    "    ())\n"
  16739.    "  (signature ivec4\n"
  16740.    "    (parameters\n"
  16741.    "      (declare (in) ivec4 x)\n"
  16742.    "      (declare (in) ivec4 minVal)\n"
  16743.    "      (declare (in) ivec4 maxVal))\n"
  16744.    "    ())\n"
  16745.    "  (signature ivec2\n"
  16746.    "    (parameters\n"
  16747.    "      (declare (in) ivec2 x)\n"
  16748.    "      (declare (in) int minVal)\n"
  16749.    "      (declare (in) int maxVal))\n"
  16750.    "    ())\n"
  16751.    "  (signature ivec3\n"
  16752.    "    (parameters\n"
  16753.    "      (declare (in) ivec3 x)\n"
  16754.    "      (declare (in) int minVal)\n"
  16755.    "      (declare (in) int maxVal))\n"
  16756.    "    ())\n"
  16757.    "  (signature ivec4\n"
  16758.    "    (parameters\n"
  16759.    "      (declare (in) ivec4 x)\n"
  16760.    "      (declare (in) int minVal)\n"
  16761.    "      (declare (in) int maxVal))\n"
  16762.    "    ())\n"
  16763.    "  (signature uint\n"
  16764.    "    (parameters\n"
  16765.    "      (declare (in) uint x)\n"
  16766.    "      (declare (in) uint minVal)\n"
  16767.    "      (declare (in) uint maxVal))\n"
  16768.    "    ())\n"
  16769.    "  (signature uvec2\n"
  16770.    "    (parameters\n"
  16771.    "      (declare (in) uvec2 x)\n"
  16772.    "      (declare (in) uvec2 minVal)\n"
  16773.    "      (declare (in) uvec2 maxVal))\n"
  16774.    "    ())\n"
  16775.    "  (signature uvec3\n"
  16776.    "    (parameters\n"
  16777.    "      (declare (in) uvec3 x)\n"
  16778.    "      (declare (in) uvec3 minVal)\n"
  16779.    "      (declare (in) uvec3 maxVal))\n"
  16780.    "    ())\n"
  16781.    "  (signature uvec4\n"
  16782.    "    (parameters\n"
  16783.    "      (declare (in) uvec4 x)\n"
  16784.    "      (declare (in) uvec4 minVal)\n"
  16785.    "      (declare (in) uvec4 maxVal))\n"
  16786.    "    ())\n"
  16787.    "  (signature uvec2\n"
  16788.    "    (parameters\n"
  16789.    "      (declare (in) uvec2 x)\n"
  16790.    "      (declare (in) uint minVal)\n"
  16791.    "      (declare (in) uint maxVal))\n"
  16792.    "    ())\n"
  16793.    "  (signature uvec3\n"
  16794.    "    (parameters\n"
  16795.    "      (declare (in) uvec3 x)\n"
  16796.    "      (declare (in) uint minVal)\n"
  16797.    "      (declare (in) uint maxVal))\n"
  16798.    "    ())\n"
  16799.    "  (signature uvec4\n"
  16800.    "    (parameters\n"
  16801.    "      (declare (in) uvec4 x)\n"
  16802.    "      (declare (in) uint minVal)\n"
  16803.    "      (declare (in) uint maxVal))\n"
  16804.    "    ()))\n"
  16805.    "(function mix\n"
  16806.    "  (signature float\n"
  16807.    "    (parameters\n"
  16808.    "      (declare (in) float x)\n"
  16809.    "      (declare (in) float y)\n"
  16810.    "      (declare (in) float a))\n"
  16811.    "    ())\n"
  16812.    "  (signature vec2\n"
  16813.    "    (parameters\n"
  16814.    "      (declare (in) vec2 x)\n"
  16815.    "      (declare (in) vec2 y)\n"
  16816.    "      (declare (in) vec2 a))\n"
  16817.    "    ())\n"
  16818.    "  (signature vec3\n"
  16819.    "    (parameters\n"
  16820.    "      (declare (in) vec3 x)\n"
  16821.    "      (declare (in) vec3 y)\n"
  16822.    "      (declare (in) vec3 a))\n"
  16823.    "    ())\n"
  16824.    "  (signature vec4\n"
  16825.    "    (parameters\n"
  16826.    "      (declare (in) vec4 x)\n"
  16827.    "      (declare (in) vec4 y)\n"
  16828.    "      (declare (in) vec4 a))\n"
  16829.    "    ())\n"
  16830.    "  (signature vec2\n"
  16831.    "    (parameters\n"
  16832.    "      (declare (in) vec2 x)\n"
  16833.    "      (declare (in) vec2 y)\n"
  16834.    "      (declare (in) float a))\n"
  16835.    "    ())\n"
  16836.    "  (signature vec3\n"
  16837.    "    (parameters\n"
  16838.    "      (declare (in) vec3 x)\n"
  16839.    "      (declare (in) vec3 y)\n"
  16840.    "      (declare (in) float a))\n"
  16841.    "    ())\n"
  16842.    "  (signature vec4\n"
  16843.    "    (parameters\n"
  16844.    "      (declare (in) vec4 x)\n"
  16845.    "      (declare (in) vec4 y)\n"
  16846.    "      (declare (in) float a))\n"
  16847.    "    ())\n"
  16848.    "  (signature float\n"
  16849.    "    (parameters\n"
  16850.    "      (declare (in) float x)\n"
  16851.    "      (declare (in) float y)\n"
  16852.    "      (declare (in) bool a))\n"
  16853.    "    ())\n"
  16854.    "  (signature vec2\n"
  16855.    "    (parameters\n"
  16856.    "      (declare (in) vec2 x)\n"
  16857.    "      (declare (in) vec2 y)\n"
  16858.    "      (declare (in) bvec2 a))\n"
  16859.    "    ())\n"
  16860.    "  (signature vec3\n"
  16861.    "    (parameters\n"
  16862.    "      (declare (in) vec3 x)\n"
  16863.    "      (declare (in) vec3 y)\n"
  16864.    "      (declare (in) bvec3 a))\n"
  16865.    "    ())\n"
  16866.    "  (signature vec4\n"
  16867.    "    (parameters\n"
  16868.    "      (declare (in) vec4 x)\n"
  16869.    "      (declare (in) vec4 y)\n"
  16870.    "      (declare (in) bvec4 a))\n"
  16871.    "    ()))\n"
  16872.    "(function step\n"
  16873.    "  (signature float\n"
  16874.    "    (parameters\n"
  16875.    "      (declare (in) float edge)\n"
  16876.    "      (declare (in) float x))\n"
  16877.    "    ())\n"
  16878.    "  (signature vec2\n"
  16879.    "    (parameters\n"
  16880.    "      (declare (in) vec2 edge)\n"
  16881.    "      (declare (in) vec2 x))\n"
  16882.    "    ())\n"
  16883.    "  (signature vec3\n"
  16884.    "    (parameters\n"
  16885.    "      (declare (in) vec3 edge)\n"
  16886.    "      (declare (in) vec3 x))\n"
  16887.    "    ())\n"
  16888.    "  (signature vec4\n"
  16889.    "    (parameters\n"
  16890.    "      (declare (in) vec4 edge)\n"
  16891.    "      (declare (in) vec4 x))\n"
  16892.    "    ())\n"
  16893.    "  (signature vec2\n"
  16894.    "    (parameters\n"
  16895.    "      (declare (in) float edge)\n"
  16896.    "      (declare (in) vec2 x))\n"
  16897.    "    ())\n"
  16898.    "  (signature vec3\n"
  16899.    "    (parameters\n"
  16900.    "      (declare (in) float edge)\n"
  16901.    "      (declare (in) vec3 x))\n"
  16902.    "    ())\n"
  16903.    "  (signature vec4\n"
  16904.    "    (parameters\n"
  16905.    "      (declare (in) float edge)\n"
  16906.    "      (declare (in) vec4 x))\n"
  16907.    "    ()))\n"
  16908.    "(function smoothstep\n"
  16909.    "  (signature float\n"
  16910.    "    (parameters\n"
  16911.    "      (declare (in) float edge0)\n"
  16912.    "      (declare (in) float edge1)\n"
  16913.    "      (declare (in) float x))\n"
  16914.    "    ())\n"
  16915.    "  (signature vec2\n"
  16916.    "    (parameters\n"
  16917.    "      (declare (in) vec2 edge0)\n"
  16918.    "      (declare (in) vec2 edge1)\n"
  16919.    "      (declare (in) vec2 x))\n"
  16920.    "    ())\n"
  16921.    "  (signature vec3\n"
  16922.    "    (parameters\n"
  16923.    "      (declare (in) vec3 edge0)\n"
  16924.    "      (declare (in) vec3 edge1)\n"
  16925.    "      (declare (in) vec3 x))\n"
  16926.    "    ())\n"
  16927.    "  (signature vec4\n"
  16928.    "    (parameters\n"
  16929.    "      (declare (in) vec4 edge0)\n"
  16930.    "      (declare (in) vec4 edge1)\n"
  16931.    "      (declare (in) vec4 x))\n"
  16932.    "    ())\n"
  16933.    "  (signature vec2\n"
  16934.    "    (parameters\n"
  16935.    "      (declare (in) float edge0)\n"
  16936.    "      (declare (in) float edge1)\n"
  16937.    "      (declare (in) vec2 x))\n"
  16938.    "    ())\n"
  16939.    "  (signature vec3\n"
  16940.    "    (parameters\n"
  16941.    "      (declare (in) float edge0)\n"
  16942.    "      (declare (in) float edge1)\n"
  16943.    "      (declare (in) vec3 x))\n"
  16944.    "    ())\n"
  16945.    "  (signature vec4\n"
  16946.    "    (parameters\n"
  16947.    "      (declare (in) float edge0)\n"
  16948.    "      (declare (in) float edge1)\n"
  16949.    "      (declare (in) vec4 x))\n"
  16950.    "    ()))\n"
  16951.    "(function isnan\n"
  16952.    "  (signature bool\n"
  16953.    "    (parameters\n"
  16954.    "      (declare (in) float x))\n"
  16955.    "    ())\n"
  16956.    "  (signature bvec2\n"
  16957.    "    (parameters\n"
  16958.    "      (declare (in) vec2 x))\n"
  16959.    "    ())\n"
  16960.    "  (signature bvec3\n"
  16961.    "    (parameters\n"
  16962.    "      (declare (in) vec3 x))\n"
  16963.    "    ())\n"
  16964.    "  (signature bvec4\n"
  16965.    "    (parameters\n"
  16966.    "      (declare (in) vec4 x))\n"
  16967.    "    ()))\n"
  16968.    "(function isinf\n"
  16969.    "  (signature bool\n"
  16970.    "    (parameters\n"
  16971.    "      (declare (in) float x))\n"
  16972.    "    ())\n"
  16973.    "  (signature bvec2\n"
  16974.    "    (parameters\n"
  16975.    "      (declare (in) vec2 x))\n"
  16976.    "    ())\n"
  16977.    "  (signature bvec3\n"
  16978.    "    (parameters\n"
  16979.    "      (declare (in) vec3 x))\n"
  16980.    "    ())\n"
  16981.    "  (signature bvec4\n"
  16982.    "    (parameters\n"
  16983.    "      (declare (in) vec4 x))\n"
  16984.    "    ()))\n"
  16985.    "(function floatBitsToInt\n"
  16986.    "  (signature int\n"
  16987.    "    (parameters\n"
  16988.    "      (declare (in) float value))\n"
  16989.    "    ())\n"
  16990.    "  (signature ivec2\n"
  16991.    "    (parameters\n"
  16992.    "      (declare (in) vec2 value))\n"
  16993.    "    ())\n"
  16994.    "  (signature ivec3\n"
  16995.    "    (parameters\n"
  16996.    "      (declare (in) vec3 value))\n"
  16997.    "    ())\n"
  16998.    "  (signature ivec4\n"
  16999.    "    (parameters\n"
  17000.    "      (declare (in) vec4 value))\n"
  17001.    "    ()))\n"
  17002.    "(function floatBitsToUint\n"
  17003.    "  (signature uint\n"
  17004.    "    (parameters\n"
  17005.    "      (declare (in) float value))\n"
  17006.    "    ())\n"
  17007.    "  (signature uvec2\n"
  17008.    "    (parameters\n"
  17009.    "      (declare (in) vec2 value))\n"
  17010.    "    ())\n"
  17011.    "  (signature uvec3\n"
  17012.    "    (parameters\n"
  17013.    "      (declare (in) vec3 value))\n"
  17014.    "    ())\n"
  17015.    "  (signature uvec4\n"
  17016.    "    (parameters\n"
  17017.    "      (declare (in) vec4 value))\n"
  17018.    "    ()))\n"
  17019.    "(function intBitsToFloat\n"
  17020.    "  (signature float\n"
  17021.    "    (parameters\n"
  17022.    "      (declare (in) int value))\n"
  17023.    "    ())\n"
  17024.    "  (signature vec2\n"
  17025.    "    (parameters\n"
  17026.    "      (declare (in) ivec2 value))\n"
  17027.    "    ())\n"
  17028.    "  (signature vec3\n"
  17029.    "    (parameters\n"
  17030.    "      (declare (in) ivec3 value))\n"
  17031.    "    ())\n"
  17032.    "  (signature vec4\n"
  17033.    "    (parameters\n"
  17034.    "      (declare (in) ivec4 value))\n"
  17035.    "    ()))\n"
  17036.    "(function uintBitsToFloat\n"
  17037.    "  (signature float\n"
  17038.    "    (parameters\n"
  17039.    "      (declare (in) uint value))\n"
  17040.    "    ())\n"
  17041.    "  (signature vec2\n"
  17042.    "    (parameters\n"
  17043.    "      (declare (in) uvec2 value))\n"
  17044.    "    ())\n"
  17045.    "  (signature vec3\n"
  17046.    "    (parameters\n"
  17047.    "      (declare (in) uvec3 value))\n"
  17048.    "    ())\n"
  17049.    "  (signature vec4\n"
  17050.    "    (parameters\n"
  17051.    "      (declare (in) uvec4 value))\n"
  17052.    "    ()))\n"
  17053.    "(function packSnorm2x16\n"
  17054.    "  (signature uint\n"
  17055.    "    (parameters\n"
  17056.    "      (declare (in) vec2 v))\n"
  17057.    "    ()))\n"
  17058.    "(function packUnorm2x16\n"
  17059.    "  (signature uint\n"
  17060.    "    (parameters\n"
  17061.    "      (declare (in) vec2 v))\n"
  17062.    "    ()))\n"
  17063.    "(function packHalf2x16\n"
  17064.    "  (signature uint\n"
  17065.    "    (parameters\n"
  17066.    "      (declare (in) vec2 v))\n"
  17067.    "    ()))\n"
  17068.    "(function unpackSnorm2x16\n"
  17069.    "  (signature vec2\n"
  17070.    "    (parameters\n"
  17071.    "      (declare (in) uint p))\n"
  17072.    "    ()))\n"
  17073.    "(function unpackUnorm2x16\n"
  17074.    "  (signature vec2\n"
  17075.    "    (parameters\n"
  17076.    "      (declare (in) uint p))\n"
  17077.    "    ()))\n"
  17078.    "(function unpackHalf2x16\n"
  17079.    "  (signature vec2\n"
  17080.    "    (parameters\n"
  17081.    "      (declare (in) uint p))\n"
  17082.    "    ()))\n"
  17083.    "(function length\n"
  17084.    "  (signature float\n"
  17085.    "    (parameters\n"
  17086.    "      (declare (in) float x))\n"
  17087.    "    ())\n"
  17088.    "  (signature float\n"
  17089.    "    (parameters\n"
  17090.    "      (declare (in) vec2 x))\n"
  17091.    "    ())\n"
  17092.    "  (signature float\n"
  17093.    "    (parameters\n"
  17094.    "      (declare (in) vec3 x))\n"
  17095.    "    ())\n"
  17096.    "  (signature float\n"
  17097.    "    (parameters\n"
  17098.    "      (declare (in) vec4 x))\n"
  17099.    "    ()))\n"
  17100.    "(function distance\n"
  17101.    "  (signature float\n"
  17102.    "    (parameters\n"
  17103.    "      (declare (in) float p0)\n"
  17104.    "      (declare (in) float p1))\n"
  17105.    "    ())\n"
  17106.    "  (signature float\n"
  17107.    "    (parameters\n"
  17108.    "      (declare (in) vec2 p0)\n"
  17109.    "      (declare (in) vec2 p1))\n"
  17110.    "    ())\n"
  17111.    "  (signature float\n"
  17112.    "    (parameters\n"
  17113.    "      (declare (in) vec3 p0)\n"
  17114.    "      (declare (in) vec3 p1))\n"
  17115.    "    ())\n"
  17116.    "  (signature float\n"
  17117.    "    (parameters\n"
  17118.    "      (declare (in) vec4 p0)\n"
  17119.    "      (declare (in) vec4 p1))\n"
  17120.    "    ()))\n"
  17121.    "(function dot\n"
  17122.    "  (signature float\n"
  17123.    "    (parameters\n"
  17124.    "      (declare (in) float x)\n"
  17125.    "      (declare (in) float y))\n"
  17126.    "    ())\n"
  17127.    "  (signature float\n"
  17128.    "    (parameters\n"
  17129.    "      (declare (in) vec2 x)\n"
  17130.    "      (declare (in) vec2 y))\n"
  17131.    "    ())\n"
  17132.    "  (signature float\n"
  17133.    "    (parameters\n"
  17134.    "      (declare (in) vec3 x)\n"
  17135.    "      (declare (in) vec3 y))\n"
  17136.    "    ())\n"
  17137.    "  (signature float\n"
  17138.    "    (parameters\n"
  17139.    "      (declare (in) vec4 x)\n"
  17140.    "      (declare (in) vec4 y))\n"
  17141.    "    ()))\n"
  17142.    "(function cross\n"
  17143.    "  (signature vec3\n"
  17144.    "    (parameters\n"
  17145.    "      (declare (in) vec3 x)\n"
  17146.    "      (declare (in) vec3 y))\n"
  17147.    "    ()))\n"
  17148.    "(function normalize\n"
  17149.    "  (signature float\n"
  17150.    "    (parameters\n"
  17151.    "      (declare (in) float x))\n"
  17152.    "    ())\n"
  17153.    "  (signature vec2\n"
  17154.    "    (parameters\n"
  17155.    "      (declare (in) vec2 x))\n"
  17156.    "    ())\n"
  17157.    "  (signature vec3\n"
  17158.    "    (parameters\n"
  17159.    "      (declare (in) vec3 x))\n"
  17160.    "    ())\n"
  17161.    "  (signature vec4\n"
  17162.    "    (parameters\n"
  17163.    "      (declare (in) vec4 x))\n"
  17164.    "    ()))\n"
  17165.    "(function faceforward\n"
  17166.    "  (signature float\n"
  17167.    "    (parameters\n"
  17168.    "      (declare (in) float N)\n"
  17169.    "      (declare (in) float I)\n"
  17170.    "      (declare (in) float Nref))\n"
  17171.    "    ())\n"
  17172.    "  (signature vec2\n"
  17173.    "    (parameters\n"
  17174.    "      (declare (in) vec2 N)\n"
  17175.    "      (declare (in) vec2 I)\n"
  17176.    "      (declare (in) vec2 Nref))\n"
  17177.    "    ())\n"
  17178.    "  (signature vec3\n"
  17179.    "    (parameters\n"
  17180.    "      (declare (in) vec3 N)\n"
  17181.    "      (declare (in) vec3 I)\n"
  17182.    "      (declare (in) vec3 Nref))\n"
  17183.    "    ())\n"
  17184.    "  (signature vec4\n"
  17185.    "    (parameters\n"
  17186.    "      (declare (in) vec4 N)\n"
  17187.    "      (declare (in) vec4 I)\n"
  17188.    "      (declare (in) vec4 Nref))\n"
  17189.    "    ()))\n"
  17190.    "(function reflect\n"
  17191.    "  (signature float\n"
  17192.    "    (parameters\n"
  17193.    "      (declare (in) float I)\n"
  17194.    "      (declare (in) float N))\n"
  17195.    "    ())\n"
  17196.    "  (signature vec2\n"
  17197.    "    (parameters\n"
  17198.    "      (declare (in) vec2 I)\n"
  17199.    "      (declare (in) vec2 N))\n"
  17200.    "    ())\n"
  17201.    "  (signature vec3\n"
  17202.    "    (parameters\n"
  17203.    "      (declare (in) vec3 I)\n"
  17204.    "      (declare (in) vec3 N))\n"
  17205.    "    ())\n"
  17206.    "  (signature vec4\n"
  17207.    "    (parameters\n"
  17208.    "      (declare (in) vec4 I)\n"
  17209.    "      (declare (in) vec4 N))\n"
  17210.    "    ()))\n"
  17211.    "(function refract\n"
  17212.    "  (signature float\n"
  17213.    "    (parameters\n"
  17214.    "      (declare (in) float I)\n"
  17215.    "      (declare (in) float N)\n"
  17216.    "      (declare (in) float eta))\n"
  17217.    "    ())\n"
  17218.    "  (signature vec2\n"
  17219.    "    (parameters\n"
  17220.    "      (declare (in) vec2 I)\n"
  17221.    "      (declare (in) vec2 N)\n"
  17222.    "      (declare (in) float eta))\n"
  17223.    "    ())\n"
  17224.    "  (signature vec3\n"
  17225.    "    (parameters\n"
  17226.    "      (declare (in) vec3 I)\n"
  17227.    "      (declare (in) vec3 N)\n"
  17228.    "      (declare (in) float eta))\n"
  17229.    "    ())\n"
  17230.    "  (signature vec4\n"
  17231.    "    (parameters\n"
  17232.    "      (declare (in) vec4 I)\n"
  17233.    "      (declare (in) vec4 N)\n"
  17234.    "      (declare (in) float eta))\n"
  17235.    "    ()))\n"
  17236.    "(function matrixCompMult\n"
  17237.    "  (signature mat2\n"
  17238.    "    (parameters\n"
  17239.    "      (declare (in) mat2 x)\n"
  17240.    "      (declare (in) mat2 y))\n"
  17241.    "    ())\n"
  17242.    "  (signature mat3\n"
  17243.    "    (parameters\n"
  17244.    "      (declare (in) mat3 x)\n"
  17245.    "      (declare (in) mat3 y))\n"
  17246.    "    ())\n"
  17247.    "  (signature mat4\n"
  17248.    "    (parameters\n"
  17249.    "      (declare (in) mat4 x)\n"
  17250.    "      (declare (in) mat4 y))\n"
  17251.    "    ())\n"
  17252.    "  (signature mat2x3\n"
  17253.    "    (parameters\n"
  17254.    "      (declare (in) mat2x3 x)\n"
  17255.    "      (declare (in) mat2x3 y))\n"
  17256.    "    ())\n"
  17257.    "  (signature mat2x4\n"
  17258.    "    (parameters\n"
  17259.    "      (declare (in) mat2x4 x)\n"
  17260.    "      (declare (in) mat2x4 y))\n"
  17261.    "    ())\n"
  17262.    "  (signature mat3x2\n"
  17263.    "    (parameters\n"
  17264.    "      (declare (in) mat3x2 x)\n"
  17265.    "      (declare (in) mat3x2 y))\n"
  17266.    "    ())\n"
  17267.    "  (signature mat3x4\n"
  17268.    "    (parameters\n"
  17269.    "      (declare (in) mat3x4 x)\n"
  17270.    "      (declare (in) mat3x4 y))\n"
  17271.    "    ())\n"
  17272.    "  (signature mat4x2\n"
  17273.    "    (parameters\n"
  17274.    "      (declare (in) mat4x2 x)\n"
  17275.    "      (declare (in) mat4x2 y))\n"
  17276.    "    ())\n"
  17277.    "  (signature mat4x3\n"
  17278.    "    (parameters\n"
  17279.    "      (declare (in) mat4x3 x)\n"
  17280.    "      (declare (in) mat4x3 y))\n"
  17281.    "    ()))\n"
  17282.    "(function outerProduct\n"
  17283.    "  (signature mat2\n"
  17284.    "    (parameters\n"
  17285.    "      (declare (in) vec2 c)\n"
  17286.    "      (declare (in) vec2 r))\n"
  17287.    "    ())\n"
  17288.    "  (signature mat3\n"
  17289.    "    (parameters\n"
  17290.    "      (declare (in) vec3 c)\n"
  17291.    "      (declare (in) vec3 r))\n"
  17292.    "    ())\n"
  17293.    "  (signature mat4\n"
  17294.    "    (parameters\n"
  17295.    "      (declare (in) vec4 c)\n"
  17296.    "      (declare (in) vec4 r))\n"
  17297.    "    ())\n"
  17298.    "  (signature mat2x3\n"
  17299.    "    (parameters\n"
  17300.    "      (declare (in) vec3 c)\n"
  17301.    "      (declare (in) vec2 r))\n"
  17302.    "    ())\n"
  17303.    "  (signature mat3x2\n"
  17304.    "    (parameters\n"
  17305.    "      (declare (in) vec2 c)\n"
  17306.    "      (declare (in) vec3 r))\n"
  17307.    "    ())\n"
  17308.    "  (signature mat2x4\n"
  17309.    "    (parameters\n"
  17310.    "      (declare (in) vec4 c)\n"
  17311.    "      (declare (in) vec2 r))\n"
  17312.    "    ())\n"
  17313.    "  (signature mat4x2\n"
  17314.    "    (parameters\n"
  17315.    "      (declare (in) vec2 c)\n"
  17316.    "      (declare (in) vec4 r))\n"
  17317.    "    ())\n"
  17318.    "  (signature mat3x4\n"
  17319.    "    (parameters\n"
  17320.    "      (declare (in) vec4 c)\n"
  17321.    "      (declare (in) vec3 r))\n"
  17322.    "    ())\n"
  17323.    "  (signature mat4x3\n"
  17324.    "    (parameters\n"
  17325.    "      (declare (in) vec3 c)\n"
  17326.    "      (declare (in) vec4 r))\n"
  17327.    "    ()))\n"
  17328.    "(function transpose\n"
  17329.    "  (signature mat2\n"
  17330.    "    (parameters\n"
  17331.    "      (declare (in) mat2 m))\n"
  17332.    "    ())\n"
  17333.    "  (signature mat3\n"
  17334.    "    (parameters\n"
  17335.    "      (declare (in) mat3 m))\n"
  17336.    "    ())\n"
  17337.    "  (signature mat4\n"
  17338.    "    (parameters\n"
  17339.    "      (declare (in) mat4 m))\n"
  17340.    "    ())\n"
  17341.    "  (signature mat2x3\n"
  17342.    "    (parameters\n"
  17343.    "      (declare (in) mat3x2 m))\n"
  17344.    "    ())\n"
  17345.    "  (signature mat3x2\n"
  17346.    "    (parameters\n"
  17347.    "      (declare (in) mat2x3 m))\n"
  17348.    "    ())\n"
  17349.    "  (signature mat2x4\n"
  17350.    "    (parameters\n"
  17351.    "      (declare (in) mat4x2 m))\n"
  17352.    "    ())\n"
  17353.    "  (signature mat4x2\n"
  17354.    "    (parameters\n"
  17355.    "      (declare (in) mat2x4 m))\n"
  17356.    "    ())\n"
  17357.    "  (signature mat3x4\n"
  17358.    "    (parameters\n"
  17359.    "      (declare (in) mat4x3 m))\n"
  17360.    "    ())\n"
  17361.    "  (signature mat4x3\n"
  17362.    "    (parameters\n"
  17363.    "      (declare (in) mat3x4 m))\n"
  17364.    "    ()))\n"
  17365.    "(function determinant\n"
  17366.    "  (signature float\n"
  17367.    "    (parameters\n"
  17368.    "      (declare (in) mat2 m))\n"
  17369.    "    ())\n"
  17370.    "  (signature float\n"
  17371.    "    (parameters\n"
  17372.    "      (declare (in) mat3 m))\n"
  17373.    "    ())\n"
  17374.    "  (signature float\n"
  17375.    "    (parameters\n"
  17376.    "      (declare (in) mat4 m))\n"
  17377.    "    ()))\n"
  17378.    "(function inverse\n"
  17379.    "  (signature mat2\n"
  17380.    "    (parameters\n"
  17381.    "      (declare (in) mat2 m))\n"
  17382.    "    ())\n"
  17383.    "  (signature mat3\n"
  17384.    "    (parameters\n"
  17385.    "      (declare (in) mat3 m))\n"
  17386.    "    ())\n"
  17387.    "  (signature mat4\n"
  17388.    "    (parameters\n"
  17389.    "      (declare (in) mat4 m))\n"
  17390.    "    ()))\n"
  17391.    "(function lessThan\n"
  17392.    "  (signature bvec2\n"
  17393.    "    (parameters\n"
  17394.    "      (declare (in) vec2 x)\n"
  17395.    "      (declare (in) vec2 y))\n"
  17396.    "    ())\n"
  17397.    "  (signature bvec3\n"
  17398.    "    (parameters\n"
  17399.    "      (declare (in) vec3 x)\n"
  17400.    "      (declare (in) vec3 y))\n"
  17401.    "    ())\n"
  17402.    "  (signature bvec4\n"
  17403.    "    (parameters\n"
  17404.    "      (declare (in) vec4 x)\n"
  17405.    "      (declare (in) vec4 y))\n"
  17406.    "    ())\n"
  17407.    "  (signature bvec2\n"
  17408.    "    (parameters\n"
  17409.    "      (declare (in) ivec2 x)\n"
  17410.    "      (declare (in) ivec2 y))\n"
  17411.    "    ())\n"
  17412.    "  (signature bvec3\n"
  17413.    "    (parameters\n"
  17414.    "      (declare (in) ivec3 x)\n"
  17415.    "      (declare (in) ivec3 y))\n"
  17416.    "    ())\n"
  17417.    "  (signature bvec4\n"
  17418.    "    (parameters\n"
  17419.    "      (declare (in) ivec4 x)\n"
  17420.    "      (declare (in) ivec4 y))\n"
  17421.    "    ())\n"
  17422.    "  (signature bvec2\n"
  17423.    "    (parameters\n"
  17424.    "      (declare (in) uvec2 x)\n"
  17425.    "      (declare (in) uvec2 y))\n"
  17426.    "    ())\n"
  17427.    "  (signature bvec3\n"
  17428.    "    (parameters\n"
  17429.    "      (declare (in) uvec3 x)\n"
  17430.    "      (declare (in) uvec3 y))\n"
  17431.    "    ())\n"
  17432.    "  (signature bvec4\n"
  17433.    "    (parameters\n"
  17434.    "      (declare (in) uvec4 x)\n"
  17435.    "      (declare (in) uvec4 y))\n"
  17436.    "    ()))\n"
  17437.    "(function lessThanEqual\n"
  17438.    "  (signature bvec2\n"
  17439.    "    (parameters\n"
  17440.    "      (declare (in) vec2 x)\n"
  17441.    "      (declare (in) vec2 y))\n"
  17442.    "    ())\n"
  17443.    "  (signature bvec3\n"
  17444.    "    (parameters\n"
  17445.    "      (declare (in) vec3 x)\n"
  17446.    "      (declare (in) vec3 y))\n"
  17447.    "    ())\n"
  17448.    "  (signature bvec4\n"
  17449.    "    (parameters\n"
  17450.    "      (declare (in) vec4 x)\n"
  17451.    "      (declare (in) vec4 y))\n"
  17452.    "    ())\n"
  17453.    "  (signature bvec2\n"
  17454.    "    (parameters\n"
  17455.    "      (declare (in) ivec2 x)\n"
  17456.    "      (declare (in) ivec2 y))\n"
  17457.    "    ())\n"
  17458.    "  (signature bvec3\n"
  17459.    "    (parameters\n"
  17460.    "      (declare (in) ivec3 x)\n"
  17461.    "      (declare (in) ivec3 y))\n"
  17462.    "    ())\n"
  17463.    "  (signature bvec4\n"
  17464.    "    (parameters\n"
  17465.    "      (declare (in) ivec4 x)\n"
  17466.    "      (declare (in) ivec4 y))\n"
  17467.    "    ())\n"
  17468.    "  (signature bvec2\n"
  17469.    "    (parameters\n"
  17470.    "      (declare (in) uvec2 x)\n"
  17471.    "      (declare (in) uvec2 y))\n"
  17472.    "    ())\n"
  17473.    "  (signature bvec3\n"
  17474.    "    (parameters\n"
  17475.    "      (declare (in) uvec3 x)\n"
  17476.    "      (declare (in) uvec3 y))\n"
  17477.    "    ())\n"
  17478.    "  (signature bvec4\n"
  17479.    "    (parameters\n"
  17480.    "      (declare (in) uvec4 x)\n"
  17481.    "      (declare (in) uvec4 y))\n"
  17482.    "    ()))\n"
  17483.    "(function greaterThan\n"
  17484.    "  (signature bvec2\n"
  17485.    "    (parameters\n"
  17486.    "      (declare (in) vec2 x)\n"
  17487.    "      (declare (in) vec2 y))\n"
  17488.    "    ())\n"
  17489.    "  (signature bvec3\n"
  17490.    "    (parameters\n"
  17491.    "      (declare (in) vec3 x)\n"
  17492.    "      (declare (in) vec3 y))\n"
  17493.    "    ())\n"
  17494.    "  (signature bvec4\n"
  17495.    "    (parameters\n"
  17496.    "      (declare (in) vec4 x)\n"
  17497.    "      (declare (in) vec4 y))\n"
  17498.    "    ())\n"
  17499.    "  (signature bvec2\n"
  17500.    "    (parameters\n"
  17501.    "      (declare (in) ivec2 x)\n"
  17502.    "      (declare (in) ivec2 y))\n"
  17503.    "    ())\n"
  17504.    "  (signature bvec3\n"
  17505.    "    (parameters\n"
  17506.    "      (declare (in) ivec3 x)\n"
  17507.    "      (declare (in) ivec3 y))\n"
  17508.    "    ())\n"
  17509.    "  (signature bvec4\n"
  17510.    "    (parameters\n"
  17511.    "      (declare (in) ivec4 x)\n"
  17512.    "      (declare (in) ivec4 y))\n"
  17513.    "    ())\n"
  17514.    "  (signature bvec2\n"
  17515.    "    (parameters\n"
  17516.    "      (declare (in) uvec2 x)\n"
  17517.    "      (declare (in) uvec2 y))\n"
  17518.    "    ())\n"
  17519.    "  (signature bvec3\n"
  17520.    "    (parameters\n"
  17521.    "      (declare (in) uvec3 x)\n"
  17522.    "      (declare (in) uvec3 y))\n"
  17523.    "    ())\n"
  17524.    "  (signature bvec4\n"
  17525.    "    (parameters\n"
  17526.    "      (declare (in) uvec4 x)\n"
  17527.    "      (declare (in) uvec4 y))\n"
  17528.    "    ()))\n"
  17529.    "(function greaterThanEqual\n"
  17530.    "  (signature bvec2\n"
  17531.    "    (parameters\n"
  17532.    "      (declare (in) vec2 x)\n"
  17533.    "      (declare (in) vec2 y))\n"
  17534.    "    ())\n"
  17535.    "  (signature bvec3\n"
  17536.    "    (parameters\n"
  17537.    "      (declare (in) vec3 x)\n"
  17538.    "      (declare (in) vec3 y))\n"
  17539.    "    ())\n"
  17540.    "  (signature bvec4\n"
  17541.    "    (parameters\n"
  17542.    "      (declare (in) vec4 x)\n"
  17543.    "      (declare (in) vec4 y))\n"
  17544.    "    ())\n"
  17545.    "  (signature bvec2\n"
  17546.    "    (parameters\n"
  17547.    "      (declare (in) ivec2 x)\n"
  17548.    "      (declare (in) ivec2 y))\n"
  17549.    "    ())\n"
  17550.    "  (signature bvec3\n"
  17551.    "    (parameters\n"
  17552.    "      (declare (in) ivec3 x)\n"
  17553.    "      (declare (in) ivec3 y))\n"
  17554.    "    ())\n"
  17555.    "  (signature bvec4\n"
  17556.    "    (parameters\n"
  17557.    "      (declare (in) ivec4 x)\n"
  17558.    "      (declare (in) ivec4 y))\n"
  17559.    "    ())\n"
  17560.    "  (signature bvec2\n"
  17561.    "    (parameters\n"
  17562.    "      (declare (in) uvec2 x)\n"
  17563.    "      (declare (in) uvec2 y))\n"
  17564.    "    ())\n"
  17565.    "  (signature bvec3\n"
  17566.    "    (parameters\n"
  17567.    "      (declare (in) uvec3 x)\n"
  17568.    "      (declare (in) uvec3 y))\n"
  17569.    "    ())\n"
  17570.    "  (signature bvec4\n"
  17571.    "    (parameters\n"
  17572.    "      (declare (in) uvec4 x)\n"
  17573.    "      (declare (in) uvec4 y))\n"
  17574.    "    ()))\n"
  17575.    "(function equal\n"
  17576.    "  (signature bvec2\n"
  17577.    "    (parameters\n"
  17578.    "      (declare (in) vec2 x)\n"
  17579.    "      (declare (in) vec2 y))\n"
  17580.    "    ())\n"
  17581.    "  (signature bvec3\n"
  17582.    "    (parameters\n"
  17583.    "      (declare (in) vec3 x)\n"
  17584.    "      (declare (in) vec3 y))\n"
  17585.    "    ())\n"
  17586.    "  (signature bvec4\n"
  17587.    "    (parameters\n"
  17588.    "      (declare (in) vec4 x)\n"
  17589.    "      (declare (in) vec4 y))\n"
  17590.    "    ())\n"
  17591.    "  (signature bvec2\n"
  17592.    "    (parameters\n"
  17593.    "      (declare (in) ivec2 x)\n"
  17594.    "      (declare (in) ivec2 y))\n"
  17595.    "    ())\n"
  17596.    "  (signature bvec3\n"
  17597.    "    (parameters\n"
  17598.    "      (declare (in) ivec3 x)\n"
  17599.    "      (declare (in) ivec3 y))\n"
  17600.    "    ())\n"
  17601.    "  (signature bvec4\n"
  17602.    "    (parameters\n"
  17603.    "      (declare (in) ivec4 x)\n"
  17604.    "      (declare (in) ivec4 y))\n"
  17605.    "    ())\n"
  17606.    "  (signature bvec2\n"
  17607.    "    (parameters\n"
  17608.    "      (declare (in) uvec2 x)\n"
  17609.    "      (declare (in) uvec2 y))\n"
  17610.    "    ())\n"
  17611.    "  (signature bvec3\n"
  17612.    "    (parameters\n"
  17613.    "      (declare (in) uvec3 x)\n"
  17614.    "      (declare (in) uvec3 y))\n"
  17615.    "    ())\n"
  17616.    "  (signature bvec4\n"
  17617.    "    (parameters\n"
  17618.    "      (declare (in) uvec4 x)\n"
  17619.    "      (declare (in) uvec4 y))\n"
  17620.    "    ())\n"
  17621.    "  (signature bvec2\n"
  17622.    "    (parameters\n"
  17623.    "      (declare (in) bvec2 x)\n"
  17624.    "      (declare (in) bvec2 y))\n"
  17625.    "    ())\n"
  17626.    "  (signature bvec3\n"
  17627.    "    (parameters\n"
  17628.    "      (declare (in) bvec3 x)\n"
  17629.    "      (declare (in) bvec3 y))\n"
  17630.    "    ())\n"
  17631.    "  (signature bvec4\n"
  17632.    "    (parameters\n"
  17633.    "      (declare (in) bvec4 x)\n"
  17634.    "      (declare (in) bvec4 y))\n"
  17635.    "    ()))\n"
  17636.    "(function notEqual\n"
  17637.    "  (signature bvec2\n"
  17638.    "    (parameters\n"
  17639.    "      (declare (in) vec2 x)\n"
  17640.    "      (declare (in) vec2 y))\n"
  17641.    "    ())\n"
  17642.    "  (signature bvec3\n"
  17643.    "    (parameters\n"
  17644.    "      (declare (in) vec3 x)\n"
  17645.    "      (declare (in) vec3 y))\n"
  17646.    "    ())\n"
  17647.    "  (signature bvec4\n"
  17648.    "    (parameters\n"
  17649.    "      (declare (in) vec4 x)\n"
  17650.    "      (declare (in) vec4 y))\n"
  17651.    "    ())\n"
  17652.    "  (signature bvec2\n"
  17653.    "    (parameters\n"
  17654.    "      (declare (in) ivec2 x)\n"
  17655.    "      (declare (in) ivec2 y))\n"
  17656.    "    ())\n"
  17657.    "  (signature bvec3\n"
  17658.    "    (parameters\n"
  17659.    "      (declare (in) ivec3 x)\n"
  17660.    "      (declare (in) ivec3 y))\n"
  17661.    "    ())\n"
  17662.    "  (signature bvec4\n"
  17663.    "    (parameters\n"
  17664.    "      (declare (in) ivec4 x)\n"
  17665.    "      (declare (in) ivec4 y))\n"
  17666.    "    ())\n"
  17667.    "  (signature bvec2\n"
  17668.    "    (parameters\n"
  17669.    "      (declare (in) uvec2 x)\n"
  17670.    "      (declare (in) uvec2 y))\n"
  17671.    "    ())\n"
  17672.    "  (signature bvec3\n"
  17673.    "    (parameters\n"
  17674.    "      (declare (in) uvec3 x)\n"
  17675.    "      (declare (in) uvec3 y))\n"
  17676.    "    ())\n"
  17677.    "  (signature bvec4\n"
  17678.    "    (parameters\n"
  17679.    "      (declare (in) uvec4 x)\n"
  17680.    "      (declare (in) uvec4 y))\n"
  17681.    "    ())\n"
  17682.    "  (signature bvec2\n"
  17683.    "    (parameters\n"
  17684.    "      (declare (in) bvec2 x)\n"
  17685.    "      (declare (in) bvec2 y))\n"
  17686.    "    ())\n"
  17687.    "  (signature bvec3\n"
  17688.    "    (parameters\n"
  17689.    "      (declare (in) bvec3 x)\n"
  17690.    "      (declare (in) bvec3 y))\n"
  17691.    "    ())\n"
  17692.    "  (signature bvec4\n"
  17693.    "    (parameters\n"
  17694.    "      (declare (in) bvec4 x)\n"
  17695.    "      (declare (in) bvec4 y))\n"
  17696.    "    ()))\n"
  17697.    "(function any\n"
  17698.    "  (signature bool\n"
  17699.    "    (parameters\n"
  17700.    "      (declare (in) bvec2 x))\n"
  17701.    "    ())\n"
  17702.    "  (signature bool\n"
  17703.    "    (parameters\n"
  17704.    "      (declare (in) bvec3 x))\n"
  17705.    "    ())\n"
  17706.    "  (signature bool\n"
  17707.    "    (parameters\n"
  17708.    "      (declare (in) bvec4 x))\n"
  17709.    "    ()))\n"
  17710.    "(function all\n"
  17711.    "  (signature bool\n"
  17712.    "    (parameters\n"
  17713.    "      (declare (in) bvec2 x))\n"
  17714.    "    ())\n"
  17715.    "  (signature bool\n"
  17716.    "    (parameters\n"
  17717.    "      (declare (in) bvec3 x))\n"
  17718.    "    ())\n"
  17719.    "  (signature bool\n"
  17720.    "    (parameters\n"
  17721.    "      (declare (in) bvec4 x))\n"
  17722.    "    ()))\n"
  17723.    "(function not\n"
  17724.    "  (signature bvec2\n"
  17725.    "    (parameters\n"
  17726.    "      (declare (in) bvec2 x))\n"
  17727.    "    ())\n"
  17728.    "  (signature bvec3\n"
  17729.    "    (parameters\n"
  17730.    "      (declare (in) bvec3 x))\n"
  17731.    "    ())\n"
  17732.    "  (signature bvec4\n"
  17733.    "    (parameters\n"
  17734.    "      (declare (in) bvec4 x))\n"
  17735.    "    ()))\n"
  17736.    "(function textureSize\n"
  17737.    "  (signature ivec2\n"
  17738.    "    (parameters\n"
  17739.    "      (declare (in) sampler2D sampler)\n"
  17740.    "      (declare (in) int lod))\n"
  17741.    "    ())\n"
  17742.    "  (signature ivec2\n"
  17743.    "    (parameters\n"
  17744.    "      (declare (in) isampler2D sampler)\n"
  17745.    "      (declare (in) int lod))\n"
  17746.    "    ())\n"
  17747.    "  (signature ivec2\n"
  17748.    "    (parameters\n"
  17749.    "      (declare (in) usampler2D sampler)\n"
  17750.    "      (declare (in) int lod))\n"
  17751.    "    ())\n"
  17752.    "  (signature ivec3\n"
  17753.    "    (parameters\n"
  17754.    "      (declare (in) sampler3D sampler)\n"
  17755.    "      (declare (in) int lod))\n"
  17756.    "    ())\n"
  17757.    "  (signature ivec3\n"
  17758.    "    (parameters\n"
  17759.    "      (declare (in) isampler3D sampler)\n"
  17760.    "      (declare (in) int lod))\n"
  17761.    "    ())\n"
  17762.    "  (signature ivec3\n"
  17763.    "    (parameters\n"
  17764.    "      (declare (in) usampler3D sampler)\n"
  17765.    "      (declare (in) int lod))\n"
  17766.    "    ())\n"
  17767.    "  (signature ivec2\n"
  17768.    "    (parameters\n"
  17769.    "      (declare (in) samplerCube sampler)\n"
  17770.    "      (declare (in) int lod))\n"
  17771.    "    ())\n"
  17772.    "  (signature ivec2\n"
  17773.    "    (parameters\n"
  17774.    "      (declare (in) isamplerCube sampler)\n"
  17775.    "      (declare (in) int lod))\n"
  17776.    "    ())\n"
  17777.    "  (signature ivec2\n"
  17778.    "    (parameters\n"
  17779.    "      (declare (in) usamplerCube sampler)\n"
  17780.    "      (declare (in) int lod))\n"
  17781.    "    ())\n"
  17782.    "  (signature ivec2\n"
  17783.    "    (parameters\n"
  17784.    "      (declare (in) sampler2DShadow sampler)\n"
  17785.    "      (declare (in) int lod))\n"
  17786.    "    ())\n"
  17787.    "  (signature ivec2\n"
  17788.    "    (parameters\n"
  17789.    "      (declare (in) samplerCubeShadow sampler)\n"
  17790.    "      (declare (in) int lod))\n"
  17791.    "    ())\n"
  17792.    "  (signature ivec3\n"
  17793.    "    (parameters\n"
  17794.    "      (declare (in) sampler2DArray sampler)\n"
  17795.    "      (declare (in) int lod))\n"
  17796.    "    ())\n"
  17797.    "  (signature ivec3\n"
  17798.    "    (parameters\n"
  17799.    "      (declare (in) isampler2DArray sampler)\n"
  17800.    "      (declare (in) int lod))\n"
  17801.    "    ())\n"
  17802.    "  (signature ivec3\n"
  17803.    "    (parameters\n"
  17804.    "      (declare (in) usampler2DArray sampler)\n"
  17805.    "      (declare (in) int lod))\n"
  17806.    "    ())\n"
  17807.    "  (signature ivec3\n"
  17808.    "    (parameters\n"
  17809.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  17810.    "      (declare (in) int lod))\n"
  17811.    "    ()))\n"
  17812.    "(function texture\n"
  17813.    "  (signature vec4\n"
  17814.    "    (parameters\n"
  17815.    "      (declare (in) sampler2D sampler)\n"
  17816.    "      (declare (in) vec2 P))\n"
  17817.    "    ())\n"
  17818.    "  (signature ivec4\n"
  17819.    "    (parameters\n"
  17820.    "      (declare (in) isampler2D sampler)\n"
  17821.    "      (declare (in) vec2 P))\n"
  17822.    "    ())\n"
  17823.    "  (signature uvec4\n"
  17824.    "    (parameters\n"
  17825.    "      (declare (in) usampler2D sampler)\n"
  17826.    "      (declare (in) vec2 P))\n"
  17827.    "    ())\n"
  17828.    "  (signature vec4\n"
  17829.    "    (parameters\n"
  17830.    "      (declare (in) sampler3D sampler)\n"
  17831.    "      (declare (in) vec3 P))\n"
  17832.    "    ())\n"
  17833.    "  (signature ivec4\n"
  17834.    "    (parameters\n"
  17835.    "      (declare (in) isampler3D sampler)\n"
  17836.    "      (declare (in) vec3 P))\n"
  17837.    "    ())\n"
  17838.    "  (signature uvec4\n"
  17839.    "    (parameters\n"
  17840.    "      (declare (in) usampler3D sampler)\n"
  17841.    "      (declare (in) vec3 P))\n"
  17842.    "    ())\n"
  17843.    "  (signature vec4\n"
  17844.    "    (parameters\n"
  17845.    "      (declare (in) samplerCube sampler)\n"
  17846.    "      (declare (in) vec3 P))\n"
  17847.    "    ())\n"
  17848.    "  (signature ivec4\n"
  17849.    "    (parameters\n"
  17850.    "      (declare (in) isamplerCube sampler)\n"
  17851.    "      (declare (in) vec3 P))\n"
  17852.    "    ())\n"
  17853.    "  (signature uvec4\n"
  17854.    "    (parameters\n"
  17855.    "      (declare (in) usamplerCube sampler)\n"
  17856.    "      (declare (in) vec3 P))\n"
  17857.    "    ())\n"
  17858.    "  (signature float\n"
  17859.    "    (parameters\n"
  17860.    "      (declare (in) sampler2DShadow sampler)\n"
  17861.    "      (declare (in) vec3 P))\n"
  17862.    "    ())\n"
  17863.    "  (signature float\n"
  17864.    "    (parameters\n"
  17865.    "      (declare (in) samplerCubeShadow sampler)\n"
  17866.    "      (declare (in) vec4 P))\n"
  17867.    "    ())\n"
  17868.    "  (signature vec4\n"
  17869.    "    (parameters\n"
  17870.    "      (declare (in) sampler2DArray sampler)\n"
  17871.    "      (declare (in) vec3 P))\n"
  17872.    "    ())\n"
  17873.    "  (signature ivec4\n"
  17874.    "    (parameters\n"
  17875.    "      (declare (in) isampler2DArray sampler)\n"
  17876.    "      (declare (in) vec3 P))\n"
  17877.    "    ())\n"
  17878.    "  (signature uvec4\n"
  17879.    "    (parameters\n"
  17880.    "      (declare (in) usampler2DArray sampler)\n"
  17881.    "      (declare (in) vec3 P))\n"
  17882.    "    ())\n"
  17883.    "  (signature float\n"
  17884.    "    (parameters\n"
  17885.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  17886.    "      (declare (in) vec4 P))\n"
  17887.    "    ()))\n"
  17888.    "(function textureProj\n"
  17889.    "  (signature vec4\n"
  17890.    "    (parameters\n"
  17891.    "      (declare (in) sampler2D sampler)\n"
  17892.    "      (declare (in) vec3 P))\n"
  17893.    "    ())\n"
  17894.    "  (signature ivec4\n"
  17895.    "    (parameters\n"
  17896.    "      (declare (in) isampler2D sampler)\n"
  17897.    "      (declare (in) vec3 P))\n"
  17898.    "    ())\n"
  17899.    "  (signature uvec4\n"
  17900.    "    (parameters\n"
  17901.    "      (declare (in) usampler2D sampler)\n"
  17902.    "      (declare (in) vec3 P))\n"
  17903.    "    ())\n"
  17904.    "  (signature vec4\n"
  17905.    "    (parameters\n"
  17906.    "      (declare (in) sampler2D sampler)\n"
  17907.    "      (declare (in) vec4 P))\n"
  17908.    "    ())\n"
  17909.    "  (signature ivec4\n"
  17910.    "    (parameters\n"
  17911.    "      (declare (in) isampler2D sampler)\n"
  17912.    "      (declare (in) vec4 P))\n"
  17913.    "    ())\n"
  17914.    "  (signature uvec4\n"
  17915.    "    (parameters\n"
  17916.    "      (declare (in) usampler2D sampler)\n"
  17917.    "      (declare (in) vec4 P))\n"
  17918.    "    ())\n"
  17919.    "  (signature vec4\n"
  17920.    "    (parameters\n"
  17921.    "      (declare (in) sampler3D sampler)\n"
  17922.    "      (declare (in) vec4 P))\n"
  17923.    "    ())\n"
  17924.    "  (signature ivec4\n"
  17925.    "    (parameters\n"
  17926.    "      (declare (in) isampler3D sampler)\n"
  17927.    "      (declare (in) vec4 P))\n"
  17928.    "    ())\n"
  17929.    "  (signature uvec4\n"
  17930.    "    (parameters\n"
  17931.    "      (declare (in) usampler3D sampler)\n"
  17932.    "      (declare (in) vec4 P))\n"
  17933.    "    ())\n"
  17934.    "  (signature float\n"
  17935.    "    (parameters\n"
  17936.    "      (declare (in) sampler2DShadow sampler)\n"
  17937.    "      (declare (in) vec4 P))\n"
  17938.    "    ()))\n"
  17939.    "(function textureLod\n"
  17940.    "  (signature vec4\n"
  17941.    "    (parameters\n"
  17942.    "      (declare (in) sampler2D sampler)\n"
  17943.    "      (declare (in) vec2 P)\n"
  17944.    "      (declare (in) float lod))\n"
  17945.    "    ())\n"
  17946.    "  (signature ivec4\n"
  17947.    "    (parameters\n"
  17948.    "      (declare (in) isampler2D sampler)\n"
  17949.    "      (declare (in) vec2 P)\n"
  17950.    "      (declare (in) float lod))\n"
  17951.    "    ())\n"
  17952.    "  (signature uvec4\n"
  17953.    "    (parameters\n"
  17954.    "      (declare (in) usampler2D sampler)\n"
  17955.    "      (declare (in) vec2 P)\n"
  17956.    "      (declare (in) float lod))\n"
  17957.    "    ())\n"
  17958.    "  (signature vec4\n"
  17959.    "    (parameters\n"
  17960.    "      (declare (in) sampler3D sampler)\n"
  17961.    "      (declare (in) vec3 P)\n"
  17962.    "      (declare (in) float lod))\n"
  17963.    "    ())\n"
  17964.    "  (signature ivec4\n"
  17965.    "    (parameters\n"
  17966.    "      (declare (in) isampler3D sampler)\n"
  17967.    "      (declare (in) vec3 P)\n"
  17968.    "      (declare (in) float lod))\n"
  17969.    "    ())\n"
  17970.    "  (signature uvec4\n"
  17971.    "    (parameters\n"
  17972.    "      (declare (in) usampler3D sampler)\n"
  17973.    "      (declare (in) vec3 P)\n"
  17974.    "      (declare (in) float lod))\n"
  17975.    "    ())\n"
  17976.    "  (signature vec4\n"
  17977.    "    (parameters\n"
  17978.    "      (declare (in) samplerCube sampler)\n"
  17979.    "      (declare (in) vec3 P)\n"
  17980.    "      (declare (in) float lod))\n"
  17981.    "    ())\n"
  17982.    "  (signature ivec4\n"
  17983.    "    (parameters\n"
  17984.    "      (declare (in) isamplerCube sampler)\n"
  17985.    "      (declare (in) vec3 P)\n"
  17986.    "      (declare (in) float lod))\n"
  17987.    "    ())\n"
  17988.    "  (signature uvec4\n"
  17989.    "    (parameters\n"
  17990.    "      (declare (in) usamplerCube sampler)\n"
  17991.    "      (declare (in) vec3 P)\n"
  17992.    "      (declare (in) float lod))\n"
  17993.    "    ())\n"
  17994.    "  (signature float\n"
  17995.    "    (parameters\n"
  17996.    "      (declare (in) sampler2DShadow sampler)\n"
  17997.    "      (declare (in) vec3 P)\n"
  17998.    "      (declare (in) float lod))\n"
  17999.    "    ())\n"
  18000.    "  (signature vec4\n"
  18001.    "    (parameters\n"
  18002.    "      (declare (in) sampler2DArray sampler)\n"
  18003.    "      (declare (in) vec3 P)\n"
  18004.    "      (declare (in) float lod))\n"
  18005.    "    ())\n"
  18006.    "  (signature ivec4\n"
  18007.    "    (parameters\n"
  18008.    "      (declare (in) isampler2DArray sampler)\n"
  18009.    "      (declare (in) vec3 P)\n"
  18010.    "      (declare (in) float lod))\n"
  18011.    "    ())\n"
  18012.    "  (signature uvec4\n"
  18013.    "    (parameters\n"
  18014.    "      (declare (in) usampler2DArray sampler)\n"
  18015.    "      (declare (in) vec3 P)\n"
  18016.    "      (declare (in) float lod))\n"
  18017.    "    ()))\n"
  18018.    "(function textureOffset\n"
  18019.    "  (signature vec4\n"
  18020.    "    (parameters\n"
  18021.    "      (declare (in) sampler2D sampler)\n"
  18022.    "      (declare (in) vec2 P)\n"
  18023.    "      (declare (in) ivec2 offset))\n"
  18024.    "    ())\n"
  18025.    "  (signature ivec4\n"
  18026.    "    (parameters\n"
  18027.    "      (declare (in) isampler2D sampler)\n"
  18028.    "      (declare (in) vec2 P)\n"
  18029.    "      (declare (in) ivec2 offset))\n"
  18030.    "    ())\n"
  18031.    "  (signature uvec4\n"
  18032.    "    (parameters\n"
  18033.    "      (declare (in) usampler2D sampler)\n"
  18034.    "      (declare (in) vec2 P)\n"
  18035.    "      (declare (in) ivec2 offset))\n"
  18036.    "    ())\n"
  18037.    "  (signature vec4\n"
  18038.    "    (parameters\n"
  18039.    "      (declare (in) sampler3D sampler)\n"
  18040.    "      (declare (in) vec3 P)\n"
  18041.    "      (declare (in) ivec3 offset))\n"
  18042.    "    ())\n"
  18043.    "  (signature ivec4\n"
  18044.    "    (parameters\n"
  18045.    "      (declare (in) isampler3D sampler)\n"
  18046.    "      (declare (in) vec3 P)\n"
  18047.    "      (declare (in) ivec3 offset))\n"
  18048.    "    ())\n"
  18049.    "  (signature uvec4\n"
  18050.    "    (parameters\n"
  18051.    "      (declare (in) usampler3D sampler)\n"
  18052.    "      (declare (in) vec3 P)\n"
  18053.    "      (declare (in) ivec3 offset))\n"
  18054.    "    ())\n"
  18055.    "  (signature float\n"
  18056.    "    (parameters\n"
  18057.    "      (declare (in) sampler2DShadow sampler)\n"
  18058.    "      (declare (in) vec3 P)\n"
  18059.    "      (declare (in) ivec2 offset))\n"
  18060.    "    ())\n"
  18061.    "  (signature vec4\n"
  18062.    "    (parameters\n"
  18063.    "      (declare (in) sampler2DArray sampler)\n"
  18064.    "      (declare (in) vec3 P)\n"
  18065.    "      (declare (in) ivec2 offset))\n"
  18066.    "    ())\n"
  18067.    "  (signature ivec4\n"
  18068.    "    (parameters\n"
  18069.    "      (declare (in) isampler2DArray sampler)\n"
  18070.    "      (declare (in) vec3 P)\n"
  18071.    "      (declare (in) ivec2 offset))\n"
  18072.    "    ())\n"
  18073.    "  (signature uvec4\n"
  18074.    "    (parameters\n"
  18075.    "      (declare (in) usampler2DArray sampler)\n"
  18076.    "      (declare (in) vec3 P)\n"
  18077.    "      (declare (in) ivec2 offset))\n"
  18078.    "    ()))\n"
  18079.    "(function texelFetch\n"
  18080.    "  (signature vec4\n"
  18081.    "    (parameters\n"
  18082.    "      (declare (in) sampler2D sampler)\n"
  18083.    "      (declare (in) ivec2 P)\n"
  18084.    "      (declare (in) int lod))\n"
  18085.    "    ())\n"
  18086.    "  (signature ivec4\n"
  18087.    "    (parameters\n"
  18088.    "      (declare (in) isampler2D sampler)\n"
  18089.    "      (declare (in) ivec2 P)\n"
  18090.    "      (declare (in) int lod))\n"
  18091.    "    ())\n"
  18092.    "  (signature uvec4\n"
  18093.    "    (parameters\n"
  18094.    "      (declare (in) usampler2D sampler)\n"
  18095.    "      (declare (in) ivec2 P)\n"
  18096.    "      (declare (in) int lod))\n"
  18097.    "    ())\n"
  18098.    "  (signature vec4\n"
  18099.    "    (parameters\n"
  18100.    "      (declare (in) sampler3D sampler)\n"
  18101.    "      (declare (in) ivec3 P)\n"
  18102.    "      (declare (in) int lod))\n"
  18103.    "    ())\n"
  18104.    "  (signature ivec4\n"
  18105.    "    (parameters\n"
  18106.    "      (declare (in) isampler3D sampler)\n"
  18107.    "      (declare (in) ivec3 P)\n"
  18108.    "      (declare (in) int lod))\n"
  18109.    "    ())\n"
  18110.    "  (signature uvec4\n"
  18111.    "    (parameters\n"
  18112.    "      (declare (in) usampler3D sampler)\n"
  18113.    "      (declare (in) ivec3 P)\n"
  18114.    "      (declare (in) int lod))\n"
  18115.    "    ())\n"
  18116.    "  (signature vec4\n"
  18117.    "    (parameters\n"
  18118.    "      (declare (in) sampler2DArray sampler)\n"
  18119.    "      (declare (in) ivec3 P)\n"
  18120.    "      (declare (in) int lod))\n"
  18121.    "    ())\n"
  18122.    "  (signature ivec4\n"
  18123.    "    (parameters\n"
  18124.    "      (declare (in) isampler2DArray sampler)\n"
  18125.    "      (declare (in) ivec3 P)\n"
  18126.    "      (declare (in) int lod))\n"
  18127.    "    ())\n"
  18128.    "  (signature uvec4\n"
  18129.    "    (parameters\n"
  18130.    "      (declare (in) usampler2DArray sampler)\n"
  18131.    "      (declare (in) ivec3 P)\n"
  18132.    "      (declare (in) int lod))\n"
  18133.    "    ()))\n"
  18134.    "(function texelFetchOffset\n"
  18135.    "  (signature vec4\n"
  18136.    "    (parameters\n"
  18137.    "      (declare (in) sampler2D sampler)\n"
  18138.    "      (declare (in) ivec2 P)\n"
  18139.    "      (declare (in) int lod)\n"
  18140.    "      (declare (in) ivec2 offset))\n"
  18141.    "    ())\n"
  18142.    "  (signature ivec4\n"
  18143.    "    (parameters\n"
  18144.    "      (declare (in) isampler2D sampler)\n"
  18145.    "      (declare (in) ivec2 P)\n"
  18146.    "      (declare (in) int lod)\n"
  18147.    "      (declare (in) ivec2 offset))\n"
  18148.    "    ())\n"
  18149.    "  (signature uvec4\n"
  18150.    "    (parameters\n"
  18151.    "      (declare (in) usampler2D sampler)\n"
  18152.    "      (declare (in) ivec2 P)\n"
  18153.    "      (declare (in) int lod)\n"
  18154.    "      (declare (in) ivec2 offset))\n"
  18155.    "    ())\n"
  18156.    "  (signature vec4\n"
  18157.    "    (parameters\n"
  18158.    "      (declare (in) sampler3D sampler)\n"
  18159.    "      (declare (in) ivec3 P)\n"
  18160.    "      (declare (in) int lod)\n"
  18161.    "      (declare (in) ivec3 offset))\n"
  18162.    "    ())\n"
  18163.    "  (signature ivec4\n"
  18164.    "    (parameters\n"
  18165.    "      (declare (in) isampler3D sampler)\n"
  18166.    "      (declare (in) ivec3 P)\n"
  18167.    "      (declare (in) int lod)\n"
  18168.    "      (declare (in) ivec3 offset))\n"
  18169.    "    ())\n"
  18170.    "  (signature uvec4\n"
  18171.    "    (parameters\n"
  18172.    "      (declare (in) usampler3D sampler)\n"
  18173.    "      (declare (in) ivec3 P)\n"
  18174.    "      (declare (in) int lod)\n"
  18175.    "      (declare (in) ivec3 offset))\n"
  18176.    "    ())\n"
  18177.    "  (signature vec4\n"
  18178.    "    (parameters\n"
  18179.    "      (declare (in) sampler2DArray sampler)\n"
  18180.    "      (declare (in) ivec3 P)\n"
  18181.    "      (declare (in) int lod)\n"
  18182.    "      (declare (in) ivec2 offset))\n"
  18183.    "    ())\n"
  18184.    "  (signature ivec4\n"
  18185.    "    (parameters\n"
  18186.    "      (declare (in) isampler2DArray sampler)\n"
  18187.    "      (declare (in) ivec3 P)\n"
  18188.    "      (declare (in) int lod)\n"
  18189.    "      (declare (in) ivec2 offset))\n"
  18190.    "    ())\n"
  18191.    "  (signature uvec4\n"
  18192.    "    (parameters\n"
  18193.    "      (declare (in) usampler2DArray sampler)\n"
  18194.    "      (declare (in) ivec3 P)\n"
  18195.    "      (declare (in) int lod)\n"
  18196.    "      (declare (in) ivec2 offset))\n"
  18197.    "    ()))\n"
  18198.    "(function textureProjOffset\n"
  18199.    "  (signature vec4\n"
  18200.    "    (parameters\n"
  18201.    "      (declare (in) sampler2D sampler)\n"
  18202.    "      (declare (in) vec3 P)\n"
  18203.    "      (declare (in) ivec2 offset))\n"
  18204.    "    ())\n"
  18205.    "  (signature ivec4\n"
  18206.    "    (parameters\n"
  18207.    "      (declare (in) isampler2D sampler)\n"
  18208.    "      (declare (in) vec3 P)\n"
  18209.    "      (declare (in) ivec2 offset))\n"
  18210.    "    ())\n"
  18211.    "  (signature uvec4\n"
  18212.    "    (parameters\n"
  18213.    "      (declare (in) usampler2D sampler)\n"
  18214.    "      (declare (in) vec3 P)\n"
  18215.    "      (declare (in) ivec2 offset))\n"
  18216.    "    ())\n"
  18217.    "  (signature vec4\n"
  18218.    "    (parameters\n"
  18219.    "      (declare (in) sampler2D sampler)\n"
  18220.    "      (declare (in) vec4 P)\n"
  18221.    "      (declare (in) ivec2 offset))\n"
  18222.    "    ())\n"
  18223.    "  (signature ivec4\n"
  18224.    "    (parameters\n"
  18225.    "      (declare (in) isampler2D sampler)\n"
  18226.    "      (declare (in) vec4 P)\n"
  18227.    "      (declare (in) ivec2 offset))\n"
  18228.    "    ())\n"
  18229.    "  (signature uvec4\n"
  18230.    "    (parameters\n"
  18231.    "      (declare (in) usampler2D sampler)\n"
  18232.    "      (declare (in) vec4 P)\n"
  18233.    "      (declare (in) ivec2 offset))\n"
  18234.    "    ())\n"
  18235.    "  (signature vec4\n"
  18236.    "    (parameters\n"
  18237.    "      (declare (in) sampler3D sampler)\n"
  18238.    "      (declare (in) vec4 P)\n"
  18239.    "      (declare (in) ivec3 offset))\n"
  18240.    "    ())\n"
  18241.    "  (signature ivec4\n"
  18242.    "    (parameters\n"
  18243.    "      (declare (in) isampler3D sampler)\n"
  18244.    "      (declare (in) vec4 P)\n"
  18245.    "      (declare (in) ivec3 offset))\n"
  18246.    "    ())\n"
  18247.    "  (signature uvec4\n"
  18248.    "    (parameters\n"
  18249.    "      (declare (in) usampler3D sampler)\n"
  18250.    "      (declare (in) vec4 P)\n"
  18251.    "      (declare (in) ivec3 offset))\n"
  18252.    "    ())\n"
  18253.    "  (signature float\n"
  18254.    "    (parameters\n"
  18255.    "      (declare (in) sampler2DShadow sampler)\n"
  18256.    "      (declare (in) vec4 P)\n"
  18257.    "      (declare (in) ivec2 offset))\n"
  18258.    "    ()))\n"
  18259.    "(function textureLodOffset\n"
  18260.    "  (signature vec4\n"
  18261.    "    (parameters\n"
  18262.    "      (declare (in) sampler2D sampler)\n"
  18263.    "      (declare (in) vec2 P)\n"
  18264.    "      (declare (in) float lod)\n"
  18265.    "      (declare (in) ivec2 offset))\n"
  18266.    "    ())\n"
  18267.    "  (signature ivec4\n"
  18268.    "    (parameters\n"
  18269.    "      (declare (in) isampler2D sampler)\n"
  18270.    "      (declare (in) vec2 P)\n"
  18271.    "      (declare (in) float lod)\n"
  18272.    "      (declare (in) ivec2 offset))\n"
  18273.    "    ())\n"
  18274.    "  (signature uvec4\n"
  18275.    "    (parameters\n"
  18276.    "      (declare (in) usampler2D sampler)\n"
  18277.    "      (declare (in) vec2 P)\n"
  18278.    "      (declare (in) float lod)\n"
  18279.    "      (declare (in) ivec2 offset))\n"
  18280.    "    ())\n"
  18281.    "  (signature vec4\n"
  18282.    "    (parameters\n"
  18283.    "      (declare (in) sampler3D sampler)\n"
  18284.    "      (declare (in) vec3 P)\n"
  18285.    "      (declare (in) float lod)\n"
  18286.    "      (declare (in) ivec3 offset))\n"
  18287.    "    ())\n"
  18288.    "  (signature ivec4\n"
  18289.    "    (parameters\n"
  18290.    "      (declare (in) isampler3D sampler)\n"
  18291.    "      (declare (in) vec3 P)\n"
  18292.    "      (declare (in) float lod)\n"
  18293.    "      (declare (in) ivec3 offset))\n"
  18294.    "    ())\n"
  18295.    "  (signature uvec4\n"
  18296.    "    (parameters\n"
  18297.    "      (declare (in) usampler3D sampler)\n"
  18298.    "      (declare (in) vec3 P)\n"
  18299.    "      (declare (in) float lod)\n"
  18300.    "      (declare (in) ivec3 offset))\n"
  18301.    "    ())\n"
  18302.    "  (signature float\n"
  18303.    "    (parameters\n"
  18304.    "      (declare (in) sampler2DShadow samp)\n"
  18305.    "      (declare (in) vec3 P)\n"
  18306.    "      (declare (in) float lod)\n"
  18307.    "      (declare (in) ivec2 offset))\n"
  18308.    "    ())\n"
  18309.    "  (signature vec4\n"
  18310.    "    (parameters\n"
  18311.    "      (declare (in) sampler2DArray samp)\n"
  18312.    "      (declare (in) vec3 P)\n"
  18313.    "      (declare (in) float lod)\n"
  18314.    "      (declare (in) ivec2 offset))\n"
  18315.    "    ())\n"
  18316.    "  (signature ivec4\n"
  18317.    "    (parameters\n"
  18318.    "      (declare (in) isampler2DArray samp)\n"
  18319.    "      (declare (in) vec3 P)\n"
  18320.    "      (declare (in) float lod)\n"
  18321.    "      (declare (in) ivec2 offset))\n"
  18322.    "    ())\n"
  18323.    "  (signature uvec4\n"
  18324.    "    (parameters\n"
  18325.    "      (declare (in) usampler2DArray samp)\n"
  18326.    "      (declare (in) vec3 P)\n"
  18327.    "      (declare (in) float lod)\n"
  18328.    "      (declare (in) ivec2 offset))\n"
  18329.    "    ()))\n"
  18330.    "(function textureProjLod\n"
  18331.    "  (signature vec4\n"
  18332.    "    (parameters\n"
  18333.    "      (declare (in) sampler2D sampler)\n"
  18334.    "      (declare (in) vec3 P)\n"
  18335.    "      (declare (in) float lod))\n"
  18336.    "    ())\n"
  18337.    "  (signature ivec4\n"
  18338.    "    (parameters\n"
  18339.    "      (declare (in) isampler2D sampler)\n"
  18340.    "      (declare (in) vec3 P)\n"
  18341.    "      (declare (in) float lod))\n"
  18342.    "    ())\n"
  18343.    "  (signature uvec4\n"
  18344.    "    (parameters\n"
  18345.    "      (declare (in) usampler2D sampler)\n"
  18346.    "      (declare (in) vec3 P)\n"
  18347.    "      (declare (in) float lod))\n"
  18348.    "    ())\n"
  18349.    "  (signature vec4\n"
  18350.    "    (parameters\n"
  18351.    "      (declare (in) sampler2D sampler)\n"
  18352.    "      (declare (in) vec4 P)\n"
  18353.    "      (declare (in) float lod))\n"
  18354.    "    ())\n"
  18355.    "  (signature ivec4\n"
  18356.    "    (parameters\n"
  18357.    "      (declare (in) isampler2D sampler)\n"
  18358.    "      (declare (in) vec4 P)\n"
  18359.    "      (declare (in) float lod))\n"
  18360.    "    ())\n"
  18361.    "  (signature uvec4\n"
  18362.    "    (parameters\n"
  18363.    "      (declare (in) usampler2D sampler)\n"
  18364.    "      (declare (in) vec4 P)\n"
  18365.    "      (declare (in) float lod))\n"
  18366.    "    ())\n"
  18367.    "  (signature vec4\n"
  18368.    "    (parameters\n"
  18369.    "      (declare (in) sampler3D sampler)\n"
  18370.    "      (declare (in) vec4 P)\n"
  18371.    "      (declare (in) float lod))\n"
  18372.    "    ())\n"
  18373.    "  (signature ivec4\n"
  18374.    "    (parameters\n"
  18375.    "      (declare (in) isampler3D sampler)\n"
  18376.    "      (declare (in) vec4 P)\n"
  18377.    "      (declare (in) float lod))\n"
  18378.    "    ())\n"
  18379.    "  (signature uvec4\n"
  18380.    "    (parameters\n"
  18381.    "      (declare (in) usampler3D sampler)\n"
  18382.    "      (declare (in) vec4 P)\n"
  18383.    "      (declare (in) float lod))\n"
  18384.    "    ())\n"
  18385.    "  (signature float\n"
  18386.    "    (parameters\n"
  18387.    "      (declare (in) sampler2DShadow sampler)\n"
  18388.    "      (declare (in) vec4 P)\n"
  18389.    "      (declare (in) float lod))\n"
  18390.    "    ()))\n"
  18391.    "(function textureProjLodOffset\n"
  18392.    "  (signature vec4\n"
  18393.    "    (parameters\n"
  18394.    "      (declare (in) sampler2D sampler)\n"
  18395.    "      (declare (in) vec3 P)\n"
  18396.    "      (declare (in) float lod)\n"
  18397.    "      (declare (in) ivec2 offset))\n"
  18398.    "    ())\n"
  18399.    "  (signature ivec4\n"
  18400.    "    (parameters\n"
  18401.    "      (declare (in) isampler2D sampler)\n"
  18402.    "      (declare (in) vec3 P)\n"
  18403.    "      (declare (in) float lod)\n"
  18404.    "      (declare (in) ivec2 offset))\n"
  18405.    "    ())\n"
  18406.    "  (signature uvec4\n"
  18407.    "    (parameters\n"
  18408.    "      (declare (in) usampler2D sampler)\n"
  18409.    "      (declare (in) vec3 P)\n"
  18410.    "      (declare (in) float lod)\n"
  18411.    "      (declare (in) ivec2 offset))\n"
  18412.    "    ())\n"
  18413.    "  (signature vec4\n"
  18414.    "    (parameters\n"
  18415.    "      (declare (in) sampler2D sampler)\n"
  18416.    "      (declare (in) vec4 P)\n"
  18417.    "      (declare (in) float lod)\n"
  18418.    "      (declare (in) ivec2 offset))\n"
  18419.    "    ())\n"
  18420.    "  (signature ivec4\n"
  18421.    "    (parameters\n"
  18422.    "      (declare (in) isampler2D sampler)\n"
  18423.    "      (declare (in) vec4 P)\n"
  18424.    "      (declare (in) float lod)\n"
  18425.    "      (declare (in) ivec2 offset))\n"
  18426.    "    ())\n"
  18427.    "  (signature uvec4\n"
  18428.    "    (parameters\n"
  18429.    "      (declare (in) usampler2D sampler)\n"
  18430.    "      (declare (in) vec4 P)\n"
  18431.    "      (declare (in) float lod)\n"
  18432.    "      (declare (in) ivec2 offset))\n"
  18433.    "    ())\n"
  18434.    "  (signature vec4\n"
  18435.    "    (parameters\n"
  18436.    "      (declare (in) sampler3D sampler)\n"
  18437.    "      (declare (in) vec4 P)\n"
  18438.    "      (declare (in) float lod)\n"
  18439.    "      (declare (in) ivec3 offset))\n"
  18440.    "    ())\n"
  18441.    "  (signature ivec4\n"
  18442.    "    (parameters\n"
  18443.    "      (declare (in) isampler3D sampler)\n"
  18444.    "      (declare (in) vec4 P)\n"
  18445.    "      (declare (in) float lod)\n"
  18446.    "      (declare (in) ivec3 offset))\n"
  18447.    "    ())\n"
  18448.    "  (signature uvec4\n"
  18449.    "    (parameters\n"
  18450.    "      (declare (in) usampler3D sampler)\n"
  18451.    "      (declare (in) vec4 P)\n"
  18452.    "      (declare (in) float lod)\n"
  18453.    "      (declare (in) ivec3 offset))\n"
  18454.    "    ())\n"
  18455.    "  (signature float\n"
  18456.    "    (parameters\n"
  18457.    "      (declare (in) sampler2DShadow s)\n"
  18458.    "      (declare (in) vec4 P)\n"
  18459.    "      (declare (in) float lod)\n"
  18460.    "      (declare (in) ivec2 offset))\n"
  18461.    "    ()))\n"
  18462.    "(function textureGrad\n"
  18463.    "  (signature vec4\n"
  18464.    "    (parameters\n"
  18465.    "      (declare (in) sampler2D sampler)\n"
  18466.    "      (declare (in) vec2 P)\n"
  18467.    "      (declare (in) vec2 dPdx)\n"
  18468.    "      (declare (in) vec2 dPdy))\n"
  18469.    "    ())\n"
  18470.    "  (signature ivec4\n"
  18471.    "    (parameters\n"
  18472.    "      (declare (in) isampler2D sampler)\n"
  18473.    "      (declare (in) vec2 P)\n"
  18474.    "      (declare (in) vec2 dPdx)\n"
  18475.    "      (declare (in) vec2 dPdy))\n"
  18476.    "    ())\n"
  18477.    "  (signature uvec4\n"
  18478.    "    (parameters\n"
  18479.    "      (declare (in) usampler2D sampler)\n"
  18480.    "      (declare (in) vec2 P)\n"
  18481.    "      (declare (in) vec2 dPdx)\n"
  18482.    "      (declare (in) vec2 dPdy))\n"
  18483.    "    ())\n"
  18484.    "  (signature vec4\n"
  18485.    "    (parameters\n"
  18486.    "      (declare (in) sampler3D sampler)\n"
  18487.    "      (declare (in) vec3 P)\n"
  18488.    "      (declare (in) vec3 dPdx)\n"
  18489.    "      (declare (in) vec3 dPdy))\n"
  18490.    "    ())\n"
  18491.    "  (signature ivec4\n"
  18492.    "    (parameters\n"
  18493.    "      (declare (in) isampler3D sampler)\n"
  18494.    "      (declare (in) vec3 P)\n"
  18495.    "      (declare (in) vec3 dPdx)\n"
  18496.    "      (declare (in) vec3 dPdy))\n"
  18497.    "    ())\n"
  18498.    "  (signature uvec4\n"
  18499.    "    (parameters\n"
  18500.    "      (declare (in) usampler3D sampler)\n"
  18501.    "      (declare (in) vec3 P)\n"
  18502.    "      (declare (in) vec3 dPdx)\n"
  18503.    "      (declare (in) vec3 dPdy))\n"
  18504.    "    ())\n"
  18505.    "  (signature vec4\n"
  18506.    "    (parameters\n"
  18507.    "      (declare (in) samplerCube sampler)\n"
  18508.    "      (declare (in) vec3 P)\n"
  18509.    "      (declare (in) vec3 dPdx)\n"
  18510.    "      (declare (in) vec3 dPdy))\n"
  18511.    "    ())\n"
  18512.    "  (signature ivec4\n"
  18513.    "    (parameters\n"
  18514.    "      (declare (in) isamplerCube sampler)\n"
  18515.    "      (declare (in) vec3 P)\n"
  18516.    "      (declare (in) vec3 dPdx)\n"
  18517.    "      (declare (in) vec3 dPdy))\n"
  18518.    "    ())\n"
  18519.    "  (signature uvec4\n"
  18520.    "    (parameters\n"
  18521.    "      (declare (in) usamplerCube sampler)\n"
  18522.    "      (declare (in) vec3 P)\n"
  18523.    "      (declare (in) vec3 dPdx)\n"
  18524.    "      (declare (in) vec3 dPdy))\n"
  18525.    "    ())\n"
  18526.    "  (signature float\n"
  18527.    "    (parameters\n"
  18528.    "      (declare (in) sampler2DShadow sampler)\n"
  18529.    "      (declare (in) vec3 P)\n"
  18530.    "      (declare (in) vec2 dPdx)\n"
  18531.    "      (declare (in) vec2 dPdy))\n"
  18532.    "    ())\n"
  18533.    "  (signature float\n"
  18534.    "    (parameters\n"
  18535.    "      (declare (in) samplerCubeShadow sampler)\n"
  18536.    "      (declare (in) vec4 P)\n"
  18537.    "      (declare (in) vec3 dPdx)\n"
  18538.    "      (declare (in) vec3 dPdy))\n"
  18539.    "    ())\n"
  18540.    "  (signature vec4\n"
  18541.    "    (parameters\n"
  18542.    "      (declare (in) sampler2DArray sampler)\n"
  18543.    "      (declare (in) vec3 P)\n"
  18544.    "      (declare (in) vec2 dPdx)\n"
  18545.    "      (declare (in) vec2 dPdy))\n"
  18546.    "    ())\n"
  18547.    "  (signature ivec4\n"
  18548.    "    (parameters\n"
  18549.    "      (declare (in) isampler2DArray sampler)\n"
  18550.    "      (declare (in) vec3 P)\n"
  18551.    "      (declare (in) vec2 dPdx)\n"
  18552.    "      (declare (in) vec2 dPdy))\n"
  18553.    "    ())\n"
  18554.    "  (signature uvec4\n"
  18555.    "    (parameters\n"
  18556.    "      (declare (in) usampler2DArray sampler)\n"
  18557.    "      (declare (in) vec3 P)\n"
  18558.    "      (declare (in) vec2 dPdx)\n"
  18559.    "      (declare (in) vec2 dPdy))\n"
  18560.    "    ())\n"
  18561.    "  (signature float\n"
  18562.    "    (parameters\n"
  18563.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  18564.    "      (declare (in) vec4 P)\n"
  18565.    "      (declare (in) vec2 dPdx)\n"
  18566.    "      (declare (in) vec2 dPdy))\n"
  18567.    "    ()))\n"
  18568.    "(function textureGradOffset\n"
  18569.    "  (signature vec4\n"
  18570.    "    (parameters\n"
  18571.    "      (declare (in) sampler2D s)\n"
  18572.    "      (declare (in) vec2 P)\n"
  18573.    "      (declare (in) vec2 dx)\n"
  18574.    "      (declare (in) vec2 dy)\n"
  18575.    "      (declare (in) ivec2 offset))\n"
  18576.    "    ())\n"
  18577.    "  (signature ivec4\n"
  18578.    "    (parameters\n"
  18579.    "      (declare (in) isampler2D s)\n"
  18580.    "      (declare (in) vec2 P)\n"
  18581.    "      (declare (in) vec2 dx)\n"
  18582.    "      (declare (in) vec2 dy)\n"
  18583.    "      (declare (in) ivec2 offset))\n"
  18584.    "    ())\n"
  18585.    "  (signature uvec4\n"
  18586.    "    (parameters\n"
  18587.    "      (declare (in) usampler2D s)\n"
  18588.    "      (declare (in) vec2 P)\n"
  18589.    "      (declare (in) vec2 dx)\n"
  18590.    "      (declare (in) vec2 dy)\n"
  18591.    "      (declare (in) ivec2 offset))\n"
  18592.    "    ())\n"
  18593.    "  (signature vec4\n"
  18594.    "    (parameters\n"
  18595.    "      (declare (in) sampler3D s)\n"
  18596.    "      (declare (in) vec3 P)\n"
  18597.    "      (declare (in) vec3 dx)\n"
  18598.    "      (declare (in) vec3 dy)\n"
  18599.    "      (declare (in) ivec3 offset))\n"
  18600.    "    ())\n"
  18601.    "  (signature ivec4\n"
  18602.    "    (parameters\n"
  18603.    "      (declare (in) isampler3D s)\n"
  18604.    "      (declare (in) vec3 P)\n"
  18605.    "      (declare (in) vec3 dx)\n"
  18606.    "      (declare (in) vec3 dy)\n"
  18607.    "      (declare (in) ivec3 offset))\n"
  18608.    "    ())\n"
  18609.    "  (signature uvec4\n"
  18610.    "    (parameters\n"
  18611.    "      (declare (in) usampler3D s)\n"
  18612.    "      (declare (in) vec3 P)\n"
  18613.    "      (declare (in) vec3 dx)\n"
  18614.    "      (declare (in) vec3 dy)\n"
  18615.    "      (declare (in) ivec3 offset))\n"
  18616.    "    ())\n"
  18617.    "  (signature float\n"
  18618.    "    (parameters\n"
  18619.    "      (declare (in) sampler2DShadow s)\n"
  18620.    "      (declare (in) vec3 P)\n"
  18621.    "      (declare (in) vec2 dx)\n"
  18622.    "      (declare (in) vec2 dy)\n"
  18623.    "      (declare (in) ivec2 off))\n"
  18624.    "    ())\n"
  18625.    "  (signature vec4\n"
  18626.    "    (parameters\n"
  18627.    "      (declare (in) sampler2DArray s)\n"
  18628.    "      (declare (in) vec3 P)\n"
  18629.    "      (declare (in) vec2 dx)\n"
  18630.    "      (declare (in) vec2 dy)\n"
  18631.    "      (declare (in) ivec2 off))\n"
  18632.    "    ())\n"
  18633.    "  (signature ivec4\n"
  18634.    "    (parameters\n"
  18635.    "      (declare (in) isampler2DArray s)\n"
  18636.    "      (declare (in) vec3 P)\n"
  18637.    "      (declare (in) vec2 dx)\n"
  18638.    "      (declare (in) vec2 dy)\n"
  18639.    "      (declare (in) ivec2 off))\n"
  18640.    "    ())\n"
  18641.    "  (signature uvec4\n"
  18642.    "    (parameters\n"
  18643.    "      (declare (in) usampler2DArray s)\n"
  18644.    "      (declare (in) vec3 P)\n"
  18645.    "      (declare (in) vec2 dx)\n"
  18646.    "      (declare (in) vec2 dy)\n"
  18647.    "      (declare (in) ivec2 off))\n"
  18648.    "    ())\n"
  18649.    "  (signature float\n"
  18650.    "    (parameters\n"
  18651.    "      (declare (in) sampler2DArrayShadow s)\n"
  18652.    "      (declare (in) vec4 P)\n"
  18653.    "      (declare (in) vec2 dx)\n"
  18654.    "      (declare (in) vec2 dy)\n"
  18655.    "      (declare (in) ivec2 o))\n"
  18656.    "    ()))\n"
  18657.    "(function textureProjGrad\n"
  18658.    "  (signature vec4\n"
  18659.    "    (parameters\n"
  18660.    "      (declare (in) sampler2D sampler)\n"
  18661.    "      (declare (in) vec3 P)\n"
  18662.    "      (declare (in) vec2 dPdx)\n"
  18663.    "      (declare (in) vec2 dPdy))\n"
  18664.    "    ())\n"
  18665.    "  (signature ivec4\n"
  18666.    "    (parameters\n"
  18667.    "      (declare (in) isampler2D sampler)\n"
  18668.    "      (declare (in) vec3 P)\n"
  18669.    "      (declare (in) vec2 dPdx)\n"
  18670.    "      (declare (in) vec2 dPdy))\n"
  18671.    "    ())\n"
  18672.    "  (signature uvec4\n"
  18673.    "    (parameters\n"
  18674.    "      (declare (in) usampler2D sampler)\n"
  18675.    "      (declare (in) vec3 P)\n"
  18676.    "      (declare (in) vec2 dPdx)\n"
  18677.    "      (declare (in) vec2 dPdy))\n"
  18678.    "    ())\n"
  18679.    "  (signature vec4\n"
  18680.    "    (parameters\n"
  18681.    "      (declare (in) sampler2D sampler)\n"
  18682.    "      (declare (in) vec4 P)\n"
  18683.    "      (declare (in) vec2 dPdx)\n"
  18684.    "      (declare (in) vec2 dPdy))\n"
  18685.    "    ())\n"
  18686.    "  (signature ivec4\n"
  18687.    "    (parameters\n"
  18688.    "      (declare (in) isampler2D sampler)\n"
  18689.    "      (declare (in) vec4 P)\n"
  18690.    "      (declare (in) vec2 dPdx)\n"
  18691.    "      (declare (in) vec2 dPdy))\n"
  18692.    "    ())\n"
  18693.    "  (signature uvec4\n"
  18694.    "    (parameters\n"
  18695.    "      (declare (in) usampler2D sampler)\n"
  18696.    "      (declare (in) vec4 P)\n"
  18697.    "      (declare (in) vec2 dPdx)\n"
  18698.    "      (declare (in) vec2 dPdy))\n"
  18699.    "    ())\n"
  18700.    "  (signature vec4\n"
  18701.    "    (parameters\n"
  18702.    "      (declare (in) sampler3D sampler)\n"
  18703.    "      (declare (in) vec4 P)\n"
  18704.    "      (declare (in) vec3 dPdx)\n"
  18705.    "      (declare (in) vec3 dPdy))\n"
  18706.    "    ())\n"
  18707.    "  (signature ivec4\n"
  18708.    "    (parameters\n"
  18709.    "      (declare (in) isampler3D sampler)\n"
  18710.    "      (declare (in) vec4 P)\n"
  18711.    "      (declare (in) vec3 dPdx)\n"
  18712.    "      (declare (in) vec3 dPdy))\n"
  18713.    "    ())\n"
  18714.    "  (signature uvec4\n"
  18715.    "    (parameters\n"
  18716.    "      (declare (in) usampler3D sampler)\n"
  18717.    "      (declare (in) vec4 P)\n"
  18718.    "      (declare (in) vec3 dPdx)\n"
  18719.    "      (declare (in) vec3 dPdy))\n"
  18720.    "    ())\n"
  18721.    "  (signature float\n"
  18722.    "    (parameters\n"
  18723.    "      (declare (in) sampler2DShadow sampler)\n"
  18724.    "      (declare (in) vec4 P)\n"
  18725.    "      (declare (in) vec2 dPdx)\n"
  18726.    "      (declare (in) vec2 dPdy))\n"
  18727.    "    ()))\n"
  18728.    "(function textureProjGradOffset\n"
  18729.    "  (signature vec4\n"
  18730.    "    (parameters\n"
  18731.    "      (declare (in) sampler2D s)\n"
  18732.    "      (declare (in) vec3 P)\n"
  18733.    "      (declare (in) vec2 dx)\n"
  18734.    "      (declare (in) vec2 dy)\n"
  18735.    "      (declare (in) ivec2 off))\n"
  18736.    "    ())\n"
  18737.    "  (signature ivec4\n"
  18738.    "    (parameters\n"
  18739.    "      (declare (in) isampler2D s)\n"
  18740.    "      (declare (in) vec3 P)\n"
  18741.    "      (declare (in) vec2 dx)\n"
  18742.    "      (declare (in) vec2 dy)\n"
  18743.    "      (declare (in) ivec2 off))\n"
  18744.    "    ())\n"
  18745.    "  (signature uvec4\n"
  18746.    "    (parameters\n"
  18747.    "      (declare (in) usampler2D s)\n"
  18748.    "      (declare (in) vec3 P)\n"
  18749.    "      (declare (in) vec2 dx)\n"
  18750.    "      (declare (in) vec2 dy)\n"
  18751.    "      (declare (in) ivec2 off))\n"
  18752.    "    ())\n"
  18753.    "  (signature vec4\n"
  18754.    "    (parameters\n"
  18755.    "      (declare (in) sampler2D s)\n"
  18756.    "      (declare (in) vec4 P)\n"
  18757.    "      (declare (in) vec2 dx)\n"
  18758.    "      (declare (in) vec2 dy)\n"
  18759.    "      (declare (in) ivec2 off))\n"
  18760.    "    ())\n"
  18761.    "  (signature ivec4\n"
  18762.    "    (parameters\n"
  18763.    "      (declare (in) isampler2D s)\n"
  18764.    "      (declare (in) vec4 P)\n"
  18765.    "      (declare (in) vec2 dx)\n"
  18766.    "      (declare (in) vec2 dy)\n"
  18767.    "      (declare (in) ivec2 off))\n"
  18768.    "    ())\n"
  18769.    "  (signature uvec4\n"
  18770.    "    (parameters\n"
  18771.    "      (declare (in) usampler2D s)\n"
  18772.    "      (declare (in) vec4 P)\n"
  18773.    "      (declare (in) vec2 dx)\n"
  18774.    "      (declare (in) vec2 dy)\n"
  18775.    "      (declare (in) ivec2 off))\n"
  18776.    "    ())\n"
  18777.    "  (signature vec4\n"
  18778.    "    (parameters\n"
  18779.    "      (declare (in) sampler3D s)\n"
  18780.    "      (declare (in) vec4 P)\n"
  18781.    "      (declare (in) vec3 dx)\n"
  18782.    "      (declare (in) vec3 dy)\n"
  18783.    "      (declare (in) ivec3 off))\n"
  18784.    "    ())\n"
  18785.    "  (signature ivec4\n"
  18786.    "    (parameters\n"
  18787.    "      (declare (in) isampler3D s)\n"
  18788.    "      (declare (in) vec4 P)\n"
  18789.    "      (declare (in) vec3 dx)\n"
  18790.    "      (declare (in) vec3 dy)\n"
  18791.    "      (declare (in) ivec3 off))\n"
  18792.    "    ())\n"
  18793.    "  (signature uvec4\n"
  18794.    "    (parameters\n"
  18795.    "      (declare (in) usampler3D s)\n"
  18796.    "      (declare (in) vec4 P)\n"
  18797.    "      (declare (in) vec3 dx)\n"
  18798.    "      (declare (in) vec3 dy)\n"
  18799.    "      (declare (in) ivec3 off))\n"
  18800.    "    ())\n"
  18801.    "  (signature float\n"
  18802.    "    (parameters\n"
  18803.    "      (declare (in) sampler2DShadow s)\n"
  18804.    "      (declare (in) vec4 P)\n"
  18805.    "      (declare (in) vec2 dx)\n"
  18806.    "      (declare (in) vec2 dy)\n"
  18807.    "      (declare (in) ivec2 o))\n"
  18808.    "    ())))"
  18809. ;
  18810. static const char *functions_for_300es_glsl [] = {
  18811.    builtin_abs,
  18812.    builtin_acos,
  18813.    builtin_acosh,
  18814.    builtin_all,
  18815.    builtin_any,
  18816.    builtin_asin,
  18817.    builtin_asinh,
  18818.    builtin_atan,
  18819.    builtin_atanh,
  18820.    builtin_ceil,
  18821.    builtin_clamp,
  18822.    builtin_cos,
  18823.    builtin_cosh,
  18824.    builtin_cross,
  18825.    builtin_degrees,
  18826.    builtin_determinant,
  18827.    builtin_distance,
  18828.    builtin_dot,
  18829.    builtin_equal,
  18830.    builtin_exp,
  18831.    builtin_exp2,
  18832.    builtin_faceforward,
  18833.    builtin_floatBitsToInt,
  18834.    builtin_floatBitsToUint,
  18835.    builtin_floor,
  18836.    builtin_fract,
  18837.    builtin_greaterThan,
  18838.    builtin_greaterThanEqual,
  18839.    builtin_intBitsToFloat,
  18840.    builtin_inverse,
  18841.    builtin_inversesqrt,
  18842.    builtin_isinf,
  18843.    builtin_isnan,
  18844.    builtin_length,
  18845.    builtin_lessThan,
  18846.    builtin_lessThanEqual,
  18847.    builtin_log,
  18848.    builtin_log2,
  18849.    builtin_matrixCompMult,
  18850.    builtin_max,
  18851.    builtin_min,
  18852.    builtin_mix,
  18853.    builtin_mod,
  18854.    builtin_modf,
  18855.    builtin_normalize,
  18856.    builtin_not,
  18857.    builtin_notEqual,
  18858.    builtin_outerProduct,
  18859.    builtin_packHalf2x16,
  18860.    builtin_packSnorm2x16,
  18861.    builtin_packUnorm2x16,
  18862.    builtin_pow,
  18863.    builtin_radians,
  18864.    builtin_reflect,
  18865.    builtin_refract,
  18866.    builtin_round,
  18867.    builtin_roundEven,
  18868.    builtin_sign,
  18869.    builtin_sin,
  18870.    builtin_sinh,
  18871.    builtin_smoothstep,
  18872.    builtin_sqrt,
  18873.    builtin_step,
  18874.    builtin_tan,
  18875.    builtin_tanh,
  18876.    builtin_texelFetch,
  18877.    builtin_texelFetchOffset,
  18878.    builtin_texture,
  18879.    builtin_textureGrad,
  18880.    builtin_textureGradOffset,
  18881.    builtin_textureLod,
  18882.    builtin_textureLodOffset,
  18883.    builtin_textureOffset,
  18884.    builtin_textureProj,
  18885.    builtin_textureProjGrad,
  18886.    builtin_textureProjGradOffset,
  18887.    builtin_textureProjLod,
  18888.    builtin_textureProjLodOffset,
  18889.    builtin_textureProjOffset,
  18890.    builtin_textureSize,
  18891.    builtin_transpose,
  18892.    builtin_trunc,
  18893.    builtin_uintBitsToFloat,
  18894.    builtin_unpackHalf2x16,
  18895.    builtin_unpackSnorm2x16,
  18896.    builtin_unpackUnorm2x16,
  18897. };
  18898. static const char prototypes_for_ARB_gpu_shader5_glsl[] =
  18899.    "(\n"
  18900.    "(function bitfieldExtract\n"
  18901.    "  (signature int\n"
  18902.    "    (parameters\n"
  18903.    "      (declare (in) int value)\n"
  18904.    "      (declare (in) int offset)\n"
  18905.    "      (declare (in) int bits))\n"
  18906.    "    ())\n"
  18907.    "  (signature ivec2\n"
  18908.    "    (parameters\n"
  18909.    "      (declare (in) ivec2 value)\n"
  18910.    "      (declare (in) int offset)\n"
  18911.    "      (declare (in) int bits))\n"
  18912.    "    ())\n"
  18913.    "  (signature ivec3\n"
  18914.    "    (parameters\n"
  18915.    "      (declare (in) ivec3 value)\n"
  18916.    "      (declare (in) int offset)\n"
  18917.    "      (declare (in) int bits))\n"
  18918.    "    ())\n"
  18919.    "  (signature ivec4\n"
  18920.    "    (parameters\n"
  18921.    "      (declare (in) ivec4 value)\n"
  18922.    "      (declare (in) int offset)\n"
  18923.    "      (declare (in) int bits))\n"
  18924.    "    ())\n"
  18925.    "  (signature uint\n"
  18926.    "    (parameters\n"
  18927.    "      (declare (in) uint value)\n"
  18928.    "      (declare (in) int offset)\n"
  18929.    "      (declare (in) int bits))\n"
  18930.    "    ())\n"
  18931.    "  (signature uvec2\n"
  18932.    "    (parameters\n"
  18933.    "      (declare (in) uvec2 value)\n"
  18934.    "      (declare (in) int offset)\n"
  18935.    "      (declare (in) int bits))\n"
  18936.    "    ())\n"
  18937.    "  (signature uvec3\n"
  18938.    "    (parameters\n"
  18939.    "      (declare (in) uvec3 value)\n"
  18940.    "      (declare (in) int offset)\n"
  18941.    "      (declare (in) int bits))\n"
  18942.    "    ())\n"
  18943.    "  (signature uvec4\n"
  18944.    "    (parameters\n"
  18945.    "      (declare (in) uvec4 value)\n"
  18946.    "      (declare (in) int offset)\n"
  18947.    "      (declare (in) int bits))\n"
  18948.    "    ()))\n"
  18949.    "(function bitfieldInsert\n"
  18950.    "  (signature int\n"
  18951.    "    (parameters\n"
  18952.    "      (declare (in) int base)\n"
  18953.    "      (declare (in) int insert)\n"
  18954.    "      (declare (in) int offset)\n"
  18955.    "      (declare (in) int bits))\n"
  18956.    "    ())\n"
  18957.    "  (signature ivec2\n"
  18958.    "    (parameters\n"
  18959.    "      (declare (in) ivec2 base)\n"
  18960.    "      (declare (in) ivec2 insert)\n"
  18961.    "      (declare (in) int offset)\n"
  18962.    "      (declare (in) int bits))\n"
  18963.    "    ())\n"
  18964.    "  (signature ivec3\n"
  18965.    "    (parameters\n"
  18966.    "      (declare (in) ivec3 base)\n"
  18967.    "      (declare (in) ivec3 insert)\n"
  18968.    "      (declare (in) int offset)\n"
  18969.    "      (declare (in) int bits))\n"
  18970.    "    ())\n"
  18971.    "  (signature ivec4\n"
  18972.    "    (parameters\n"
  18973.    "      (declare (in) ivec4 base)\n"
  18974.    "      (declare (in) ivec4 insert)\n"
  18975.    "      (declare (in) int offset)\n"
  18976.    "      (declare (in) int bits))\n"
  18977.    "    ())\n"
  18978.    "  (signature uint\n"
  18979.    "    (parameters\n"
  18980.    "      (declare (in) uint base)\n"
  18981.    "      (declare (in) uint insert)\n"
  18982.    "      (declare (in) int offset)\n"
  18983.    "      (declare (in) int bits))\n"
  18984.    "    ())\n"
  18985.    "  (signature uvec2\n"
  18986.    "    (parameters\n"
  18987.    "      (declare (in) uvec2 base)\n"
  18988.    "      (declare (in) uvec2 insert)\n"
  18989.    "      (declare (in) int offset)\n"
  18990.    "      (declare (in) int bits))\n"
  18991.    "    ())\n"
  18992.    "  (signature uvec3\n"
  18993.    "    (parameters\n"
  18994.    "      (declare (in) uvec3 base)\n"
  18995.    "      (declare (in) uvec3 insert)\n"
  18996.    "      (declare (in) int offset)\n"
  18997.    "      (declare (in) int bits))\n"
  18998.    "    ())\n"
  18999.    "  (signature uvec4\n"
  19000.    "    (parameters\n"
  19001.    "      (declare (in) uvec4 base)\n"
  19002.    "      (declare (in) uvec4 insert)\n"
  19003.    "      (declare (in) int offset)\n"
  19004.    "      (declare (in) int bits))\n"
  19005.    "    ()))\n"
  19006.    "(function bitfieldReverse\n"
  19007.    "  (signature int\n"
  19008.    "    (parameters\n"
  19009.    "      (declare (in) int value))\n"
  19010.    "    ())\n"
  19011.    "  (signature ivec2\n"
  19012.    "    (parameters\n"
  19013.    "      (declare (in) ivec2 value))\n"
  19014.    "    ())\n"
  19015.    "  (signature ivec3\n"
  19016.    "    (parameters\n"
  19017.    "      (declare (in) ivec3 value))\n"
  19018.    "    ())\n"
  19019.    "  (signature ivec4\n"
  19020.    "    (parameters\n"
  19021.    "      (declare (in) ivec4 value))\n"
  19022.    "    ())\n"
  19023.    "  (signature uint\n"
  19024.    "    (parameters\n"
  19025.    "      (declare (in) uint value))\n"
  19026.    "    ())\n"
  19027.    "  (signature uvec2\n"
  19028.    "    (parameters\n"
  19029.    "      (declare (in) uvec2 value))\n"
  19030.    "    ())\n"
  19031.    "  (signature uvec3\n"
  19032.    "    (parameters\n"
  19033.    "      (declare (in) uvec3 value))\n"
  19034.    "    ())\n"
  19035.    "  (signature uvec4\n"
  19036.    "    (parameters\n"
  19037.    "      (declare (in) uvec4 value))\n"
  19038.    "    ()))\n"
  19039.    "(function bitCount\n"
  19040.    "  (signature int\n"
  19041.    "    (parameters\n"
  19042.    "      (declare (in) int value))\n"
  19043.    "    ())\n"
  19044.    "  (signature ivec2\n"
  19045.    "    (parameters\n"
  19046.    "      (declare (in) ivec2 value))\n"
  19047.    "    ())\n"
  19048.    "  (signature ivec3\n"
  19049.    "    (parameters\n"
  19050.    "      (declare (in) ivec3 value))\n"
  19051.    "    ())\n"
  19052.    "  (signature ivec4\n"
  19053.    "    (parameters\n"
  19054.    "      (declare (in) ivec4 value))\n"
  19055.    "    ())\n"
  19056.    "  (signature int\n"
  19057.    "    (parameters\n"
  19058.    "      (declare (in) uint value))\n"
  19059.    "    ())\n"
  19060.    "  (signature ivec2\n"
  19061.    "    (parameters\n"
  19062.    "      (declare (in) uvec2 value))\n"
  19063.    "    ())\n"
  19064.    "  (signature ivec3\n"
  19065.    "    (parameters\n"
  19066.    "      (declare (in) uvec3 value))\n"
  19067.    "    ())\n"
  19068.    "  (signature ivec4\n"
  19069.    "    (parameters\n"
  19070.    "      (declare (in) uvec4 value))\n"
  19071.    "    ()))\n"
  19072.    "(function findLSB\n"
  19073.    "  (signature int\n"
  19074.    "    (parameters\n"
  19075.    "      (declare (in) int value))\n"
  19076.    "    ())\n"
  19077.    "  (signature ivec2\n"
  19078.    "    (parameters\n"
  19079.    "      (declare (in) ivec2 value))\n"
  19080.    "    ())\n"
  19081.    "  (signature ivec3\n"
  19082.    "    (parameters\n"
  19083.    "      (declare (in) ivec3 value))\n"
  19084.    "    ())\n"
  19085.    "  (signature ivec4\n"
  19086.    "    (parameters\n"
  19087.    "      (declare (in) ivec4 value))\n"
  19088.    "    ())\n"
  19089.    "  (signature int\n"
  19090.    "    (parameters\n"
  19091.    "      (declare (in) uint value))\n"
  19092.    "    ())\n"
  19093.    "  (signature ivec2\n"
  19094.    "    (parameters\n"
  19095.    "      (declare (in) uvec2 value))\n"
  19096.    "    ())\n"
  19097.    "  (signature ivec3\n"
  19098.    "    (parameters\n"
  19099.    "      (declare (in) uvec3 value))\n"
  19100.    "    ())\n"
  19101.    "  (signature ivec4\n"
  19102.    "    (parameters\n"
  19103.    "      (declare (in) uvec4 value))\n"
  19104.    "    ()))\n"
  19105.    "(function findMSB\n"
  19106.    "  (signature int\n"
  19107.    "    (parameters\n"
  19108.    "      (declare (in) int value))\n"
  19109.    "    ())\n"
  19110.    "  (signature ivec2\n"
  19111.    "    (parameters\n"
  19112.    "      (declare (in) ivec2 value))\n"
  19113.    "    ())\n"
  19114.    "  (signature ivec3\n"
  19115.    "    (parameters\n"
  19116.    "      (declare (in) ivec3 value))\n"
  19117.    "    ())\n"
  19118.    "  (signature ivec4\n"
  19119.    "    (parameters\n"
  19120.    "      (declare (in) ivec4 value))\n"
  19121.    "    ())\n"
  19122.    "  (signature int\n"
  19123.    "    (parameters\n"
  19124.    "      (declare (in) uint value))\n"
  19125.    "    ())\n"
  19126.    "  (signature ivec2\n"
  19127.    "    (parameters\n"
  19128.    "      (declare (in) uvec2 value))\n"
  19129.    "    ())\n"
  19130.    "  (signature ivec3\n"
  19131.    "    (parameters\n"
  19132.    "      (declare (in) uvec3 value))\n"
  19133.    "    ())\n"
  19134.    "  (signature ivec4\n"
  19135.    "    (parameters\n"
  19136.    "      (declare (in) uvec4 value))\n"
  19137.    "    ())))"
  19138. ;
  19139. static const char *functions_for_ARB_gpu_shader5_glsl [] = {
  19140.    builtin_bitCount,
  19141.    builtin_bitfieldExtract,
  19142.    builtin_bitfieldInsert,
  19143.    builtin_bitfieldReverse,
  19144.    builtin_findLSB,
  19145.    builtin_findMSB,
  19146. };
  19147. static const char prototypes_for_ARB_shader_bit_encoding_glsl[] =
  19148.    "(\n"
  19149.    "(function floatBitsToInt\n"
  19150.    "  (signature int\n"
  19151.    "    (parameters\n"
  19152.    "      (declare (in) float value))\n"
  19153.    "    ())\n"
  19154.    "  (signature ivec2\n"
  19155.    "    (parameters\n"
  19156.    "      (declare (in) vec2 value))\n"
  19157.    "    ())\n"
  19158.    "  (signature ivec3\n"
  19159.    "    (parameters\n"
  19160.    "      (declare (in) vec3 value))\n"
  19161.    "    ())\n"
  19162.    "  (signature ivec4\n"
  19163.    "    (parameters\n"
  19164.    "      (declare (in) vec4 value))\n"
  19165.    "    ()))\n"
  19166.    "(function floatBitsToUint\n"
  19167.    "  (signature uint\n"
  19168.    "    (parameters\n"
  19169.    "      (declare (in) float value))\n"
  19170.    "    ())\n"
  19171.    "  (signature uvec2\n"
  19172.    "    (parameters\n"
  19173.    "      (declare (in) vec2 value))\n"
  19174.    "    ())\n"
  19175.    "  (signature uvec3\n"
  19176.    "    (parameters\n"
  19177.    "      (declare (in) vec3 value))\n"
  19178.    "    ())\n"
  19179.    "  (signature uvec4\n"
  19180.    "    (parameters\n"
  19181.    "      (declare (in) vec4 value))\n"
  19182.    "    ()))\n"
  19183.    "(function intBitsToFloat\n"
  19184.    "  (signature float\n"
  19185.    "    (parameters\n"
  19186.    "      (declare (in) int value))\n"
  19187.    "    ())\n"
  19188.    "  (signature vec2\n"
  19189.    "    (parameters\n"
  19190.    "      (declare (in) ivec2 value))\n"
  19191.    "    ())\n"
  19192.    "  (signature vec3\n"
  19193.    "    (parameters\n"
  19194.    "      (declare (in) ivec3 value))\n"
  19195.    "    ())\n"
  19196.    "  (signature vec4\n"
  19197.    "    (parameters\n"
  19198.    "      (declare (in) ivec4 value))\n"
  19199.    "    ()))\n"
  19200.    "(function uintBitsToFloat\n"
  19201.    "  (signature float\n"
  19202.    "    (parameters\n"
  19203.    "      (declare (in) uint value))\n"
  19204.    "    ())\n"
  19205.    "  (signature vec2\n"
  19206.    "    (parameters\n"
  19207.    "      (declare (in) uvec2 value))\n"
  19208.    "    ())\n"
  19209.    "  (signature vec3\n"
  19210.    "    (parameters\n"
  19211.    "      (declare (in) uvec3 value))\n"
  19212.    "    ())\n"
  19213.    "  (signature vec4\n"
  19214.    "    (parameters\n"
  19215.    "      (declare (in) uvec4 value))\n"
  19216.    "    ())))"
  19217. ;
  19218. static const char *functions_for_ARB_shader_bit_encoding_glsl [] = {
  19219.    builtin_floatBitsToInt,
  19220.    builtin_floatBitsToUint,
  19221.    builtin_intBitsToFloat,
  19222.    builtin_uintBitsToFloat,
  19223. };
  19224. static const char prototypes_for_ARB_shader_texture_lod_frag[] =
  19225.    "(\n"
  19226.    "(function texture1DLod\n"
  19227.    "  (signature vec4\n"
  19228.    "    (parameters\n"
  19229.    "      (declare (in) sampler1D sampler)\n"
  19230.    "      (declare (in) float coord)\n"
  19231.    "      (declare (in) float lod))\n"
  19232.    "    ()))\n"
  19233.    "(function texture1DProjLod\n"
  19234.    "  (signature vec4\n"
  19235.    "    (parameters\n"
  19236.    "      (declare (in) sampler1D sampler)\n"
  19237.    "      (declare (in) vec2 coord)\n"
  19238.    "      (declare (in) float lod))\n"
  19239.    "    ())\n"
  19240.    "  (signature vec4\n"
  19241.    "    (parameters\n"
  19242.    "      (declare (in) sampler1D sampler)\n"
  19243.    "      (declare (in) vec4 coord)\n"
  19244.    "      (declare (in) float lod))\n"
  19245.    "    ()))\n"
  19246.    "(function texture2DLod\n"
  19247.    "  (signature vec4\n"
  19248.    "    (parameters\n"
  19249.    "      (declare (in) sampler2D sampler)\n"
  19250.    "      (declare (in) vec2 coord)\n"
  19251.    "      (declare (in) float lod))\n"
  19252.    "    ()))\n"
  19253.    "(function texture2DProjLod\n"
  19254.    "  (signature vec4\n"
  19255.    "    (parameters\n"
  19256.    "      (declare (in) sampler2D sampler)\n"
  19257.    "      (declare (in) vec3 coord)\n"
  19258.    "      (declare (in) float lod))\n"
  19259.    "    ())\n"
  19260.    "  (signature vec4\n"
  19261.    "    (parameters\n"
  19262.    "      (declare (in) sampler2D sampler)\n"
  19263.    "      (declare (in) vec4 coord)\n"
  19264.    "      (declare (in) float lod))\n"
  19265.    "    ()))\n"
  19266.    "(function texture3DLod\n"
  19267.    "  (signature vec4\n"
  19268.    "    (parameters\n"
  19269.    "      (declare (in) sampler3D sampler)\n"
  19270.    "      (declare (in) vec3 coord)\n"
  19271.    "      (declare (in) float lod))\n"
  19272.    "    ()))\n"
  19273.    "(function texture3DProjLod\n"
  19274.    "  (signature vec4\n"
  19275.    "    (parameters\n"
  19276.    "      (declare (in) sampler3D sampler)\n"
  19277.    "      (declare (in) vec4 coord)\n"
  19278.    "      (declare (in) float lod))\n"
  19279.    "    ()))\n"
  19280.    "(function textureCubeLod\n"
  19281.    "  (signature vec4\n"
  19282.    "    (parameters\n"
  19283.    "      (declare (in) samplerCube sampler)\n"
  19284.    "      (declare (in) vec3 coord)\n"
  19285.    "      (declare (in) float lod))\n"
  19286.    "    ()))\n"
  19287.    "(function shadow1DLod\n"
  19288.    "  (signature vec4\n"
  19289.    "    (parameters\n"
  19290.    "      (declare (in) sampler1DShadow sampler)\n"
  19291.    "      (declare (in) vec3 coord)\n"
  19292.    "      (declare (in) float lod))\n"
  19293.    "    ()))\n"
  19294.    "(function shadow2DLod\n"
  19295.    "  (signature vec4\n"
  19296.    "    (parameters\n"
  19297.    "      (declare (in) sampler2DShadow sampler)\n"
  19298.    "      (declare (in) vec3 coord)\n"
  19299.    "      (declare (in) float lod))\n"
  19300.    "    ()))\n"
  19301.    "(function shadow1DProjLod\n"
  19302.    "  (signature vec4\n"
  19303.    "    (parameters\n"
  19304.    "      (declare (in) sampler1DShadow sampler)\n"
  19305.    "      (declare (in) vec4 coord)\n"
  19306.    "      (declare (in) float lod))\n"
  19307.    "    ()))\n"
  19308.    "(function shadow2DProjLod\n"
  19309.    "  (signature vec4\n"
  19310.    "    (parameters\n"
  19311.    "      (declare (in) sampler2DShadow sampler)\n"
  19312.    "      (declare (in) vec4 coord)\n"
  19313.    "      (declare (in) float lod))\n"
  19314.    "    ())))"
  19315. ;
  19316. static const char *functions_for_ARB_shader_texture_lod_frag [] = {
  19317.    builtin_shadow1DLod,
  19318.    builtin_shadow1DProjLod,
  19319.    builtin_shadow2DLod,
  19320.    builtin_shadow2DProjLod,
  19321.    builtin_texture1DLod,
  19322.    builtin_texture1DProjLod,
  19323.    builtin_texture2DLod,
  19324.    builtin_texture2DProjLod,
  19325.    builtin_texture3DLod,
  19326.    builtin_texture3DProjLod,
  19327.    builtin_textureCubeLod,
  19328. };
  19329. static const char prototypes_for_ARB_shader_texture_lod_glsl[] =
  19330.    "(\n"
  19331.    "(function texture1DGradARB\n"
  19332.    "  (signature vec4\n"
  19333.    "    (parameters\n"
  19334.    "      (declare (in) sampler1D sampler)\n"
  19335.    "      (declare (in) float P)\n"
  19336.    "      (declare (in) float dPdx)\n"
  19337.    "      (declare (in) float dPdy))\n"
  19338.    "    ()))\n"
  19339.    "(function texture1DProjGradARB\n"
  19340.    "  (signature vec4\n"
  19341.    "    (parameters\n"
  19342.    "      (declare (in) sampler1D sampler)\n"
  19343.    "      (declare (in) vec2 P)\n"
  19344.    "      (declare (in) float dPdx)\n"
  19345.    "      (declare (in) float dPdy))\n"
  19346.    "    ())\n"
  19347.    "  (signature vec4\n"
  19348.    "    (parameters\n"
  19349.    "      (declare (in) sampler1D sampler)\n"
  19350.    "      (declare (in) vec4 P)\n"
  19351.    "      (declare (in) float dPdx)\n"
  19352.    "      (declare (in) float dPdy))\n"
  19353.    "    ()))\n"
  19354.    "(function texture2DGradARB\n"
  19355.    "  (signature vec4\n"
  19356.    "    (parameters\n"
  19357.    "      (declare (in) sampler2D sampler)\n"
  19358.    "      (declare (in) vec2 P)\n"
  19359.    "      (declare (in) vec2 dPdx)\n"
  19360.    "      (declare (in) vec2 dPdy))\n"
  19361.    "    ()))\n"
  19362.    "(function texture2DProjGradARB\n"
  19363.    "  (signature vec4\n"
  19364.    "    (parameters\n"
  19365.    "      (declare (in) sampler2D sampler)\n"
  19366.    "      (declare (in) vec3 P)\n"
  19367.    "      (declare (in) vec2 dPdx)\n"
  19368.    "      (declare (in) vec2 dPdy))\n"
  19369.    "    ())\n"
  19370.    "  (signature vec4\n"
  19371.    "    (parameters\n"
  19372.    "      (declare (in) sampler2D sampler)\n"
  19373.    "      (declare (in) vec4 P)\n"
  19374.    "      (declare (in) vec2 dPdx)\n"
  19375.    "      (declare (in) vec2 dPdy))\n"
  19376.    "    ()))\n"
  19377.    "(function texture3DGradARB\n"
  19378.    "  (signature vec4\n"
  19379.    "    (parameters\n"
  19380.    "      (declare (in) sampler3D sampler)\n"
  19381.    "      (declare (in) vec3 P)\n"
  19382.    "      (declare (in) vec3 dPdx)\n"
  19383.    "      (declare (in) vec3 dPdy))\n"
  19384.    "    ()))\n"
  19385.    "(function texture3DProjGradARB\n"
  19386.    "  (signature vec4\n"
  19387.    "    (parameters\n"
  19388.    "      (declare (in) sampler3D sampler)\n"
  19389.    "      (declare (in) vec4 P)\n"
  19390.    "      (declare (in) vec3 dPdx)\n"
  19391.    "      (declare (in) vec3 dPdy))\n"
  19392.    "    ()))\n"
  19393.    "(function textureCubeGradARB\n"
  19394.    "  (signature vec4\n"
  19395.    "    (parameters\n"
  19396.    "      (declare (in) samplerCube sampler)\n"
  19397.    "      (declare (in) vec3 P)\n"
  19398.    "      (declare (in) vec3 dPdx)\n"
  19399.    "      (declare (in) vec3 dPdy))\n"
  19400.    "    ()))\n"
  19401.    "(function shadow1DGradARB\n"
  19402.    "  (signature vec4\n"
  19403.    "    (parameters\n"
  19404.    "      (declare (in) sampler1DShadow sampler)\n"
  19405.    "      (declare (in) vec3 P)\n"
  19406.    "      (declare (in) float dPdx)\n"
  19407.    "      (declare (in) float dPdy))\n"
  19408.    "    ()))\n"
  19409.    "(function shadow1DProjGradARB\n"
  19410.    "  (signature vec4\n"
  19411.    "    (parameters\n"
  19412.    "      (declare (in) sampler1DShadow sampler)\n"
  19413.    "      (declare (in) vec4 P)\n"
  19414.    "      (declare (in) float dPdx)\n"
  19415.    "      (declare (in) float dPdy))\n"
  19416.    "    ()))\n"
  19417.    "(function shadow2DGradARB\n"
  19418.    "  (signature vec4\n"
  19419.    "    (parameters\n"
  19420.    "      (declare (in) sampler2DShadow sampler)\n"
  19421.    "      (declare (in) vec3 P)\n"
  19422.    "      (declare (in) vec2 dPdx)\n"
  19423.    "      (declare (in) vec2 dPdy))\n"
  19424.    "    ()))\n"
  19425.    "(function shadow2DProjGradARB\n"
  19426.    "  (signature vec4\n"
  19427.    "    (parameters\n"
  19428.    "      (declare (in) sampler2DShadow sampler)\n"
  19429.    "      (declare (in) vec4 P)\n"
  19430.    "      (declare (in) vec2 dPdx)\n"
  19431.    "      (declare (in) vec2 dPdy))\n"
  19432.    "    ()))\n"
  19433.    "(function texture2DRectGradARB\n"
  19434.    "  (signature vec4\n"
  19435.    "    (parameters\n"
  19436.    "      (declare (in) sampler2DRect sampler)\n"
  19437.    "      (declare (in) vec2 P)\n"
  19438.    "      (declare (in) vec2 dPdx)\n"
  19439.    "      (declare (in) vec2 dPdy))\n"
  19440.    "    ()))\n"
  19441.    "(function texture2DRectProjGradARB\n"
  19442.    "  (signature vec4\n"
  19443.    "    (parameters\n"
  19444.    "      (declare (in) sampler2DRect sampler)\n"
  19445.    "      (declare (in) vec3 P)\n"
  19446.    "      (declare (in) vec2 dPdx)\n"
  19447.    "      (declare (in) vec2 dPdy))\n"
  19448.    "    ())\n"
  19449.    "  (signature vec4\n"
  19450.    "    (parameters\n"
  19451.    "      (declare (in) sampler2DRect sampler)\n"
  19452.    "      (declare (in) vec4 P)\n"
  19453.    "      (declare (in) vec2 dPdx)\n"
  19454.    "      (declare (in) vec2 dPdy))\n"
  19455.    "    ()))\n"
  19456.    "(function shadow2DRectGradARB\n"
  19457.    "  (signature vec4\n"
  19458.    "    (parameters\n"
  19459.    "      (declare (in) sampler2DRectShadow sampler)\n"
  19460.    "      (declare (in) vec3 P)\n"
  19461.    "      (declare (in) vec2 dPdx)\n"
  19462.    "      (declare (in) vec2 dPdy))\n"
  19463.    "    ()))\n"
  19464.    "(function shadow2DRectProjGradARB\n"
  19465.    "  (signature vec4\n"
  19466.    "    (parameters\n"
  19467.    "      (declare (in) sampler2DRectShadow sampler)\n"
  19468.    "      (declare (in) vec4 P)\n"
  19469.    "      (declare (in) vec2 dPdx)\n"
  19470.    "      (declare (in) vec2 dPdy))\n"
  19471.    "    ())))"
  19472. ;
  19473. static const char *functions_for_ARB_shader_texture_lod_glsl [] = {
  19474.    builtin_shadow1DGradARB,
  19475.    builtin_shadow1DProjGradARB,
  19476.    builtin_shadow2DGradARB,
  19477.    builtin_shadow2DProjGradARB,
  19478.    builtin_shadow2DRectGradARB,
  19479.    builtin_shadow2DRectProjGradARB,
  19480.    builtin_texture1DGradARB,
  19481.    builtin_texture1DProjGradARB,
  19482.    builtin_texture2DGradARB,
  19483.    builtin_texture2DProjGradARB,
  19484.    builtin_texture2DRectGradARB,
  19485.    builtin_texture2DRectProjGradARB,
  19486.    builtin_texture3DGradARB,
  19487.    builtin_texture3DProjGradARB,
  19488.    builtin_textureCubeGradARB,
  19489. };
  19490. static const char prototypes_for_ARB_shading_language_packing_glsl[] =
  19491.    "(\n"
  19492.    "(function packSnorm2x16\n"
  19493.    "  (signature uint\n"
  19494.    "    (parameters\n"
  19495.    "      (declare (in) vec2 v))\n"
  19496.    "    ()))\n"
  19497.    "(function packUnorm2x16\n"
  19498.    "  (signature uint\n"
  19499.    "    (parameters\n"
  19500.    "      (declare (in) vec2 v))\n"
  19501.    "    ()))\n"
  19502.    "(function packSnorm4x8\n"
  19503.    "  (signature uint\n"
  19504.    "    (parameters\n"
  19505.    "      (declare (in) vec4 v))\n"
  19506.    "    ()))\n"
  19507.    "(function packUnorm4x8\n"
  19508.    "  (signature uint\n"
  19509.    "    (parameters\n"
  19510.    "      (declare (in) vec4 v))\n"
  19511.    "    ()))\n"
  19512.    "(function packHalf2x16\n"
  19513.    "  (signature uint\n"
  19514.    "    (parameters\n"
  19515.    "      (declare (in) vec2 v))\n"
  19516.    "    ()))\n"
  19517.    "(function unpackSnorm2x16\n"
  19518.    "  (signature vec2\n"
  19519.    "    (parameters\n"
  19520.    "      (declare (in) uint p))\n"
  19521.    "    ()))\n"
  19522.    "(function unpackUnorm2x16\n"
  19523.    "  (signature vec2\n"
  19524.    "    (parameters\n"
  19525.    "      (declare (in) uint p))\n"
  19526.    "    ()))\n"
  19527.    "(function unpackSnorm4x8\n"
  19528.    "  (signature vec4\n"
  19529.    "    (parameters\n"
  19530.    "      (declare (in) uint p))\n"
  19531.    "    ()))\n"
  19532.    "(function unpackUnorm4x8\n"
  19533.    "  (signature vec4\n"
  19534.    "    (parameters\n"
  19535.    "      (declare (in) uint p))\n"
  19536.    "    ()))\n"
  19537.    "(function unpackHalf2x16\n"
  19538.    "  (signature vec2\n"
  19539.    "    (parameters\n"
  19540.    "      (declare (in) uint p))\n"
  19541.    "    ())))"
  19542. ;
  19543. static const char *functions_for_ARB_shading_language_packing_glsl [] = {
  19544.    builtin_packHalf2x16,
  19545.    builtin_packSnorm2x16,
  19546.    builtin_packSnorm4x8,
  19547.    builtin_packUnorm2x16,
  19548.    builtin_packUnorm4x8,
  19549.    builtin_unpackHalf2x16,
  19550.    builtin_unpackSnorm2x16,
  19551.    builtin_unpackSnorm4x8,
  19552.    builtin_unpackUnorm2x16,
  19553.    builtin_unpackUnorm4x8,
  19554. };
  19555. static const char prototypes_for_ARB_texture_cube_map_array_frag[] =
  19556.    "(\n"
  19557.    "(function texture\n"
  19558.    "  (signature vec4\n"
  19559.    "    (parameters\n"
  19560.    "      (declare (in) samplerCubeArray sampler)\n"
  19561.    "      (declare (in) vec4 coord)\n"
  19562.    "      (declare (in) float bias))\n"
  19563.    "    ())\n"
  19564.    "  (signature ivec4\n"
  19565.    "    (parameters\n"
  19566.    "      (declare (in) isamplerCubeArray sampler)\n"
  19567.    "      (declare (in) vec4 coord)\n"
  19568.    "      (declare (in) float bias))\n"
  19569.    "    ())\n"
  19570.    "  (signature uvec4\n"
  19571.    "    (parameters\n"
  19572.    "      (declare (in) usamplerCubeArray sampler)\n"
  19573.    "      (declare (in) vec4 coord)\n"
  19574.    "      (declare (in) float bias))\n"
  19575.    "    ())))"
  19576. ;
  19577. static const char *functions_for_ARB_texture_cube_map_array_frag [] = {
  19578.    builtin_texture,
  19579. };
  19580. static const char prototypes_for_ARB_texture_cube_map_array_glsl[] =
  19581.    "(\n"
  19582.    "(function textureSize\n"
  19583.    "  (signature ivec3\n"
  19584.    "    (parameters\n"
  19585.    "      (declare (in) samplerCubeArray sampler)\n"
  19586.    "      (declare (in) int lod))\n"
  19587.    "    ())\n"
  19588.    "  (signature ivec3\n"
  19589.    "    (parameters\n"
  19590.    "      (declare (in) isamplerCubeArray sampler)\n"
  19591.    "      (declare (in) int lod))\n"
  19592.    "    ())\n"
  19593.    "  (signature ivec3\n"
  19594.    "    (parameters\n"
  19595.    "      (declare (in) usamplerCubeArray sampler)\n"
  19596.    "      (declare (in) int lod))\n"
  19597.    "    ())\n"
  19598.    "  (signature ivec3\n"
  19599.    "    (parameters\n"
  19600.    "      (declare (in) samplerCubeArrayShadow sampler)\n"
  19601.    "      (declare (in) int lod))\n"
  19602.    "    ()))\n"
  19603.    "(function texture\n"
  19604.    "  (signature vec4\n"
  19605.    "    (parameters\n"
  19606.    "      (declare (in) samplerCubeArray sampler)\n"
  19607.    "      (declare (in) vec4 coord))\n"
  19608.    "    ())\n"
  19609.    "  (signature ivec4\n"
  19610.    "    (parameters\n"
  19611.    "      (declare (in) isamplerCubeArray sampler)\n"
  19612.    "      (declare (in) vec4 coord))\n"
  19613.    "    ())\n"
  19614.    "  (signature uvec4\n"
  19615.    "    (parameters\n"
  19616.    "      (declare (in) usamplerCubeArray sampler)\n"
  19617.    "      (declare (in) vec4 coord))\n"
  19618.    "    ())\n"
  19619.    "  (signature float\n"
  19620.    "    (parameters\n"
  19621.    "      (declare (in) samplerCubeArrayShadow sampler)\n"
  19622.    "      (declare (in) vec4 P)\n"
  19623.    "      (declare (in) float compare))\n"
  19624.    "    ()))\n"
  19625.    "(function textureGrad\n"
  19626.    "  (signature vec4\n"
  19627.    "    (parameters\n"
  19628.    "      (declare (in) samplerCubeArray sampler)\n"
  19629.    "      (declare (in) vec4 P)\n"
  19630.    "      (declare (in) vec3 dPdx)\n"
  19631.    "      (declare (in) vec3 dPdy))\n"
  19632.    "    ())\n"
  19633.    "  (signature ivec4\n"
  19634.    "    (parameters\n"
  19635.    "      (declare (in) isamplerCubeArray sampler)\n"
  19636.    "      (declare (in) vec4 P)\n"
  19637.    "      (declare (in) vec3 dPdx)\n"
  19638.    "      (declare (in) vec3 dPdy))\n"
  19639.    "    ())\n"
  19640.    "  (signature uvec4\n"
  19641.    "    (parameters\n"
  19642.    "      (declare (in) usamplerCubeArray sampler)\n"
  19643.    "      (declare (in) vec4 P)\n"
  19644.    "      (declare (in) vec3 dPdx)\n"
  19645.    "      (declare (in) vec3 dPdy))\n"
  19646.    "    ()))\n"
  19647.    "(function textureLod\n"
  19648.    "  (signature vec4\n"
  19649.    "    (parameters\n"
  19650.    "      (declare (in) samplerCubeArray sampler)\n"
  19651.    "      (declare (in) vec4 P)\n"
  19652.    "      (declare (in) float lod))\n"
  19653.    "    ())\n"
  19654.    "  (signature ivec4\n"
  19655.    "    (parameters\n"
  19656.    "      (declare (in) isamplerCubeArray sampler)\n"
  19657.    "      (declare (in) vec4 P)\n"
  19658.    "      (declare (in) float lod))\n"
  19659.    "    ())\n"
  19660.    "  (signature uvec4\n"
  19661.    "    (parameters\n"
  19662.    "      (declare (in) usamplerCubeArray sampler)\n"
  19663.    "      (declare (in) vec4 P)\n"
  19664.    "      (declare (in) float lod))\n"
  19665.    "    ())))"
  19666. ;
  19667. static const char *functions_for_ARB_texture_cube_map_array_glsl [] = {
  19668.    builtin_texture,
  19669.    builtin_textureGrad,
  19670.    builtin_textureLod,
  19671.    builtin_textureSize,
  19672. };
  19673. static const char prototypes_for_ARB_texture_multisample_glsl[] =
  19674.    "(\n"
  19675.    "(function textureSize\n"
  19676.    "  (signature ivec2\n"
  19677.    "    (parameters\n"
  19678.    "      (declare (in) sampler2DMS sampler))\n"
  19679.    "    ())\n"
  19680.    "  (signature ivec2\n"
  19681.    "    (parameters\n"
  19682.    "      (declare (in) isampler2DMS sampler))\n"
  19683.    "    ())\n"
  19684.    "  (signature ivec2\n"
  19685.    "    (parameters\n"
  19686.    "      (declare (in) usampler2DMS sampler))\n"
  19687.    "    ())\n"
  19688.    "  (signature ivec3\n"
  19689.    "    (parameters\n"
  19690.    "      (declare (in) sampler2DMSArray sampler))\n"
  19691.    "    ())\n"
  19692.    "  (signature ivec3\n"
  19693.    "    (parameters\n"
  19694.    "      (declare (in) isampler2DMSArray sampler))\n"
  19695.    "    ())\n"
  19696.    "  (signature ivec3\n"
  19697.    "    (parameters\n"
  19698.    "      (declare (in) usampler2DMSArray sampler))\n"
  19699.    "    ()))\n"
  19700.    "(function texelFetch\n"
  19701.    "  (signature vec4\n"
  19702.    "    (parameters\n"
  19703.    "      (declare (in) sampler2DMS sampler)\n"
  19704.    "      (declare (in) ivec2 P)\n"
  19705.    "      (declare (in) int sample))\n"
  19706.    "    ())\n"
  19707.    "  (signature ivec4\n"
  19708.    "    (parameters\n"
  19709.    "      (declare (in) isampler2DMS sampler)\n"
  19710.    "      (declare (in) ivec2 P)\n"
  19711.    "      (declare (in) int sample))\n"
  19712.    "    ())\n"
  19713.    "  (signature uvec4\n"
  19714.    "    (parameters\n"
  19715.    "      (declare (in) usampler2DMS sampler)\n"
  19716.    "      (declare (in) ivec2 P)\n"
  19717.    "      (declare (in) int sample))\n"
  19718.    "    ())\n"
  19719.    "  (signature vec4\n"
  19720.    "    (parameters\n"
  19721.    "      (declare (in) sampler2DMSArray sampler)\n"
  19722.    "      (declare (in) ivec3 P)\n"
  19723.    "      (declare (in) int sample))\n"
  19724.    "    ())\n"
  19725.    "  (signature ivec4\n"
  19726.    "    (parameters\n"
  19727.    "      (declare (in) isampler2DMSArray sampler)\n"
  19728.    "      (declare (in) ivec3 P)\n"
  19729.    "      (declare (in) int sample))\n"
  19730.    "    ())\n"
  19731.    "  (signature uvec4\n"
  19732.    "    (parameters\n"
  19733.    "      (declare (in) usampler2DMSArray sampler)\n"
  19734.    "      (declare (in) ivec3 P)\n"
  19735.    "      (declare (in) int sample))\n"
  19736.    "    ())))"
  19737. ;
  19738. static const char *functions_for_ARB_texture_multisample_glsl [] = {
  19739.    builtin_texelFetch,
  19740.    builtin_textureSize,
  19741. };
  19742. static const char prototypes_for_ARB_texture_query_lod_frag[] =
  19743.    "(\n"
  19744.    "(function textureQueryLOD\n"
  19745.    "  (signature vec2\n"
  19746.    "    (parameters\n"
  19747.    "      (declare (in) sampler1D sampler)\n"
  19748.    "      (declare (in) float coord))\n"
  19749.    "    ())\n"
  19750.    "  (signature vec2\n"
  19751.    "    (parameters\n"
  19752.    "      (declare (in) isampler1D sampler)\n"
  19753.    "      (declare (in) float coord))\n"
  19754.    "    ())\n"
  19755.    "  (signature vec2\n"
  19756.    "    (parameters\n"
  19757.    "      (declare (in) usampler1D sampler)\n"
  19758.    "      (declare (in) float coord))\n"
  19759.    "    ())\n"
  19760.    "  (signature vec2\n"
  19761.    "    (parameters\n"
  19762.    "      (declare (in) sampler2D sampler)\n"
  19763.    "      (declare (in) vec2 coord))\n"
  19764.    "    ())\n"
  19765.    "  (signature vec2\n"
  19766.    "    (parameters\n"
  19767.    "      (declare (in) isampler2D sampler)\n"
  19768.    "      (declare (in) vec2 coord))\n"
  19769.    "    ())\n"
  19770.    "  (signature vec2\n"
  19771.    "    (parameters\n"
  19772.    "      (declare (in) usampler2D sampler)\n"
  19773.    "      (declare (in) vec2 coord))\n"
  19774.    "    ())\n"
  19775.    "  (signature vec2\n"
  19776.    "    (parameters\n"
  19777.    "      (declare (in) sampler3D sampler)\n"
  19778.    "      (declare (in) vec3 coord))\n"
  19779.    "    ())\n"
  19780.    "  (signature vec2\n"
  19781.    "    (parameters\n"
  19782.    "      (declare (in) isampler3D sampler)\n"
  19783.    "      (declare (in) vec3 coord))\n"
  19784.    "    ())\n"
  19785.    "  (signature vec2\n"
  19786.    "    (parameters\n"
  19787.    "      (declare (in) usampler3D sampler)\n"
  19788.    "      (declare (in) vec3 coord))\n"
  19789.    "    ())\n"
  19790.    "  (signature vec2\n"
  19791.    "    (parameters\n"
  19792.    "      (declare (in) samplerCube sampler)\n"
  19793.    "      (declare (in) vec3 coord))\n"
  19794.    "    ())\n"
  19795.    "  (signature vec2\n"
  19796.    "    (parameters\n"
  19797.    "      (declare (in) isamplerCube sampler)\n"
  19798.    "      (declare (in) vec3 coord))\n"
  19799.    "    ())\n"
  19800.    "  (signature vec2\n"
  19801.    "    (parameters\n"
  19802.    "      (declare (in) usamplerCube sampler)\n"
  19803.    "      (declare (in) vec3 coord))\n"
  19804.    "    ())\n"
  19805.    "  (signature vec2\n"
  19806.    "    (parameters\n"
  19807.    "      (declare (in) sampler1DArray sampler)\n"
  19808.    "      (declare (in) float coord))\n"
  19809.    "    ())\n"
  19810.    "  (signature vec2\n"
  19811.    "    (parameters\n"
  19812.    "      (declare (in) isampler1DArray sampler)\n"
  19813.    "      (declare (in) float coord))\n"
  19814.    "    ())\n"
  19815.    "  (signature vec2\n"
  19816.    "    (parameters\n"
  19817.    "      (declare (in) usampler1DArray sampler)\n"
  19818.    "      (declare (in) float coord))\n"
  19819.    "    ())\n"
  19820.    "  (signature vec2\n"
  19821.    "    (parameters\n"
  19822.    "      (declare (in) sampler2DArray sampler)\n"
  19823.    "      (declare (in) vec2 coord))\n"
  19824.    "    ())\n"
  19825.    "  (signature vec2\n"
  19826.    "    (parameters\n"
  19827.    "      (declare (in) isampler2DArray sampler)\n"
  19828.    "      (declare (in) vec2 coord))\n"
  19829.    "    ())\n"
  19830.    "  (signature vec2\n"
  19831.    "    (parameters\n"
  19832.    "      (declare (in) usampler2DArray sampler)\n"
  19833.    "      (declare (in) vec2 coord))\n"
  19834.    "    ())\n"
  19835.    "  (signature vec2\n"
  19836.    "    (parameters\n"
  19837.    "      (declare (in) samplerCubeArray sampler)\n"
  19838.    "      (declare (in) vec3 coord))\n"
  19839.    "    ())\n"
  19840.    "  (signature vec2\n"
  19841.    "    (parameters\n"
  19842.    "      (declare (in) isamplerCubeArray sampler)\n"
  19843.    "      (declare (in) vec3 coord))\n"
  19844.    "    ())\n"
  19845.    "  (signature vec2\n"
  19846.    "    (parameters\n"
  19847.    "      (declare (in) usamplerCubeArray sampler)\n"
  19848.    "      (declare (in) vec3 coord))\n"
  19849.    "    ())\n"
  19850.    "  (signature vec2\n"
  19851.    "    (parameters\n"
  19852.    "      (declare (in) sampler1DShadow sampler)\n"
  19853.    "      (declare (in) float coord))\n"
  19854.    "    ())\n"
  19855.    "  (signature vec2\n"
  19856.    "    (parameters\n"
  19857.    "      (declare (in) sampler2DShadow sampler)\n"
  19858.    "      (declare (in) vec2 coord))\n"
  19859.    "    ())\n"
  19860.    "  (signature vec2\n"
  19861.    "    (parameters\n"
  19862.    "      (declare (in) samplerCubeShadow sampler)\n"
  19863.    "      (declare (in) vec3 coord))\n"
  19864.    "    ())\n"
  19865.    "  (signature vec2\n"
  19866.    "    (parameters\n"
  19867.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  19868.    "      (declare (in) float coord))\n"
  19869.    "    ())\n"
  19870.    "  (signature vec2\n"
  19871.    "    (parameters\n"
  19872.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  19873.    "      (declare (in) vec2 coord))\n"
  19874.    "    ())\n"
  19875.    "  (signature vec2\n"
  19876.    "    (parameters\n"
  19877.    "      (declare (in) samplerCubeArrayShadow sampler)\n"
  19878.    "      (declare (in) vec3 coord))\n"
  19879.    "    ())))"
  19880. ;
  19881. static const char *functions_for_ARB_texture_query_lod_frag [] = {
  19882.    builtin_textureQueryLOD,
  19883. };
  19884. static const char prototypes_for_ARB_texture_rectangle_glsl[] =
  19885.    "(\n"
  19886.    "(function texture2DRect\n"
  19887.    "  (signature vec4\n"
  19888.    "    (parameters\n"
  19889.    "      (declare (in) sampler2DRect sampler)\n"
  19890.    "      (declare (in) vec2 coord))\n"
  19891.    "    ()))\n"
  19892.    "(function texture2DRectProj\n"
  19893.    "  (signature vec4\n"
  19894.    "    (parameters\n"
  19895.    "      (declare (in) sampler2DRect sampler)\n"
  19896.    "      (declare (in) vec3 coord))\n"
  19897.    "    ())\n"
  19898.    "  (signature vec4\n"
  19899.    "    (parameters\n"
  19900.    "      (declare (in) sampler2DRect sampler)\n"
  19901.    "      (declare (in) vec4 coord))\n"
  19902.    "    ()))\n"
  19903.    "(function shadow2DRect\n"
  19904.    "  (signature vec4\n"
  19905.    "    (parameters\n"
  19906.    "      (declare (in) sampler2DRectShadow sampler)\n"
  19907.    "      (declare (in) vec3 coord))\n"
  19908.    "    ()))\n"
  19909.    "(function shadow2DRectProj\n"
  19910.    "  (signature vec4\n"
  19911.    "    (parameters\n"
  19912.    "      (declare (in) sampler2DRectShadow sampler)\n"
  19913.    "      (declare (in) vec4 coord))\n"
  19914.    "    ())))"
  19915. ;
  19916. static const char *functions_for_ARB_texture_rectangle_glsl [] = {
  19917.    builtin_shadow2DRect,
  19918.    builtin_shadow2DRectProj,
  19919.    builtin_texture2DRect,
  19920.    builtin_texture2DRectProj,
  19921. };
  19922. static const char prototypes_for_EXT_texture_array_frag[] =
  19923.    "(\n"
  19924.    "(function texture1DArray\n"
  19925.    "  (signature vec4\n"
  19926.    "    (parameters\n"
  19927.    "      (declare (in) sampler1DArray sampler)\n"
  19928.    "      (declare (in) vec2 coord))\n"
  19929.    "    ())\n"
  19930.    "  (signature vec4\n"
  19931.    "    (parameters\n"
  19932.    "      (declare (in) sampler1DArray sampler)\n"
  19933.    "      (declare (in) vec2 coord)\n"
  19934.    "      (declare (in) float bias))\n"
  19935.    "    ()))\n"
  19936.    "(function texture2DArray\n"
  19937.    "  (signature vec4\n"
  19938.    "    (parameters\n"
  19939.    "      (declare (in) sampler2DArray sampler)\n"
  19940.    "      (declare (in) vec3 coord))\n"
  19941.    "    ())\n"
  19942.    "  (signature vec4\n"
  19943.    "    (parameters\n"
  19944.    "      (declare (in) sampler2DArray sampler)\n"
  19945.    "      (declare (in) vec3 coord)\n"
  19946.    "      (declare (in) float bias))\n"
  19947.    "    ()))\n"
  19948.    "(function shadow1DArray\n"
  19949.    "  (signature vec4\n"
  19950.    "    (parameters\n"
  19951.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  19952.    "      (declare (in) vec3 coord))\n"
  19953.    "    ())\n"
  19954.    "  (signature vec4\n"
  19955.    "    (parameters\n"
  19956.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  19957.    "      (declare (in) vec3 coord)\n"
  19958.    "      (declare (in) float bias))\n"
  19959.    "    ()))\n"
  19960.    "(function shadow2DArray\n"
  19961.    "  (signature vec4\n"
  19962.    "    (parameters\n"
  19963.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  19964.    "      (declare (in) vec4 coord))\n"
  19965.    "    ())))"
  19966. ;
  19967. static const char *functions_for_EXT_texture_array_frag [] = {
  19968.    builtin_shadow1DArray,
  19969.    builtin_shadow2DArray,
  19970.    builtin_texture1DArray,
  19971.    builtin_texture2DArray,
  19972. };
  19973. static const char prototypes_for_EXT_texture_array_vert[] =
  19974.    "(\n"
  19975.    "(function texture1DArray\n"
  19976.    "  (signature vec4\n"
  19977.    "    (parameters\n"
  19978.    "      (declare (in) sampler1DArray sampler)\n"
  19979.    "      (declare (in) vec2 coord))\n"
  19980.    "    ()))\n"
  19981.    "(function texture1DArrayLod\n"
  19982.    "  (signature vec4\n"
  19983.    "    (parameters\n"
  19984.    "      (declare (in) sampler1DArray sampler)\n"
  19985.    "      (declare (in) vec2 coord)\n"
  19986.    "      (declare (in) float lod))\n"
  19987.    "    ()))\n"
  19988.    "(function texture2DArray\n"
  19989.    "  (signature vec4\n"
  19990.    "    (parameters\n"
  19991.    "      (declare (in) sampler2DArray sampler)\n"
  19992.    "      (declare (in) vec3 coord))\n"
  19993.    "    ()))\n"
  19994.    "(function texture2DArrayLod\n"
  19995.    "  (signature vec4\n"
  19996.    "    (parameters\n"
  19997.    "      (declare (in) sampler2DArray sampler)\n"
  19998.    "      (declare (in) vec3 coord)\n"
  19999.    "      (declare (in) float lod))\n"
  20000.    "    ()))\n"
  20001.    "(function shadow1DArray\n"
  20002.    "  (signature vec4\n"
  20003.    "    (parameters\n"
  20004.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  20005.    "      (declare (in) vec3 coord))\n"
  20006.    "    ()))\n"
  20007.    "(function shadow1DArrayLod\n"
  20008.    "  (signature vec4\n"
  20009.    "    (parameters\n"
  20010.    "      (declare (in) sampler1DArrayShadow sampler)\n"
  20011.    "      (declare (in) vec3 coord)\n"
  20012.    "      (declare (in) float lod))\n"
  20013.    "    ()))\n"
  20014.    "(function shadow2DArray\n"
  20015.    "  (signature vec4\n"
  20016.    "    (parameters\n"
  20017.    "      (declare (in) sampler2DArrayShadow sampler)\n"
  20018.    "      (declare (in) vec4 coord))\n"
  20019.    "    ())))"
  20020. ;
  20021. static const char *functions_for_EXT_texture_array_vert [] = {
  20022.    builtin_shadow1DArray,
  20023.    builtin_shadow1DArrayLod,
  20024.    builtin_shadow2DArray,
  20025.    builtin_texture1DArray,
  20026.    builtin_texture1DArrayLod,
  20027.    builtin_texture2DArray,
  20028.    builtin_texture2DArrayLod,
  20029. };
  20030. static const char prototypes_for_OES_EGL_image_external_glsl[] =
  20031.    "(\n"
  20032.    "(function texture2D\n"
  20033.    "  (signature vec4\n"
  20034.    "    (parameters\n"
  20035.    "      (declare (in) samplerExternalOES sampler)\n"
  20036.    "      (declare (in) vec2 coord))\n"
  20037.    "    ()))\n"
  20038.    "(function texture2DProj\n"
  20039.    "  (signature vec4\n"
  20040.    "    (parameters\n"
  20041.    "      (declare (in) samplerExternalOES sampler)\n"
  20042.    "      (declare (in) vec3 coord))\n"
  20043.    "    ())\n"
  20044.    "  (signature vec4\n"
  20045.    "    (parameters\n"
  20046.    "      (declare (in) samplerExternalOES sampler)\n"
  20047.    "      (declare (in) vec4 coord))\n"
  20048.    "    ())))"
  20049. ;
  20050. static const char *functions_for_OES_EGL_image_external_glsl [] = {
  20051.    builtin_texture2D,
  20052.    builtin_texture2DProj,
  20053. };
  20054. static const char prototypes_for_OES_standard_derivatives_frag[] =
  20055.    "(\n"
  20056.    "(function dFdx\n"
  20057.    "  (signature float\n"
  20058.    "    (parameters\n"
  20059.    "      (declare (in) float p))\n"
  20060.    "    ())\n"
  20061.    "  (signature vec2\n"
  20062.    "    (parameters\n"
  20063.    "      (declare (in) vec2 p))\n"
  20064.    "    ())\n"
  20065.    "  (signature vec3\n"
  20066.    "    (parameters\n"
  20067.    "      (declare (in) vec3 p))\n"
  20068.    "    ())\n"
  20069.    "  (signature vec4\n"
  20070.    "    (parameters\n"
  20071.    "      (declare (in) vec4 p))\n"
  20072.    "    ()))\n"
  20073.    "(function dFdy\n"
  20074.    "  (signature float\n"
  20075.    "    (parameters\n"
  20076.    "      (declare (in) float p))\n"
  20077.    "    ())\n"
  20078.    "  (signature vec2\n"
  20079.    "    (parameters\n"
  20080.    "      (declare (in) vec2 p))\n"
  20081.    "    ())\n"
  20082.    "  (signature vec3\n"
  20083.    "    (parameters\n"
  20084.    "      (declare (in) vec3 p))\n"
  20085.    "    ())\n"
  20086.    "  (signature vec4\n"
  20087.    "    (parameters\n"
  20088.    "      (declare (in) vec4 p))\n"
  20089.    "    ()))\n"
  20090.    "(function fwidth\n"
  20091.    "  (signature float\n"
  20092.    "    (parameters\n"
  20093.    "      (declare (in) float p))\n"
  20094.    "    ())\n"
  20095.    "  (signature vec2\n"
  20096.    "    (parameters\n"
  20097.    "      (declare (in) vec2 p))\n"
  20098.    "    ())\n"
  20099.    "  (signature vec3\n"
  20100.    "    (parameters\n"
  20101.    "      (declare (in) vec3 p))\n"
  20102.    "    ())\n"
  20103.    "  (signature vec4\n"
  20104.    "    (parameters\n"
  20105.    "      (declare (in) vec4 p))\n"
  20106.    "    ())))"
  20107. ;
  20108. static const char *functions_for_OES_standard_derivatives_frag [] = {
  20109.    builtin_dFdx,
  20110.    builtin_dFdy,
  20111.    builtin_fwidth,
  20112. };
  20113. static const char prototypes_for_OES_texture_3D_frag[] =
  20114.    "(\n"
  20115.    "(function texture3D\n"
  20116.    "  (signature vec4\n"
  20117.    "    (parameters\n"
  20118.    "      (declare (in) sampler3D sampler)\n"
  20119.    "      (declare (in) vec3 coord))\n"
  20120.    "    ())\n"
  20121.    "  (signature vec4\n"
  20122.    "    (parameters\n"
  20123.    "      (declare (in) sampler3D sampler)\n"
  20124.    "      (declare (in) vec3 coord)\n"
  20125.    "      (declare (in) float bias))\n"
  20126.    "    ()))\n"
  20127.    "(function texture3DProj\n"
  20128.    "  (signature vec4\n"
  20129.    "    (parameters\n"
  20130.    "      (declare (in) sampler3D sampler)\n"
  20131.    "      (declare (in) vec4 coord))\n"
  20132.    "    ())\n"
  20133.    "  (signature vec4\n"
  20134.    "    (parameters\n"
  20135.    "      (declare (in) sampler3D sampler)\n"
  20136.    "      (declare (in) vec4 coord)\n"
  20137.    "      (declare (in) float bias))\n"
  20138.    "    ())))"
  20139. ;
  20140. static const char *functions_for_OES_texture_3D_frag [] = {
  20141.    builtin_texture3D,
  20142.    builtin_texture3DProj,
  20143. };
  20144. static const char prototypes_for_OES_texture_3D_vert[] =
  20145.    "(\n"
  20146.    "(function texture3D\n"
  20147.    "  (signature vec4\n"
  20148.    "    (parameters\n"
  20149.    "      (declare (in) sampler3D sampler)\n"
  20150.    "      (declare (in) vec3 coord))\n"
  20151.    "    ()))\n"
  20152.    "(function texture3DProj\n"
  20153.    "  (signature vec4\n"
  20154.    "    (parameters\n"
  20155.    "      (declare (in) sampler3D sampler)\n"
  20156.    "      (declare (in) vec4 coord))\n"
  20157.    "    ()))\n"
  20158.    "(function texture3DLod\n"
  20159.    "  (signature vec4\n"
  20160.    "    (parameters\n"
  20161.    "      (declare (in) sampler3D sampler)\n"
  20162.    "      (declare (in) vec3 coord)\n"
  20163.    "      (declare (in) float lod))\n"
  20164.    "    ()))\n"
  20165.    "(function texture3DProjLod\n"
  20166.    "  (signature vec4\n"
  20167.    "    (parameters\n"
  20168.    "      (declare (in) sampler3D sampler)\n"
  20169.    "      (declare (in) vec4 coord)\n"
  20170.    "      (declare (in) float lod))\n"
  20171.    "    ())))"
  20172. ;
  20173. static const char *functions_for_OES_texture_3D_vert [] = {
  20174.    builtin_texture3D,
  20175.    builtin_texture3DLod,
  20176.    builtin_texture3DProj,
  20177.    builtin_texture3DProjLod,
  20178. };
  20179. static gl_shader *builtin_profiles[34];
  20180.  
  20181. static void *builtin_mem_ctx = NULL;
  20182.  
  20183. void
  20184. _mesa_glsl_release_functions(void)
  20185. {
  20186.    ralloc_free(builtin_mem_ctx);
  20187.    builtin_mem_ctx = NULL;
  20188.    memset(builtin_profiles, 0, sizeof(builtin_profiles));
  20189. }
  20190.  
  20191. static void
  20192. _mesa_read_profile(struct _mesa_glsl_parse_state *state,
  20193.                    int profile_index,
  20194.                    const char *prototypes,
  20195.                    const char **functions,
  20196.                    int count)
  20197. {
  20198.    gl_shader *sh = builtin_profiles[profile_index];
  20199.  
  20200.    if (sh == NULL) {
  20201.       sh = read_builtins(GL_VERTEX_SHADER, prototypes, functions, count);
  20202.       ralloc_steal(builtin_mem_ctx, sh);
  20203.       builtin_profiles[profile_index] = sh;
  20204.    }
  20205.  
  20206.    state->builtins_to_link[state->num_builtins_to_link] = sh;
  20207.    state->num_builtins_to_link++;
  20208. }
  20209.  
  20210. void
  20211. _mesa_glsl_initialize_functions(struct _mesa_glsl_parse_state *state)
  20212. {
  20213.    /* If we've already initialized the built-ins, bail early. */
  20214.    if (state->num_builtins_to_link > 0)
  20215.       return;
  20216.  
  20217.    if (builtin_mem_ctx == NULL) {
  20218.       builtin_mem_ctx = ralloc_context(NULL); // "GLSL built-in functions"
  20219.       memset(&builtin_profiles, 0, sizeof(builtin_profiles));
  20220.    }
  20221.  
  20222.    if (state->target == fragment_shader && state->language_version == 100 && state->es_shader) {
  20223.       _mesa_read_profile(state, 0,
  20224.                          prototypes_for_100es_frag,
  20225.                          functions_for_100es_frag,
  20226.                          Elements(functions_for_100es_frag));
  20227.    }
  20228.  
  20229.    if (state->language_version == 100 && state->es_shader) {
  20230.       _mesa_read_profile(state, 1,
  20231.                          prototypes_for_100es_glsl,
  20232.                          functions_for_100es_glsl,
  20233.                          Elements(functions_for_100es_glsl));
  20234.    }
  20235.  
  20236.    if (state->target == vertex_shader && state->language_version == 100 && state->es_shader) {
  20237.       _mesa_read_profile(state, 2,
  20238.                          prototypes_for_100es_vert,
  20239.                          functions_for_100es_vert,
  20240.                          Elements(functions_for_100es_vert));
  20241.    }
  20242.  
  20243.    if (state->target == fragment_shader && state->language_version == 110 && !state->es_shader) {
  20244.       _mesa_read_profile(state, 3,
  20245.                          prototypes_for_110_frag,
  20246.                          functions_for_110_frag,
  20247.                          Elements(functions_for_110_frag));
  20248.    }
  20249.  
  20250.    if (state->language_version == 110 && !state->es_shader) {
  20251.       _mesa_read_profile(state, 4,
  20252.                          prototypes_for_110_glsl,
  20253.                          functions_for_110_glsl,
  20254.                          Elements(functions_for_110_glsl));
  20255.    }
  20256.  
  20257.    if (state->target == vertex_shader && state->language_version == 110 && !state->es_shader) {
  20258.       _mesa_read_profile(state, 5,
  20259.                          prototypes_for_110_vert,
  20260.                          functions_for_110_vert,
  20261.                          Elements(functions_for_110_vert));
  20262.    }
  20263.  
  20264.    if (state->target == fragment_shader && state->language_version == 120 && !state->es_shader) {
  20265.       _mesa_read_profile(state, 6,
  20266.                          prototypes_for_120_frag,
  20267.                          functions_for_120_frag,
  20268.                          Elements(functions_for_120_frag));
  20269.    }
  20270.  
  20271.    if (state->language_version == 120 && !state->es_shader) {
  20272.       _mesa_read_profile(state, 7,
  20273.                          prototypes_for_120_glsl,
  20274.                          functions_for_120_glsl,
  20275.                          Elements(functions_for_120_glsl));
  20276.    }
  20277.  
  20278.    if (state->target == vertex_shader && state->language_version == 120 && !state->es_shader) {
  20279.       _mesa_read_profile(state, 8,
  20280.                          prototypes_for_120_vert,
  20281.                          functions_for_120_vert,
  20282.                          Elements(functions_for_120_vert));
  20283.    }
  20284.  
  20285.    if (state->target == fragment_shader && state->language_version == 130 && !state->es_shader) {
  20286.       _mesa_read_profile(state, 9,
  20287.                          prototypes_for_130_frag,
  20288.                          functions_for_130_frag,
  20289.                          Elements(functions_for_130_frag));
  20290.    }
  20291.  
  20292.    if (state->language_version == 130 && !state->es_shader) {
  20293.       _mesa_read_profile(state, 10,
  20294.                          prototypes_for_130_glsl,
  20295.                          functions_for_130_glsl,
  20296.                          Elements(functions_for_130_glsl));
  20297.    }
  20298.  
  20299.    if (state->target == vertex_shader && state->language_version == 130 && !state->es_shader) {
  20300.       _mesa_read_profile(state, 11,
  20301.                          prototypes_for_130_vert,
  20302.                          functions_for_130_vert,
  20303.                          Elements(functions_for_130_vert));
  20304.    }
  20305.  
  20306.    if (state->target == fragment_shader && state->language_version == 140 && !state->es_shader) {
  20307.       _mesa_read_profile(state, 12,
  20308.                          prototypes_for_140_frag,
  20309.                          functions_for_140_frag,
  20310.                          Elements(functions_for_140_frag));
  20311.    }
  20312.  
  20313.    if (state->language_version == 140 && !state->es_shader) {
  20314.       _mesa_read_profile(state, 13,
  20315.                          prototypes_for_140_glsl,
  20316.                          functions_for_140_glsl,
  20317.                          Elements(functions_for_140_glsl));
  20318.    }
  20319.  
  20320.    if (state->target == fragment_shader && state->language_version == 150 && !state->es_shader) {
  20321.       _mesa_read_profile(state, 14,
  20322.                          prototypes_for_150_frag,
  20323.                          functions_for_150_frag,
  20324.                          Elements(functions_for_150_frag));
  20325.    }
  20326.  
  20327.    if (state->language_version == 150 && !state->es_shader) {
  20328.       _mesa_read_profile(state, 15,
  20329.                          prototypes_for_150_glsl,
  20330.                          functions_for_150_glsl,
  20331.                          Elements(functions_for_150_glsl));
  20332.    }
  20333.  
  20334.    if (state->target == fragment_shader && state->language_version == 300 && state->es_shader) {
  20335.       _mesa_read_profile(state, 16,
  20336.                          prototypes_for_300es_frag,
  20337.                          functions_for_300es_frag,
  20338.                          Elements(functions_for_300es_frag));
  20339.    }
  20340.  
  20341.    if (state->language_version == 300 && state->es_shader) {
  20342.       _mesa_read_profile(state, 17,
  20343.                          prototypes_for_300es_glsl,
  20344.                          functions_for_300es_glsl,
  20345.                          Elements(functions_for_300es_glsl));
  20346.    }
  20347.  
  20348.    if (state->ARB_gpu_shader5_enable) {
  20349.       _mesa_read_profile(state, 18,
  20350.                          prototypes_for_ARB_gpu_shader5_glsl,
  20351.                          functions_for_ARB_gpu_shader5_glsl,
  20352.                          Elements(functions_for_ARB_gpu_shader5_glsl));
  20353.    }
  20354.  
  20355.    if (state->ARB_shader_bit_encoding_enable) {
  20356.       _mesa_read_profile(state, 19,
  20357.                          prototypes_for_ARB_shader_bit_encoding_glsl,
  20358.                          functions_for_ARB_shader_bit_encoding_glsl,
  20359.                          Elements(functions_for_ARB_shader_bit_encoding_glsl));
  20360.    }
  20361.  
  20362.    if (state->target == fragment_shader && state->ARB_shader_texture_lod_enable) {
  20363.       _mesa_read_profile(state, 20,
  20364.                          prototypes_for_ARB_shader_texture_lod_frag,
  20365.                          functions_for_ARB_shader_texture_lod_frag,
  20366.                          Elements(functions_for_ARB_shader_texture_lod_frag));
  20367.    }
  20368.  
  20369.    if (state->ARB_shader_texture_lod_enable) {
  20370.       _mesa_read_profile(state, 21,
  20371.                          prototypes_for_ARB_shader_texture_lod_glsl,
  20372.                          functions_for_ARB_shader_texture_lod_glsl,
  20373.                          Elements(functions_for_ARB_shader_texture_lod_glsl));
  20374.    }
  20375.  
  20376.    if (state->ARB_shading_language_packing_enable) {
  20377.       _mesa_read_profile(state, 22,
  20378.                          prototypes_for_ARB_shading_language_packing_glsl,
  20379.                          functions_for_ARB_shading_language_packing_glsl,
  20380.                          Elements(functions_for_ARB_shading_language_packing_glsl));
  20381.    }
  20382.  
  20383.    if (state->target == fragment_shader && state->ARB_texture_cube_map_array_enable) {
  20384.       _mesa_read_profile(state, 23,
  20385.                          prototypes_for_ARB_texture_cube_map_array_frag,
  20386.                          functions_for_ARB_texture_cube_map_array_frag,
  20387.                          Elements(functions_for_ARB_texture_cube_map_array_frag));
  20388.    }
  20389.  
  20390.    if (state->ARB_texture_cube_map_array_enable) {
  20391.       _mesa_read_profile(state, 24,
  20392.                          prototypes_for_ARB_texture_cube_map_array_glsl,
  20393.                          functions_for_ARB_texture_cube_map_array_glsl,
  20394.                          Elements(functions_for_ARB_texture_cube_map_array_glsl));
  20395.    }
  20396.  
  20397.    if (state->ARB_texture_multisample_enable) {
  20398.       _mesa_read_profile(state, 25,
  20399.                          prototypes_for_ARB_texture_multisample_glsl,
  20400.                          functions_for_ARB_texture_multisample_glsl,
  20401.                          Elements(functions_for_ARB_texture_multisample_glsl));
  20402.    }
  20403.  
  20404.    if (state->target == fragment_shader && state->ARB_texture_query_lod_enable) {
  20405.       _mesa_read_profile(state, 26,
  20406.                          prototypes_for_ARB_texture_query_lod_frag,
  20407.                          functions_for_ARB_texture_query_lod_frag,
  20408.                          Elements(functions_for_ARB_texture_query_lod_frag));
  20409.    }
  20410.  
  20411.    if (state->ARB_texture_rectangle_enable) {
  20412.       _mesa_read_profile(state, 27,
  20413.                          prototypes_for_ARB_texture_rectangle_glsl,
  20414.                          functions_for_ARB_texture_rectangle_glsl,
  20415.                          Elements(functions_for_ARB_texture_rectangle_glsl));
  20416.    }
  20417.  
  20418.    if (state->target == fragment_shader && state->EXT_texture_array_enable) {
  20419.       _mesa_read_profile(state, 28,
  20420.                          prototypes_for_EXT_texture_array_frag,
  20421.                          functions_for_EXT_texture_array_frag,
  20422.                          Elements(functions_for_EXT_texture_array_frag));
  20423.    }
  20424.  
  20425.    if (state->target == vertex_shader && state->EXT_texture_array_enable) {
  20426.       _mesa_read_profile(state, 29,
  20427.                          prototypes_for_EXT_texture_array_vert,
  20428.                          functions_for_EXT_texture_array_vert,
  20429.                          Elements(functions_for_EXT_texture_array_vert));
  20430.    }
  20431.  
  20432.    if (state->OES_EGL_image_external_enable) {
  20433.       _mesa_read_profile(state, 30,
  20434.                          prototypes_for_OES_EGL_image_external_glsl,
  20435.                          functions_for_OES_EGL_image_external_glsl,
  20436.                          Elements(functions_for_OES_EGL_image_external_glsl));
  20437.    }
  20438.  
  20439.    if (state->target == fragment_shader && state->OES_standard_derivatives_enable) {
  20440.       _mesa_read_profile(state, 31,
  20441.                          prototypes_for_OES_standard_derivatives_frag,
  20442.                          functions_for_OES_standard_derivatives_frag,
  20443.                          Elements(functions_for_OES_standard_derivatives_frag));
  20444.    }
  20445.  
  20446.    if (state->target == fragment_shader && state->OES_texture_3D_enable) {
  20447.       _mesa_read_profile(state, 32,
  20448.                          prototypes_for_OES_texture_3D_frag,
  20449.                          functions_for_OES_texture_3D_frag,
  20450.                          Elements(functions_for_OES_texture_3D_frag));
  20451.    }
  20452.  
  20453.    if (state->target == vertex_shader && state->OES_texture_3D_enable) {
  20454.       _mesa_read_profile(state, 33,
  20455.                          prototypes_for_OES_texture_3D_vert,
  20456.                          functions_for_OES_texture_3D_vert,
  20457.                          Elements(functions_for_OES_texture_3D_vert));
  20458.    }
  20459.  
  20460. }
  20461.