Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5563 serge 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 
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
}